SSH实训指导书Word下载.docx
《SSH实训指导书Word下载.docx》由会员分享,可在线阅读,更多相关《SSH实训指导书Word下载.docx(89页珍藏版)》请在冰豆网上搜索。
教师登录
完成教师登录功能。
7
教师登录成绩
完成教师登录成绩的功能。
8
拦截器、数据校验和异常处理
完成登录功能、数据验证和异常处理。
9
学生查询成绩
完成学生成绩查询功能。
设计性
实验一JavaWeb项目搭建
实验性质
所属课程
SSH
√验证□综合□设计
必做/选做
√必做□选做
实验目的
掌握JavaWeb项目搭建过程和方法;
实验内容
实验条件及环境
PC机(2M内存),WindowsOS,EclipseIDE,MySQL5.5,Tomcat6.x。
实验步骤
1.1新建项目
在Eclipse中,点击File菜单,选择“New”菜单项,在子菜单中选择“Other…”,如图1.1所示。
图1.1点击File菜单,选择New→Other…
1.2选择项目类型
在弹出的对话框中,点开Web节点,选择“DynamicWebProject”,点“Next”按钮,如图1.2所示。
图1.2选择DynamicWebProject
1.3选择运行环境
在NewWebProject对话框中,在Projectname后的文本框中输入项目名JavaWeb,并点击“NewRuntime…”按钮,如图1.3所示。
图1.3选择运行环境
1.4设置运行环境
在“NewServerRuntimeEnvironment”对话框中,点击Apache结点,并选择“ApacheTomcatv7.0”,点“Next”按钮,如图1.4所示。
图1.4选择ApacheTomcat7.0
1.5选择Tomcat
在弹出的对话框中,点击“Browse…”按钮,在弹出的对话框中,定位apche-tomcat-7.0.69的安装位置,占“Finish”按钮,如图1.5所示。
图1.5定位apache-tomcat-7
1.6下一步
在图1.3所示的对话框中,选择“Next”,弹出如图1.6所示的对话框。
直接点击“Next”按钮。
图1.6
1.7完成
在弹出的对话框中,选择“”复选框,点“Finish”按钮,完成项目的创建。
如图1.7所示。
图1.7
构建好的项目结构如图1.8所示。
图1.8完成后的JavaWeb项目。
实验二SSH框架集成
掌握SSH框架的集成过程和方法;
进行Struts2、Spring3和Hibernate4的框架集成。
PC机(2M内存),WindowsOS,EclipseIDE,MySQL5.5,Tomcat6.x,NavicatPremium。
2.1导入SSHJar文件
在教师指定的FTP下载所需要的jar文件,全部复制到JavaWeb项目的WebContent/WEB-INF/lib目录下。
2.2配置web.xml文件
打开web.xml文件,输入以下代码。
<
?
xmlversion="
1.0"
encoding="
UTF-8"
>
web-appxmlns:
xsi="
http:
//www.w3.org/2001/XMLSchema-instance"
xmlns="
xsi:
schemaLocation="
id="
WebApp_ID"
version="
2.5"
<
display-name>
SSHDemo<
/display-name>
filter>
<
filter-name>
struts2<
/filter-name>
filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter<
/filter-class>
/filter>
filter-mapping>
url-pattern>
/*<
/url-pattern>
/filter-mapping>
!
--spring配置地址和相应的监听器-->
context-param>
param-name>
contextConfigLocation<
/param-name>
param-value>
classpath:
applicationContext.xml<
/param-value>
/context-param>
listener>
listener-class>
org.springframework.web.context.ContextLoaderListener<
/listener-class>
/listener>
welcome-file-list>
welcome-file>
index.jsp<
/welcome-file>
/welcome-file-list>
/web-app>
2.3新建struts.xml文件
按A.1所示的方法,在项目的src目录下,新建struts.xml文件。
在新建的struts.xml文件中,输入以下代码:
DOCTYPEstrutsPUBLIC
"
-//ApacheSoftwareFoundation//DTDStrutsConfiguration2.3//EN"
//struts.apache.org/dtds/struts-2.3.dtd"
struts>
constantname="
struts.enable.DynamicMethodInvocation"
value="
false"
/>
struts.devMode"
true"
packagename="
default"
namespace="
/"
extends="
struts-default"
actionname="
"
class="
result>
/result>
/action>
/package>
/struts>
2.4新建applicationContext.xml文件
按A.1所示的方法,在项目的src目录下,新建applicationContext.xml文件。
并输入以下代码。
beansxmlns="
//www.springframework.org/schema/beans"
xmlns:
xmlns:
aop="
//www.springframework.org/schema/aop"
tx="
//www.springframework.org/schema/tx"
//www.springframework.org/schema/beans
http:
//www.springframework.org/schema/beans/spring-beans-2.5.xsd
//www.springframework.org/schema/tx
http:
//www.springframework.org/schema/tx/spring-tx.xsd
//www.springframework.org/schema/aop
//www.springframework.org/schema/aop/spring-aop.xsd"
--定义数据源,该bean的ID为dataSource-->
beanid="
dataSource"
class="
org.springframework.jdbc.datasource.DriverManagerDataSource"
--指定数据库驱动-->
propertyname="
driverClassName"
<
value>
com.mysql.jdbc.Driver<
/value>
/property>
--指定连接数据库的URL-->
url"
jdbc:
mysql:
//192.168.131.218:
3306/hibernate<
--root为数据库的用户名-->
username"
root<
--pass为数据库密码-->
password"
123456<
/bean>
--定义Hibernate的SessionFactory-->
sessionFactory"
org.springframework.orm.hibernate3.LocalSessionFactoryBean"
--依赖注入数据源,注入正是上文定义的dataSource-->
reflocal="
--mappingResouces属性用来列出全部映射文件-->
mappingResources"
list>
<
--以下用来列出所有的PO映射文件-->
/list>
--定义Hibernate的SessionFactory的属性-->
hibernateProperties"
props>
--指定Hibernate的连接方言-->
propkey="
hibernate.dialect"
org.hibernate.dialect.MySQLDialect<
/prop>
--不同数据库连接,启动时选择create,update,create-drop-->
hibernate.hbm2ddl.auto"
update<
/props>
/beans>
2.5集成测试
1、测试之前将jdbc:
3306/hibernate修改成自己的IP地址,并按附录A.2所示的步骤新建hibernate数据库,并将hibernate-2016-5-23-1801.sql导入hibernate数据库。
2、在项目名称上右键单击,在弹出的快捷菜单中选择“Runas”→“RunonServer”选项,如图2.1所示。
图2.1运行JavaWeb项目
项目应能启动。
启动后如图2.2所示。
图2.2项目正常启动效果
说明:
之所以出现404错误,是因为我们没有访问具体的URI地址而已,而不项目本身的错误。
实验三学生登录
●掌握SSH框架的开发流程和基本;
●掌握SSH框架的运行流程;
●掌握SSH框架的struts.xml配置;
●掌握SSH框架的applicationContext.xml配置;
●掌握Struts2标签的运用
完成学生登录功能。
3.1导入Hibernate映射文件
按附录A.4所示的方法在src目录下新建com.nanshan.bo包,并把下载到的java文件和*.hbm.xml文件复制到该包中。
如图3.1所示。
并修改applicationContext.xml文件,在
的<
中添加以下代码:
com/nanshan/bo/Clazz.hbm.xml<
com/nanshan/bo/Course.hbm.xml<
com/nanshan/bo/Selcourse.hbm.xml<
com/nanshan/bo/Stu.hbm.xml<
com/nanshan/bo/Teacher.hbm.xml<
图3.1Hibernate映射文件
3.2编写登录界面
按附录A.3所示的方法创建JSP文件index.jsp。
%@pagelanguage="
java"
contentType="
text/html;
charset=utf-8"
pageEncoding="
utf-8"
%>
%@taglibprefix="
s"
uri="
/struts-tags"
DOCTYPEhtmlPUBLIC"
-//W3C//DTDHTML4.01Transitional//EN"
//www.w3.org/TR/html4/loose.dtd"
html>
head>
metahttp-equiv="
Content-Type"
content="
title>
Inserttitlehere<
/title>
/head>
body>
h3>
登录<
/h3>
fontcolor="
red"
提示:
%
Stringtip=(String)request.getAttribute("
tip"
);
if(null!
=tip){
out.println(tip);
}
%>
/font>
formaction="
Login_login"
s:
hiddenname="
login"
/s:
hidden>
br/>
textfieldname="
stuId"
label="
用户名"
textfield>
passwordname="
密码"
password>
submitvalue="
登录"
submit>
/form>
/body>
/html>
3.3编写IStuDao数据库访问接口
在项目src目录下新建com.nanshan.dao包,并在包中新建IStuDao接口(方法见附录A.5)。
packagecom.nanshan.dao;
importcom.nanshan.bo.Stu;
publicinterfaceIStuDao{
publicStufindStuById(StringstuId);
}
3.4编写StuDaoImpl实现IStuDao接口
在项目src目录下新建com.nanshan.dao.impl包,并在包中新建StuDaoImpl.java类(方法见附录A.6),并输入以下代码(注意,该类实现了3.3节定义的IStuDao接口)。
注意:
输入代码时,会出现找不到IStuDao接口的情况,请按Ctrl+Shift+O导入该接口即可。
packagecom.nanshan.dao.impl;
importjava.sql.SQLException;
importjava.util.List;
importorg.hibernate.HibernateException;
importorg.springframework.orm.hibernate3.support.HibernateDaoSupport;
publicclassStuDaoImplextendsHibernateDaoSupportimplementsIStuDao{
@Override
publicStufindStuById(StringstuId){
//TODOAuto-generatedmethodstub
Stustu=(Stu)getHibernateTemplate().get(Stu.class,stuId);
returnstu;
}
3.5配置IStuDao实现类
在applicationContext.xml文件中的<
标签前,添加以下代码。
stuDao"
class="
com.nanshan.dao.impl.StuDaoImpl"
ref="
3.6编写LoginAction类
在项目src目录下新建com.nanshan.action包(方法见附录A.4),然后在该包下新建类LoginAction.java,并键入以下代码。
packagecom.nanshan.action;
importjava.util.Map;
importcom.nanshan.dao.IStuDao;
importcom.opensymphony.xwork2.ActionContext;
importcom.opensymphony.xwork2.ActionSupport;
publicclassLoginActionextendsActionSupport{
privateIStuDaostuDao;
privateStringstuId;
privateStringpassword;
publicStringlogin()throwsException{
Stustu=stuDao.findStuById(stuId);
if(null!
=stu){
if(stu.getPassword().equals(password)){
returnSUCCESS;
}
returnINPUT;
publicIStuDaogetStuDao(){
returnstuDao;
publicvoidsetStuDao(IStuDaostuDao){
this.stuDao=stuDao;
publicStringgetStuId(){
returnstuId;
publicvoidsetStuId(StringstuId){
this.stuId=stuId;
publicStringgetPassword(){
returnpassword;
publicvoidsetPassword(Stringpassword){
this.password=password;
privateStringstuId;
对应于3.2节(编写登录界面)中index.jsp中如下的表单域相对应,以完成Struts2的自动赋值功能。
3.7配置LoginAction类(applicationContext.xml)
在applicationContext.xml文件中,<
之前添加以下代码:
LoginAction"
com.nanshan.action.LoginAction"
name="
n是LoginAction中privateIStuDaostuDao;
对应的变量,ref="
是引用3.5节(配置IStuDao实现类)配置的实现类。
3.8配置LoginAction