基于strutshibernate的学生课程及成绩管理系统论文内容摘要:

epartment 系别 Varchar 6 Sex 性别 Varchar 7 mark 学分 number 8 tel Varchar 9 电子邮箱 Varchar 表 33 class 表 序号 字段 含义 类型 1 id 班级编号 number 2 tea_id 任课教师姓名 Varchar 3 cour_id 课程编号 Varchar 4 room_id 上课教室号 Varchar 5 cour_time 上课时间 Varchar 表34 course 表 序号 字段 含义 类型 1 id 课程编号 number 2 name 课程名 Varchar 3 mark 学分 number 4 prepare 预 选 课 程 Varchar 5 dep 所在系 Varchar 表 35 teacher 表 序号 字段 含义 类型 1 id 教师编号 number 2 name 姓名 Varchar 3 title 职称 Varchar 4 password密码 Varchar 表 36 enrol 表 序号 字段 含义 类型 1 stu_id 学生号 number 2 class_id 班级编号 number 3 accept 是否被接受 Varchar 4 score 成绩 Varchar 323 创建表的脚本语言 根据数据库字段设计编写的创建数据库表的 SQL语句如下 创建数据表 Admin的 SQL 语句 create table admin _tbl id number 20 not null name varchar 32 default null password varchar 32 default null primary key id 创建数据表 student 的 SQL 语句 create table student_tbl id number 20 not null name varchar 32 default null password varchar 32 default null jiguan varchar 32 default null department varchar 32 default null sex varchar 32 default null mark number 20 not null phone varchar 32 default null varchar 32 default null primary key id 创建 teacher 表的 SQL 语句 create table teacher_table id number 20 not null name varchar 32 default null password varchar 32 default null title varchar 32 default null primary key id 创建 course 表的 SQL 语句 create table course_tbl id number 20 not null name varchar 32 default null mark number 20 not null prepare varchar32default null dep varchar 32 default null primary key id 创建 classes 的 SQL 语句 create table_tbl id number 20 not null tea_id number 20 references teacher_table id cour_id number 20 references course_tbl id room_id varchar 32 default null cour_time varchar 32 default null primary key id 创建数据表 enrol 的 SQL 语句 create table enrol_tbl class_id number 20 references classes_tbl id stu_id number 20 references student_tbl id accept varchar 32 default null score varchar 32 default null primary key class_idstu_id 为了方便后面的开发在这里先向数据库 admin表插入三条记录 insert into admin_tbl 1briupbriup insert into admin_tbl 2adminadmin insert into admin_tbl 3jiajia 第 4 章 系统的实现 41 实现文件的组织 为体现 Struts 的 MVC 模式与 Web应用的分层思想我们按右图所示的结构组织文件 bean就是 MVC 中的 M Model 其中的文件是基本类及其与数据库表的 hibernate 映射文件 在 dao包中有 IDao和 DAOImplemnt 两个 java 文件后者是前者的实现类它们只负责与数据库的交互和给 service 提供基本的数据库交互服务 在 service包中 IService 和 ServiceImp两个 java文件后者是前者的实现类主要职责是使用 dao中的服务为 action提供 服务 Web 是 MVC 中的 C Controller 主要职责是为用户动作提供控制控制着程序的执行动作为跳转方向 图 41 WebRoot 中的文件主要是直接为用户提供务的页面文件也就是 MVC 中的 V View 负责界面的显示和与用户的交互 这样以来 V 只使用或调用 action 里的服务而 action 只调用 serviceservice 也只调用 dao 里面的方法这种调 用方向单一有效地降低了耦合增强了内聚 图 42 程序的调用关系示意图 42 系统功能实现 421 定义 HibernateUtil 本系统采用 StrutsHibernate 技术进行开发由 Hibernate 进行数据对象的操作这里定义一个 HibernateSessionFactory类负责初始化 Hibernate 由它创建全局的 SessionFactory实例并且提供创建 session 实例关闭 Session 实例创建 HibernateTransaction 负责打开关闭事物这样在使用 hibernate 时更加方 便不用每次为创建 SessionFactory实例 Session实例或者关闭 Session实例而打开关闭事务 事物操作单独些代码只要调用上面类的方法就可以了从而简化了操作 422 定义 EncodingFilter 类 在进行 Web页面开发时经常会遇到中文显示出现乱码的情况这是有 java 内置的字符集与页面显示的字符集不一致造成的 为了解决这个问题需要进行字符编码转换本系统通过定义一个 Fileter 来自动实现字符编码的转化步骤如下 1 定义 EncodingFilter 类 在 stumfilter 包下创建一个 EncodingFilter 类 2. 配置这个 Filter 在 webxml 文件中添加如下代码 filtername encoding filtername filterclass stumfilterEncodingFilter filterclass filtermapping filtername encoding filtername urlpattern urlpattern filtermapping 423 数据层设计 本系统的持久话逻辑采用 Hibernate作为中间件并使用 DAO设计模式实现主要是在业务核心方法和具体数据原之间增加一层这样就减少了两者的耦合 每个持久话类对应一个 DAO 它实现了持久化类的创建查询更新及删除方法即 CRUD create retrieveupdatedelete 方法以及其他访问持久化机制方法本系统所有与数据库逻辑有关的方法都在 IDaol 类中斯基现在 studentdao 包下 创建一个 IDao 接口并在 stumdao 包下创 建一个 DaoImplment 继承 IDao 接口实现具体的操作 424 数据层代码实现 本系统的持久化逻辑采用 Hibernate 作为中间件并使用 DAO 设计模式实现 DAO 模式 创建对象关系映射文件 为了使用 Hibernate 来持久化对象首先要根据数据库的各个表创建映射文件AdminStudentTeacherCourseEnrol类对应的 hibernate映射文件都放到 stumbean包下映射文件分别如下 1Admin类映射文件 2Student 类的映射文件 3Teacher 类的映射文件 4Course 类的映射文件 5Classes 类的映射文件 6Enrol 类的映射文件 425 创建持久化类 创建完映射文件后需要创建持久化类将这些类放到 stumbean包下 Admin类 这个类对应管理员实体用于实现管理员信息的持久化工作 2Student 类 这个类对应学生实体用于管理学生信息持久化工作 3Teacher 类 这个类对应教师实体管理教师信息持久化工作 4Course 类 这个类对应课程实体管理课程信息持久化工作 5Classes 类 这个类对应班级实体管理班级信息持久化工作 6Enrolid类 这 个类并不对应一个实体它作为选课实体的一部分作用是标识一个选课记录可以把它理解为是选课实体 Enrol 的主键 7Enrol 类 这个类对应于选课实体用于实现选课信息持久化 43 功能代码实现 本系统才用 MVC 模式开发功能代码封装在 Action Service Dao 三层中分工清晰 功能描述描述这个功能以及实现此功能都需要那些方法 逻辑设计通过一个图直观的给出页面之间的跳转 配置 Struts 在 stritsconfigxml 文件中配置实现这个功能需要用到的 Form 和 Action实现页。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。