基于J2ME的电子课程表系统

时间:2024-03-19 点赞:48761 浏览:96777 作者原创标记本站原创

本文是一篇管理系统论文范文,关于管理系统类毕业论文范文,关于基于J2ME的电子课程表系统相关研究生毕业论文开题报告范文。适合管理系统及嵌入式及计算机工程方面的的大学硕士和本科毕业论文以及管理系统相关开题报告范文和职称论文写作参考文献资料下载。

摘 要:设计并实现一个电子课程表系统.使用J2ME技术作为开发平台,运用MIDP2.0中图形用户界面组件类库(LCDUI)、记录管理系统(RMS)技术,采用UML类图建模,同时探讨RMS高级操作的应用.通过开发平台模拟实验,证明其达到了设计要求.

关 键 词:J2ME;RMS;LCDUI;统一建模语言;电子课程表

中图分类号:TP319文献标识码:A文章编号:1672-7800(2013)006-0060-04

作者简介:宋国柱(1982-),男,黄冈师范学院教育科学与技术学院讲师,研究方向为计算机软件技术;徐小双(1970-),男,黄冈师范学院教育科学与技术学院教授,研究方向为云计算、计算机软件技术与应用.

0引言

J2ME是Ja平台的微缩版,在手机、PDA等移动信息设备上得到了广泛应用,目前已成为手机程序开发的主流平台之一.本文首先介绍了J2ME层次结构,LCDUI类图结构以及RMS存储的基本原理,然后对电子课程表的功能要求作了分析,使用UML建模设计出数据类和界面类.最后对RMS高级操作作了详细分析,并构建了开发平台实现电子课程表系统.

1技术背景介绍

1.1J2ME

J2ME是sun公司针对移动、PDA和电视机顶盒等嵌入设备定义的Ja技术平台.

其目的是为这些资源受限的嵌入式设备提供一个公共的、灵活的、开放的Ja程序运行环境.也为软件开发人员开发嵌入式设备上的Ja应用程序提供一个灵活、开放的开发环境.

J2ME平台由一系列技术规范组成.J2ME被设计成层次结构,主要由配置(configuraton)、简表(profile)和可选包(optionalpackage)3部分组成,如图1所示.

1.2LCDUI

LCDUI是MIDP专家专门为移动信息设备设计的图形用户界面组件类库,定义在jax.microediton.lcdui包中.该包中主要的类、接口及它们之间的关系见LCDUI类图,如图2所示.

每个MIDlet都有一个与之相关的Display实例对象,负责管理设备的显示屏幕,通过Display的类方法getDisplay(MIDlet)可以获取这个实例对象.一旦MIDlet获得了Display实例对象,就可以使用这个对象调用setCurrent(Displayable)方法把一个Displyable对象设置在屏幕上显示,任一时刻在屏幕上只能有一个Displayable对象.

1.3RMS

记录管理系统(recordmanagementsystem,RMS)是一种简单的小型数据库,能够支持MIDP规范地在移动信息设备上使用,jax.microedition.rms包提供了操作这个数据库的类和接口,图3是RMS包中的类和接口图.

在记录管理系统中,可以创建多个记录存储区(RecordStore),每个记录存储区就是一个记录的集合,数据以记录的形式被永久地存储在记录存储区中.在同一个记录存储区中,每条记录都有一个唯一的ID号.记录是以字节的形式存储的,任何能够表示为字节类型的数据都能存储在记录存储区中,例如:字符串、图像、声音等.同一个记录存储区中的记录可以有不同的长度.图4为RMS与recordstore及record之间的关系.

2系统的设计与实现

2.1系统的功能要求

电子课程表软件设计功能要求如下:

(1)向课程表中增加新的上课信息.用户能够输入:课程的名字、任课教师、上课地点、上课时间和关于课程的说明等信息,并且可以把这些信息永久保持在手机上.被保存的上课信息不会因为软件退出、手机关机或者更换电池而丢失.


(2)用户可以从课程表中删除选定的课程信息,或清空整个课程表.用户可以把保存在手机上的上课信息删除.

(3)浏览课程表,用户可以查看一周的上课情况,同时也可以快速查看当天的上课情况.

根据系统功能要求,设计系统的顶层功能模块如图5所示.

2.2类设计及类功能介绍

2.2.1课程表数据类设计

根据系统的功能要求,图6列出了构成课程表数据存储的类及它们之间的关系.

(1)Curriculum类:该类创建的对象表示课程表中的一条上课信息,它封装了课程名、任课教师、上课地点、上课时间和备注等属性,并为每一个属性都提供了set和get方法.该类还提供了对象序列化方法和反序列化方法.对象序列化方法能够把当前对象的Curriculum对象编码成字节序列,以便把当前对象保存在一个记录存储区中;反序列化方法可以使用编码的字节序列生成一个新的Curriculum对象.

(2)CurriculumDAO类:该类创建的对象表示一个数据访问对象(dataaccessobject,ADO),它封装了对课程表记录存储区的访问.该类使用了单类模式,在整个应用程序中只有一个CurriculumDAO实例对象,可以通过类方法getInstance()访问.

(3)CurrComparator类:该类实现了RecordComparator接口,对课程表记录存储区中的上课信息按时间进行排序.

(4)FindFilter类:该类实现了RecordFilter接口,实现了过滤器功能,用于课程的查找.

(5)DAOException类:该类创建的对象表示数据访问对象异常.

2.2.2用户界面设计

根据系统的功能需求,电子课程表系统为用户提供了“当天课程”、“浏览课程表”、“添加课程”、“删除”和“关于等”等功能,每个功能都由一系列显示界面完成.由于手机显示屏幕尺寸的限制,每个显示界面只完成一个单一的简单功能.将每个显示界面都设计成一个独立的功能单元,能够处理自身的事件.具有相同功能的显示界面由同一个类来描述,这些描述显示界面的类都扩展了抽象类MicroComponent,图7显示用户界面类之间的关系.(1)ECIDlet类.ECIDlet继承了jax.microedition.MIDlet,是应用程序的主类.该类负责创建程序的主菜单,并根据用户的选择创建相应功能的显示界面.

(2)MicroComponent类.MicroComponent是一个抽象类,是所有功能显示界面的父类.该类定义了4个抽象方法:

protectedabstractvoidcreateModel()

protectedabstractvoidcreateGUI()

protectedabstractDisplayablegetGUI()

protectedabstractvoidupdate()

这4个抽象方法清晰描述了数据模型、界面视图及更新功能.

(3)MicroMenu类与MicroMenuListener接口.MicroMenu是MicroComponent的子类,该类创建的对象表示一个菜单,可以在屏幕上显示多个菜单项.MicroMenuListener接口定义了菜单上事件的处理方法.任何实现MicroMenuListener接口的类创建的对象都可以作为菜单的监视器,监视菜单上的事件.用户选择一个菜单项或菜单上的命令时,监视该菜单的监视器就会回调MicroMenuListener接口中的方法.

(4)CurriculaOfDay类.CurriculaOfDay是MicroComponent的子类,该类创建的对象能够显示一天的上课信息.在电子课程表程序中,快速显示当天的上课信息和浏览课程表中显示某天的上课信息都是使用CurriculaOfDay创建的对象.

(5)CSBrowse类.CSBrowse是MicroComponent的子类,该类创建的对象能够浏览课程表中任意一天的上课信息.

(6)AddCurriculum类.AddCurriculum是MicroComponent的子类,该类创建的对象为用户提供了一个熟人上课信息的界面,和把用户输入的信息保存在课程表记录存储区中的功能.

(7)DeleteCurriculum类.DeleteCurriculum是MicroComponent的子类,该类创建的对象为用户提供了一个课程表中所有上课信息的列表,用户可以删除列表中的任意一项.

3关键技术介绍

RMS中recordstore更像一个文件,而不是一个数据库管理系统,缺少数据库管理系统中常用的复杂特性.例如,不能向记录仓库发送一条SQL语句,也不能要求记录仓库根据关 键 词查询或者对记录进行排序,这些都是数据库管理系统常有的操作.使用RecordEnumeration接口仍可以在记录仓库中进行查询和排序.记录仓库提供方法enumerateRecods(),该方法返回一个对应与记录仓库的枚举对象,原型如下:

publicRecordEnumerationenumerateRecords(RecordFilterfilter,RecordComparatorparator,BooleankeepUpdated)

该方法参数说明如下:

filter:过滤器,保证返回的记录符合特定条件.具体的条件设置由RecordFilter接口中的抽象方法matches(byte[]data)完成.

parator:返回记录的顺序由parator参数决定,通过实现RecordComparator接口并重写接口中的pare(byte[]first,byte[]second)方法来实现.

KeepUpdated:枚举集合中的记录是否与记录存储区中的记录保存一致.

在FindFilter类中实现RecordFilter接口,重写matches(byte[]date)方法.主要代码如下:

4模拟实验

系统在eclipseME+SDK平台下,采用Sun公司的WTK进行模拟,通过实验达到了预期的效果.以下是系统运行的部分图片,如图8所示.

5结语

手机软件开发逐渐成为研究的热点.本文以一款简单实用的电子课程表作为开发项目,采用J2ME中的RMS技术,在系统的设计中采用UML建模思想.详细阐述了RMS高级操作的关键技术.通过模拟实现取得预期的效果,该项目具有较好的实用价值.

相关论文

基于J2ME的移动电子商务系统

这是一篇移动电子商务相关毕业论文的格式范文,与基于J2ME的移动电子商务系统相关在职研究生毕业论文。是电子商务专业与移动电子商务及电子。

B2B与B2C整合的电子商务系统的

本文是一篇电子商务论文范文,电子商务有关自考毕业论文开题报告,关于B2B与B2C整合的电子商务系统的相关本科毕业论文范文。适合电子商务及电。

基于WebServices的电子政务系统

本文关于电子政务及数据库及管理系统方面的免费优秀学术论文范文,电子政务有关论文范文集,与基于WebServices的电子政务系统相关毕业论文的。

电子商务系统中数据库加密技术的

该文是电子商务专业数据库论文范文,主要论述了数据库有关大学毕业论文,与电子商务系统中数据库加密技术的相关论文范文集,适合数据库及电。

传统企业电子商务系统审计的内容

本文是一篇电子商务系统论文范文,关于电子商务系统毕业论文题目,关于传统企业电子商务系统审计的内容相关研究生毕业论文开题报告范文。适合。

电子商务系统维护管理

本文是一篇系统维护论文范文,系统维护方面毕业论文模板,关于电子商务系统维护管理相关毕业论文范文。适合系统维护及电子商务系统及电子商务。

基于PKI—SIM技术的电子合同系统

该文为电子商务方面毕业论文题目范文,与基于PKI—SIM技术的电子合同系统相关电子商务职业规划论文,可作为电子商务专业电子商务论文写作研。