SSH整合实例学生成绩管理系统.docx

上传人:b****1 文档编号:1515126 上传时间:2022-10-22 格式:DOCX 页数:19 大小:24.91KB
下载 相关 举报
SSH整合实例学生成绩管理系统.docx_第1页
第1页 / 共19页
SSH整合实例学生成绩管理系统.docx_第2页
第2页 / 共19页
SSH整合实例学生成绩管理系统.docx_第3页
第3页 / 共19页
SSH整合实例学生成绩管理系统.docx_第4页
第4页 / 共19页
SSH整合实例学生成绩管理系统.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

SSH整合实例学生成绩管理系统.docx

《SSH整合实例学生成绩管理系统.docx》由会员分享,可在线阅读,更多相关《SSH整合实例学生成绩管理系统.docx(19页珍藏版)》请在冰豆网上搜索。

SSH整合实例学生成绩管理系统.docx

SSH整合实例学生成绩管理系统

Struts2、Spring与Hibernate整合应用

————学生成绩管理系统

要求:

(1)整合Struts2、Spring和Hibernate框架

(2)实现“登录”功能

(3)实现“学生信息管理”功能

(4)实现“学生成绩管理”功能

(5)实现分页功能

目的:

掌握Struts2的开发步骤

掌握Hibernate的开发步骤

掌握Spring的开发步骤,理解依赖注入、AOP、事务管理等

掌握Struts2、Spring和Hibernate框架的整合

掌握分页技术

思路:

1、建库建表

2、利用分层思想,建package

3、添加Spring开发能力

4、添加Hibernate开发能力

5、生成Hibernate所需的POJO类和映射文件

6、开发DAO层

(1)新建DAO层接口。

(2)新建DAO层实现类(该类要实现DAO层接口,继承HibernateDaoSupport类)。

(3)在Spring配置文件中增加该DAO层实现类的定义,并需要依赖注入一个SessionFactorybean的引用。

7、开发Service层

(1)新建Service层接口。

(2)新建Service层实现类,该类中需要声明所调用DAO层接口,并生其setter方法。

(3)在Spring配置文件中增加该Service层实现类的定义,并需要依赖注入DAO层的bean。

8、实现WEB层

(1)在web.xml中增加struts2的过滤器和Spring的监听器。

(2)增加Spring和Struts2的整合文件struts.properties。

(3)新建所需的jsp文件。

(4)新建Action类,该类要继承ActionSupport,同时该类要依赖注入Service的bean(声明+setter方法)。

(5)在Spring配置文件中增加该Action类的定义,并注入Service层的bean。

(6)在struts.xml中增加该Action的定义,其中class的属性是在Spring中定义的该Actionbean的id。

9、部署运行

实验步骤:

1、建库、建表

建立数据库xscj,建立xsb、dlb、zyb、kcb、cjb等。

学生信息表:

xsb

列名

描述

数据类型

可空

默认值

说明

XH

学号

Char(6)

×

主键

XM

姓名

Char(8)

×

XB

性别

bit

×

1:

男,0:

CSSJ

出生时间

datetime

ZY_ID

专业ID

int

×

ZXF

总学分

int

BZ

备注

Varchar(200)

ZP

照片

mediumblob

登录表:

dlb

列名

描述

数据类型

可空

默认值

说明

id

标识

int

×

自增1

主键,自增

xh

登录号

char(6)

×

外键,xsb中xh

kl

口令

char(20)

×

专业表:

zyb

列名

描述

数据类型

可空

默认值

说明

id

ID

int

×

自增1

主键

zym

专业名

char(12)

×

rs

人数

int

0

fdy

辅导员

char(8)

课程表:

kcb

列名

描述

数据类型

可空

默认值

说明

kch

课程号

Char(3)

主键

kcm

课程名

Char(12)

 

kxxq

开课学期

smallint

1-8

xs

学时

int

0

 

xf

学分

int

0

 

连接表:

xs_kcb

列名

描述

数据类型

可空

默认值

说明

xh

学号

char(6)

主键

kch

课程号

char(3)

主键

成绩表:

cjb

列名

描述

数据类型

可空

默认值

说明

Xh

学号

Char(6)

主键

Kch

课程号

Char(3)

 主键

Cj

成绩

int

0

 

xf

学分

int

0

 

2、设计系统架构

利用分层架构模式,设计系统架构,系统可分为表示层、业务逻辑层和数据持久层。

如下图所示:

建立相应package。

3、添加Spring开发能力

(1)定义UserLibrary

(2)增加Spring开发能力(添加jar包——使用UserLibrary,新建applicationContext.xml)

注:

可以不增加UserLibrary,直接把需要的jar包拷贝到classpath下。

4、实现Hibernate持久层

(1)添加Hibernate开发能力

添加jar包:

如果第一步中已增加,此步可以省略。

注意:

需要把Hibernate交由Spring来管理,其中包括在Spring中配置“dataSource”和“sessionFactory”

(2)通过MyEclipse中Hibernate反向工程,分别生成表对应的POJO类及相应的映射文件。

注意:

所有的POJO类和映射文件(*.hbm.xml)放在org.model这个package下。

难点1:

xsb(学生表)的映射文件中需要设置和专业的多对一关系,参考代码如下:

xmlversion="1.0"encoding="utf-8"?

>

DOCTYPEhibernate-mappingPUBLIC"-//Hibernate/HibernateMappingDTD3.0//EN"

"">

难点2:

成绩表(cjb)中需要配置复合主键,因为成绩表中的主键是由xh和kch组成,参考代码如下:

xmlversion="1.0"encoding="utf-8"?

>

DOCTYPEhibernate-mappingPUBLIC"-//Hibernate/HibernateMappingDTD3.0//EN"

"">

--

MappingbyMyEclipsePersistenceTools

-->

--复合主键配置其中两个key-property,分别对应两个主键-->

对应的POJO类由复合主键的POJO类和成绩表的POJO类组成,参考代码如下:

CjbId.java

packageorg.model;

publicclassCjbIdimplementsjava.io.Serializable{

privateStringxh;

privateStringkch;

publicCjbId(){

}

publicCjbId(Stringxh,Stringkch){

this.xh=xh;

this.kch=kch;

}

publicStringgetXh(){

returnthis.xh;

}

publicvoidsetXh(Stringxh){

this.xh=xh;

}

publicStringgetKch(){

returnthis.kch;

}

publicvoidsetKch(Stringkch){

this.kch=kch;

}

}

Cjb.java

packageorg.model;

publicclassCjbimplementsjava.io.Serializable{

privateCjbIdid;

privateIntegercj;

privateIntegerxf;

publicCjb(){

}

publicCjb

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 生物学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1