JavaEE学生选课系统实验报告.docx
- 文档编号:25585310
- 上传时间:2023-06-10
- 格式:DOCX
- 页数:14
- 大小:454.77KB
JavaEE学生选课系统实验报告.docx
《JavaEE学生选课系统实验报告.docx》由会员分享,可在线阅读,更多相关《JavaEE学生选课系统实验报告.docx(14页珍藏版)》请在冰豆网上搜索。
JavaEE学生选课系统实验报告
实验报告
一、实验目的:
使用JavaEE语言,由Struts2、Hibernate、Spring这三个框架组合开发实现一个学生信息管理系统。
二、功能描述:
该系统具有登录、学生信息查询、实现学生信息的增加、删除和修改等操作。
在登录学生信息管理系统时,如果没有登录成功,就回到登录界面,登录成功后方可进行各种操作,所以需要创建三个表:
XSB表、ZYB表、DLB表。
三、实验步骤:
1打开SQLServer,将已有的数据库XSCJ还原到SQL数据库中。
2打开MyEclipse,新建一个名为xscjManage_ZYW的WebProject。
将lib包复制到项目中,并且右击项目,打开【BuildPath】→【ConfigureBuildPath…】菜单项,选择【AddJars…】,选择项目中刚考进去的lib包中的jar包,点OK。
3选中项目,打开菜单项中的【Windows】→【showview】→【other】→【DBBrowser】,在【MyEclipseDerby】下新建一个名为test的数据连接驱动,并将jtds的jar包添加到DriverJars中。
其中Template用jtds,ConnectionURL为“jdbc:
jtds:
sqlserver:
//localhost:
1433/xscj”,username以及password都为“sa”.并且打开数据库连接。
4选中xscjManage_ZYW,选择菜单项中的【MyEclipse】→【ProjectCapalibities】→【AddSpringCapalibities…】,去掉MyEclipse的勾选,单击Next,去掉EnableAOPBuilder的勾选,点Finish完成Spring的添加.
5继续选择菜单项中的【MyEclipse】→【ProjectCapalibities】→【AddHibernateCapalibities…】,去掉MyEclipseLibraries的勾选,单击Next,选择”Springconfigurationfile”,单击【Next】,选择"ExisitingSpringconfigurationfile”,单击【Next】,在DBDriver中选择刚才创建的数据库连接驱动test,单击【Next】,去勾选"CreateSessionFactoryclass”,单击【Finish】,完成Hibernate的添加。
6打开test,打开xscj下的TABLE,右击DLB,选择【HibernateReverseEngineering…】,在文本框中的”Javasrcfolder”下点【Browse…】,选择xscjManage_ZYW下的src,新建包org。
model,勾选CreatePOJO…和JavaDataObject…并去掉Createabstractclass的勾选。
单击【Next】,将IdGenerator选择为identity,单击【Finish】。
生成DLB表对应的POJO类及相应的映射文件.对XSB表和ZYB表进行同样的操作,只是XSB表的IdGenerator应选择为assigned。
在映射文件Xsb。
hbm.xml中添加代码:
7实现DAO
在web项目下新建包org.dao,在该包下新建接口DlDao_ZYW,创建学号和口令查找、插入用户以及判断是否存在该学生的用户的方法。
新建接口XsDao_ZYW,创建插入学生、根据学号删除学生、修改学生信息、根据学号查询学生信息,分页显示学生信息,查询一共多少条学生信息的方法.
新建接口ZyDao_ZYW,创建插入专业信息、根据专业ID查找专业信息、查找所有专业信息的方法。
并新建包org.dao.imp,在该包下新建实现类DlDaoImp_ZYW.java、XsDaoImp_ZYW.java、ZyDaoImp_ZYW.java并使用Spring整合Hibernate后提供的HibernateDaoSupplort类,分别实现DlDao_ZYW。
java、XsDao_ZYW.java和ZyDao_ZYW.java中的方法。
8基于HibernateDaoSupport的DAO组件必须获得一个SessionFactory的引用,然后才可以完成持久化访问。
因此把这些DAO组件交由Spring容器的Bean来管理,而且在后面的业务逻辑中也要用到这些组件,所以要在Spring配置文件中进行配置。
9实现业务逻辑层
业务逻辑组件是为控制器提供服务的,他依赖于DAO组件,是对DAO的封装,通过其封装让控制器无需直接访问DAO的方法,而是调用业务逻辑的方法.
新建包org.service,在包下新建接口DlService_ZYW.java,创建DlDao中的方法,并以同样的方法新建XsService_ZYW.java和ZyService_ZYW。
java。
新建包org。
service.imp,在包下新建实现类DlServiceManage_ZYW。
java、XsServiceManage_ZYW。
java、ZyServiceManage_ZYW.java,分别实现DlService_ZYW.java、XsService_ZYW。
java、ZyService_ZYW.java中的方法。
把业务逻辑交由Spring容器的Bean管理,在Spring配置文件中进行配置:
10实现Web层
打开web.xml,在其中配置相应的过滤器和监听器。
在src下新建文件命名为struts。
properties,代码如下:
struts.objectFactory=spring
11分页实现
新建包org。
tool,在该包下新建类Pager.java,实现页面分页操作。
12项目主界面
将所需要的图片直接复制到WebRoot目录下.
在WebRoot下新建jsp页面head.jsp,实现页面如图1,left.jsp如图2,foot。
jsp页面如图3,right。
jsp页面以及main。
jsp如图4。
图1
图2
图3
图4
13登录页面
在left。
jsp中,超链接都是转向Action的,交由Struts2框架来处理,因为Struts2可以自己配置拦截器,用来验证用户是否已经登录,如果没有登录就跳转到登陆界面.而登录成功后就会跳转到成功界面。
在包org。
tool下新建拦截器MyFilter.java。
在Struts的核心配置文件struts.xml中对实现left.jsp中超链接跳转的Action进行配置:
在WebRoot目录下新建login。
jsp页面,实现登录界面。
在struts。
xml中进行配置:
在src下新建包org。
action,同时在该包下新建基于ActionSupport的类DlAction_ZYW.java.
由于Action实例是由Spring完成的,所以在applicationContext。
xml文件中进行相应配置:
新建登录成功后的JSP页面login_success。
jsp,完成登录功能的实现。
具体如下图所示:
图5
图6
14“学生信息管理”功能实现
1)显示所有学生信息
在left.jsp页面中有一个【学生信息查询】的超链接,如果登录后单击它,则会分页列举所有学生信息。
如图7所示
图7
在包org。
action下新建类XsAction。
java,实现添加学生信息功能时用到了专业信息的业务逻辑,在Spring配置文件中进行配置:
成功后跳转到xsInfo。
jsp,分页显示所有学生信息。
2)显示某个学生信息
xsInfo.jsp页面中有【详细信息】的超链接。
单击它会显示该学生的详细信息.
在struts.xml配置文件中对Action进行配置:
并且在XsAction类中加入详细信息的实现代码:
publicStringfindXs()throwsException{
Stringxh=xs.getXh();
Xsbstu2=xsService.find(xh);
Maprequest=(Map)ActionContext.getContext().get("request");
request.put("xs",stu2);
returnSUCCESS;
}
在WebRoot目录下新建JSP页面moretail.jsp作为显示页面,在该页面中单击【返回】按钮,提交到xsInfo。
action显示所有学生信息.具体显示如图8所示:
图8
3)删除某学生信息
在xsInfo。
jsp页面中有如下代码:
xs.xh= propertyvalue="#xs.xh"/>" onClick="if(! confirm('确认删除信息吗? '))returnfalse;elsereturntrue;">删除
为了防止人员无意中单击删除超链接,故加入了上面确定消息框,当用户单击【删除】超链接后,会出现如图9所示的界面:
图9
单击【确定】按钮,提交信息到deleteXs.action。
对应Action配置如下:
对应实现删除的代码在XsAction类中。
操作成功后会跳转到success.jsp页面。
如图10所示:
图10
4)修改某学生信息
单击【修改】按钮,会跳转到学生信息修改页面。
【修改】超链接交给Action且传递了该学生的学号作为参数:
具体的方法实现在XsAction中。
在Action类处理完毕后,跳转到修改页面updateXsView。
jsp,页面如图11所示:
图11
当填写要修改的内容后,单击【修改】按钮,提交到updateXs。
action:
实现修改的方法在XsAction中实现。
修改成功后会跳转到success。
jsp页面,显示操作成功。
5)添加某学生信息
在主界面中单击【学生信息录入】超链接,要实现学生信息的添加.超链接提交的Action配置在前面拦截器中已经进行配置,故这里不用再重复配置。
添加的实现方法还是在XsAction中。
在XsAction类中添加一个List属性,并生成其getter和setter方法,用来保存专业集合,这样在页面中就可以直接调用。
显示页面在addxsInfo.jsp中,显示如图12所示:
图12
输完学生信息后,单击【添加】按钮,提交给addXs。
action,配置如下:
对应的实现方法在XsAction中。
若是添加不成功或学号信息已经存在,就会跳转到existXs.jsp中,显示学好已存在。
四、实验总结
本实验主要实现学生信息管理系统中学生信息的添加、删除、查询以及修改等操作。
在操作过程中,遇到一些问题,比如说:
存在配置文件时命名的相对应问题,代码输入问题以及一些开始创建项目的时候前期工作上的一些小错误,这些都容易导致后面的运行不能成功。
在本次实验中,我更深入的了解了JavaEE方面的知识。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JavaEE 学生 选课 系统 实验 报告