ASP网站制作之使用J2ME与ASP创建数据库毗连
Windows本身的所有问题都会一成不变的也累加到了它的身上。安全性、稳定性、跨平台性都会因为与NT的捆绑而显现出来;J2ME是使用HttpConnection创建HTTP毗连,然后猎取数据,ASP也是使用HTTP协定,因此能够使用J2ME与ASP创建毗连,从而会见数据库。ASP是MicroSoft公司的服务器端静态页面手艺,能够依据哀求运转服务器端程序然后前往了局,这也给MIDP供应良多有效的功效。因为MIDP客户端处置才能不强,因而能够把一些处置义务放在服务器端,使用ASP完成一些它不克不及完成的义务,如操纵数据库。这里给出一个复杂的例子,申明MIDP怎样与ASP举行交互,完成数据库操纵。(1)确保IIS WEB服务器一般事情。
(2)创建一个测试数据库:接纳ACCESS数据库,天生一个数据库文件保留到D:J2MEJ2METESTIISDATEBASE中,文件名是J2MEtest.mdb.然后新建一个数据库表-Message,创立的表包括以下字段:ID(主动编号)、MESSAGE(文本)、IP(文本)、DATE(日期)。
(3)创立ASP程序
以下是ASP程序源代码,文件名为ConnectASP.asp,保留到D:J2MEJ2METESTIISASP中。
//ConnectASP.asp
<%@LANGUAGE=VBScript%>
<%
strDBLocation=Server.Mappath("/database/j2meTest.mdb");
strConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;
DataSource="+strDBLocation;
varcnn=Server.CreateObject("ADODB.Connection");
cnn.Open(strConnectionString);
rs=Server.CreateObject("ADODB.Recordset");
ip=Request.ServerVariables("REMOTE_ADDR");
message=Request.QueryString("message");
rs.ActiveConnection=cnn;
rs.CursorType=1;
rs.LockType=2;
rs.Source="Message";
rs.Open();
rs.AddNew();
rs("Message")=message;
rs("IP")=ip;
rs("Date")=(newDate()).getVarDate();
rs.Update();
rs.Close();
cnn.Close();
Response.Write("Themessagewritedsuccessfully.
");
%>
然后在扫瞄器中输出以下URL:http://localhost/asp/ConnectASP.asp?message=Hello+J2ME!
假如运转乐成,扫瞄器会输入语句“Themessageweitedsuccessfully.”,然后翻开数据库文件检察表MESSAGE,一笔记录已乐成写进。ID为1,Message为HelloJ2ME,IP为127.0.0.1,DATE为以后日期。
(4)编写MIDlet程序
接上去编写MIDP程序,在MIDlet中创建一个HTTP毗连,其URI指向这个ASP文件,并附带参数。
//ConnectASP.java
importjavax.microedition.midlet.*;
importjavax.miceoedition.io.*;
importjava.io.*;
publicclassConnectASPextendsMIDlet{
publicvoidstartApp(){
try{
testASP();测试ASP毗连
}catch(IOExceptione){
System.out.println("error");
}
notifyDestroyed();
}
voidtestASP()throwsIOException{
try{
Stringuri="http://localhost/asp/ConnectASP.asp?message=Hello+J2ME!";
HttpConnectionconn=(HttpConnection)Connector.open(uri);
InputStreamin=conn.openInputStream();
intch;
while((ch=in.read()!=-1){
System.out.print((char)ch);
}
in.close();
conn.close();
}catch(ConnectionNotFoundExceptione){
System.out.println("Httpcouldnotbeopened");
}
}
publicvoidpauseApp(){}
publicvoiddestroyApp(booleanunconditional){}
}
编译并运转这个MIDlet,把持台会输入语句“Themessagewritedsuccessfully.",然后翻开数据库检察表MESSAGE,一笔记录已乐成写进。
Access是一种桌面数据库,只适合数据量少的应用,在处理少量数据和单机访问的数据库时是很好的,效率也很高。但是它的同时访问客户端不能多于4个。access数据库有一定的极限,如果数据达到100M左右,很容易造成服务器iis假死,或者消耗掉服务器的内存导致服务器崩溃。 尽管MS自己讲C#内核中更多的象VC,但实际上我还是认为它和Java更象一些吧。首先它是面向对象的编程语言,而不是一种脚本,所以它具有面向对象编程语言的一切特性,比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。 ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。 Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件 哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的? ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。 不能只是将它停留在纸上谈兵的程度上。 在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。
页:
[1]