一个任意的线程,并放到锁池中,那里的对象一直在等待,直到可以获得对象的锁标记。只有锁池中的线程能获得对象的锁标记。锁标记允许线程从上次因调用wait()而中断的地方开始继续运行[6]。在本系统中,为了避免死锁现象,将访问网络设计成为一个独立的线程,当应用
程序想要访问网络时,可以将访问网络线程唤醒,调用notify()方法。网络访问结束后,调用wait()方法,使访问网络线程释放锁并处在等待状态。⑷设计过程中的中文问题解决
方案在服务器端做UTF8-GBK编码转换。Java语言本身采用unicode,在高版本加强了对国际化的支持,在服务器端转换编码就显得比较容些。在无线客户端使用J2ME版本的URLEncode类将url要传送的参数进行编码转换,之后在服务器端进行解码。当然也可以把要上传的参数以输入流的方式上传,随后在服务器端把上传的参数据读取出来,得到上传后的utf-8参数后再进行编码转换。转换成能被数据库识别的GBK编码[7]。无论是
JSP还是servlet在访问数据库后得到的编码都是数据库的编码值,可以通过在数据库jdbc驱动的url中设置将其返回的编码进行转换。当然也可以流的方式写出到网页。还可以通设置网页返回属性进行[8]。在无线客户端以字节流的方式读取字节数据之后进行编码重组,如果客户端仅支持utf-16,还可以进行utf-8到Unicode的编码转换。3.研究步骤、方法及措施研究步骤、本选课系统是在JDK1.6的编译环境下,运用Eclipse3.4.2绑定EclipseME1.79作为开发主环境编写,并通过Tomcat6.0实现客户端与服务器的通信,后台数据库采用SQLServer2005开发版。前期需要对JDK1.6进行安装并配置环境变量,且在windows中配置SQLServer数据源,最后在Eclipse中对Tomcat服务器进行部署。在测试阶段用WTK2.5.2和型号为NOKIA3110c的手机进行实机测试。研究步骤⑴系统架构的设计系统架构的设计基于J2ME平台开发手机客户端程序,支持打开网络连接、传送数据、访问远程服务器,但并不支持直接访问数据库的能力。因此,要想使移动终端能够访问到数据库系统,必须使用J2EE技术编写服务器端程序来接受移动客户端的请求指令。本课题采用J2ME技术开发系统客户端应用程序,采用J2EE技术开发服务器端应用程序,使用
HTTP协议实现移动客户端与Web服务器端之间的网络通信。J2ME+J2EE体系结构如图2所示[9]。在建立移动选课系统时,由于移动终端设备资源有限,它不提供直接对后台数据库的访问能力,因此,要想使移动设备终端能够访问到数据库系统,必须要使用J2EE技术。根据需求,一个移动电子商务系统必须建立移动终端程序(使用J2ME技术)和服务器端应用程序(使用J2EE技术)。结合J2ME和J2EE技术,我们可以建立一个完整的移动选课平台。基于J2ME-J2EE的移动电子商务系统的架构如图所示。
系统架构
⑵客户端的设计客户端的J2ME客户端主要用来发送请求信息以及显示服务器返回的信息,主要包括显示、查询、网络连接和数据传送。客户端J2ME程序可以通过无线开发工具包WTK(SunJ2MEWirelessToolkit)开发并打包成JAD文件,发布在教务管理系统网站上