基于ssh架构的学生成绩管理系统.docx
- 文档编号:7693118
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:18
- 大小:21.28KB
基于ssh架构的学生成绩管理系统.docx
《基于ssh架构的学生成绩管理系统.docx》由会员分享,可在线阅读,更多相关《基于ssh架构的学生成绩管理系统.docx(18页珍藏版)》请在冰豆网上搜索。
基于ssh架构的学生成绩管理系统
基于架构的学生成绩管理系统
(1)整合2、和框架
(2)实现“登录”功能
(3)实现“学生信息管理”功能
(4)实现“学生成绩管理”功能
(5)实现分页功能
掌握2的开发步骤
掌握的开发步骤
掌握的开发步骤,理解依赖注入、、事务管理等
掌握2、和框架的整合
掌握分页技术
1、建库建表
2、利用分层思想,建
3、添加开发能力
4、添加开发能力
5、生成所需的类和映射文件
6、开发层
(1)新建层接口。
(2)新建层实现类(该类要实现层接口,继承类)。
(3)在配置文件中增加该层实现类的定义,并需要依赖注入一个的引用。
7、开发层
(1)新建层接口。
(2)新建层实现类,该类中需要声明所调用层接口,并生其方法。
(3)在配置文件中增加该层实现类的定义,并需要依赖注入层的。
8、实现层
(1)在中增加2的过滤器和的监听器。
(2)增加和2的整合文件。
(3)新建所需的文件。
(4)新建类,该类要继承,同时该类要依赖注入的(声明方法)。
(5)在配置文件中增加该类的定义,并注入层的。
(6)在中增加该的定义,其中的属性是在中定义的该的。
9、部署运行
实验步骤:
1、建库、建表
建立数据库,建立、、、、等。
学生信息表:
列名
描述
数据类型
可空
默认值
说明
学号
(6)
×
无
主键
姓名
(8)
×
无
性别
×
无
1:
男,0:
女
出生时间
√
无
专业
×
无
总学分
√
无
备注
(200)
√
无
照片
√
无
登录表:
列名
描述
数据类型
可空
默认值
说明
标识
×
自增1
主键,自增
登录号
(6)
×
无
外键中
口令
(20)
×
无
专业表:
列名
描述
数据类型
可空
默认值
说明
×
自增1
主键
专业名
(12)
×
无
人数
√
0
辅导员
(8)
√
无
课程表:
列名
描述
数据类型
可空
默认值
说明
课程号
(3)
否
无
主键
课程名
(12)
是
无
开课学期
是
无
1-8
学时
是
0
学分
是
0
连接表:
列名
描述
数据类型
可空
默认值
说明
学号
(6)
主键
课程号
(3)
主键
成绩表:
列名
描述
数据类型
可空
默认值
说明
学号
(6)
否
无
主键
课程号
(3)
否
无
主键
成绩
是
0
学分
是
0
2、设计系统架构
利用分层架构模式,设计系统架构,系统可分为表示层、业务逻辑层和数据持久层。
如下图所示:
建立相应。
3、添加开发能力
(1)定义
(2)增加开发能力(添加包——使用,新建)
注:
可以不增加,直接把需要的包拷贝到下。
4、实现持久层
(1)添加开发能力
添加包:
如果第一步中已增加,此步可以省略。
注意:
需要把交由来管理,其中包括在中配置“”和“”
(2)通过中反向工程,分别生成表对应的类及相应的映射文件。
注意:
所有的类和映射文件(*)放在这个下。
难点1:
(学生表)的映射文件中需要设置和专业的多对一关系,参考代码如下:
<"1.0""8"?
>
<"3.0"
"">
<>
<"""""""">
<"""">
<"""6"/>
<""/>
<>
<"""">
<"""50"/>
<>
<"""">
<""/>
<>
<"""">
<"""23"/>
<>
<"""">
<""/>
<>
<"""">
<"""500"/>
<>
<"">
<""/>
<>
<"""""""">
<""/>
<>
<>
<>
难点2:
成绩表()中需要配置复合主键,因为成绩表中的主键是由和组成,参考代码如下:
<"1.0""8"?
>
<"3.0"
"">
<
>
<>
<"""""""">
<复合主键配置其中两个,分别对应两个主键>
<"""">
<"""">
<"""6"/>
<>
<"""">
<"""4"/>
<>
<>
<"""">
<""/>
<>
<"""">
<""/>
<>
<>
<>
对应的类由复合主键的类和成绩表的类组成,参考代码如下:
;
{
;
;
(){
}
(,){
=;
=;
}
(){
;
}
(){
=;
}
(){
;
}
(){
=;
}
}
;
{
;
;
;
(){
}
(){
=;
}
(,,){
=;
=;
=;
}
(){
;
}
(){
=;
}
(){
;
}
(){
=;
}
(){
;
}
(){
=;
}
}
重点:
所有的映射文件需要在配置文件中注册,参考如下:
……
<"""">
<定义数据库驱动>
<"""">
<>
<定义数据库>
<""":
3306">
<>
<定义数据库的用户名>
<""""><>
<定义数据库密码>
<""""><>
<>
<定义的>
<"""3">
<定义必须注入>
<"">
<""/>
<>
<定义的属性>
<"">
<>
<"">
<>
<>
<>
<定义的映射文件>
<"">
<>
<><>
<><>
<><>
<><>
<><>
<>
<>
<>
……
5、实现
所有层的实现类需要继承类,参考代码如下:
;
;
;
;
3;
{
(){
()("?
");
(()>0)
;
;
}
(,){
[]={};
()("?
?
");
(()>0)
()(0);
;
}
(){
()();
}
}
注意:
所有层的实现类都需要在配置,并且必须获得一个的引用,然后才能完成持久化访问。
换句话说,的实现类都交由容器的来管理。
参考中的配置的部分代码如下“
<"""">
<"">
<""/>
<>
<>
<"""">
<"">
<""/>
<>
<>
<"""">
<"">
<""/>
<>
<>
<"""">
<"">
<""/>
<>
<>
<"""">
<"">
<""/>
<>
<>
6、实现业务逻辑层(层)
主要实现对层的调用。
难点1:
依赖注入
依赖注入首先要在需要注入的类中声明一个变量(对象),同时生成该变量(对象)的方法。
其次需要在配置文件中设置需要注入的对象。
例如,需要在登录的类中注入实例化后的对象,步骤有二:
首先,在中声明,同时生成的方法,参考代码如下:
;
;
;
;
{
对进行依赖注入
;
(){
=;
}
(){
();
}
(,){
(,);
}
(){
();
}
}
其次,在的配置文件中进行配置:
<"""">
<"">
<""/>
<>
<>
7、对业务逻辑增加事务管理
采用,根据自动生成事务代理的方式。
参考代码:
<"""3">
<需要依赖注入一个的引用>
<"">
<""/>
<>
<>
<配置事务拦截器>
<"""">
<事务拦截器需要依赖注入一个事务管理器>
<""""/>
<"">
<下面定义事务传播属性>
<>
<"*"><>
<"*"><>
<>
<>
<>
<定义,该无需被引用,因此没有属性,这个根据事务拦截器为目标自动创建事务代理>
<"">
<指定对满足哪些的自动生成业务代理>
<"">
<下面是所有需要自动创建事务代理的>
<>
<><>
<><>
<><>
<><>
<>
<此处可增加其他需要自动创建事务代理的>
<>
<下面定义所需的事务拦截器>
<"">
<>
<><>
<此处可增加其他新的>
<>
<>
<>
8、实现表示层(类和文件)
(1)配置,增加2的过滤器和的监听器,参考代码如下:
<>
<>2<>
<>
2
<>
<>
<>
<>2<>
<>/*<>
<>
<>
<>
<>
<>
<>
<><><><>
<>
(2)增加文件,配置2的交由来管理,参考代码如下:
(3)新建页面和类,并在和中配置。
以登录为例:
类参考代码:
;
;
;
;
2;
2;
{
;
;
(){
;
}
(){
=;
}
(){
;
}
(){
=;
}
(){
((),());
(){
()()();
("",);
;
}
;
}
}
参考配置:
<"""">
<""><>
<""><>
<""><>
<>
参考配置:
<"""">
<"">
<""/>
<>
<>
9、部署运行
【人才】人才学习天堂
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 ssh 架构 学生 成绩管理系统