JavaEE实验报告Word文档下载推荐.docx
《JavaEE实验报告Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《JavaEE实验报告Word文档下载推荐.docx(14页珍藏版)》请在冰豆网上搜索。
用户名:
%=session.getAttribute("
)%>
控制器Servlet:
Stringuserid=request.getParameter("
);
Stringpassword=request.getParameter("
HttpSessionsession=request.getSession();
session.setAttribute("
userid);
password);
UserServicecs=newUserService();
if(cs.login(userid,password)){
List<
User>
list=cs.viewAll();
request.getSession().setAttribute("
userlist"
list);
RequestDispatcherdispatcher=request.getRequestDispatcher("
successLogin.jsp"
dispatcher.forward(request,response);
}
else{
RequestDispatcherdispatcher=request.getRequestDispatcher("
failLogin.jsp"
dispatcher.forward(request,response);
}
配置文件:
servlet>
servlet-name>
Login<
/servlet-name>
servlet-class>
servlet.login<
/servlet-class>
/servlet>
servlet-mapping>
url-pattern>
/Login<
/url-pattern>
/servlet-mapping>
2、在用户登录模块上,编写一个登录验证的过滤器,禁止不通过登录直接访问欢迎页面。
(要求给出过滤器的主要代码,及其配置文件)
过滤器主要代码:
HttpServletRequestrequest=(HttpServletRequest)arg0;
HttpServletResponseresponse=(HttpServletResponse)arg1;
HttpSessionsession=request.getSession();
Stringuserid=(String)session.getAttribute("
if(userid==null)
response.sendRedirect("
/ch3/index.jsp"
else
arg2.doFilter(arg0,arg1);
对应的配置文件:
filter>
filter-name>
LoginFilter<
/filter-name>
filter-class>
filter.LoginFilter<
/filter-class>
/filter>
filter-mapping>
/successLogin.jsp<
/filter-mapping>
实验二基于MVC的简单Web应用开发
1、理解MVC模式。
2、掌握MVC模式的实现方法。
Windows、MyEclipse10、Tomcat7、MySQL5.6
1、给出你对MVC的理解
MVC:
模型、视图、控制器。
用业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进界面及用户交互时,不需要重新编写业务逻辑,耦合性低,重用性高。
2、基于用户表实现用户注册功能(要求给出DAO的数据库插入方法,Service的对应方法,和控制器-Servlet的主要内容)
DAO层数据库插入方法:
publicbooleaninsert(Useruser){
Connectionconn=JDBCConnectionFactory.getConnection();
Stringsql="
insertintoUser(userid,password,realname,email,admin)values(?
?
)"
;
try{
PreparedStatementpstmt=conn.prepareStatement(sql);
pstmt.setString(1,user.getUserid());
pstmt.setString(2,user.getPassword());
pstmt.setString(3,user.getRealname());
pstmt.setString(4,user.getEmail());
pstmt.setString(5,user.getAdmin());
inti=pstmt.executeUpdate();
if(i>
0)
returntrue;
}catch(SQLExceptione){
e.printStackTrace();
}finally{
if(conn!
=null){
try{
conn.close();
}catch(SQLExceptione){
e.printStackTrace();
}
}
}
returnfalse;
Service对应的方法:
returndao.insert(user);
Servlet主要内容:
publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
Useruser=newUser();
user.setUserid(request.getParameter("
));
user.setPassword(request.getParameter("
user.setRealname(request.getParameter("
realname"
user.setEmail(request.getParameter("
email"
user.setAdmin(request.getParameter("
admin"
booleanflag=cs.insert(user);
Stringmsg=flag?
"
添加成功!
:
添加失败!
request.setAttribute("
msg"
msg);
dispatcher.forward(request,response);
实验三Struts2开发
1、熟练掌握Struts2框架的使用。
2、熟悉Struts2标签库的配置和使用。
3、熟悉Struts2在国际化方面的实现。
4、掌握Struts2数据校验的功能。
使用Struts2实现用户登录模块,其中:
1、登录页面需要使用Struts2标签库和实现国际化
s:
regist"
validate="
true"
textfieldname="
name"
/s:
textfield>
passwordname="
pass"
password>
submitname="
submit>
form>
2、对于空数据要进行validate()校验
validators>
fieldname="
field-validatortype="
requiredstring"
paramname="
trim"
true<
/param>
message>
必须输入名字<
/message>
/field-validator>
regex"
expression"
!
[CDATA[(/w{4,25})]]>
用户名只能是字母和数组,且长度必须在4到25之间<
/field>
必须输入密码<
密码只能是字母和数组,且长度必须在6到25之间<
/validators>
3、要求给出相关文件的关键代码和资源文件、配置文件的主要内容
Action代码:
publicclassLogin{
privateStringname;
privateStringpass;
publicStringgetName(){
returnname;
publicvoidsetName(Stringname){
this.name=name;
publicStringgetPass(){
returnpass;
publicvoidsetPass(Stringpass){
this.pass=pass;
publicStringexecute(){
Stringtempname=name.substring(0,5);
Stringtemppass=pass.substring(0,3);
if(tempname.equals("
)&
&
temppass.equals("
123"
)){
return"
success"
}else{
failed"
}
资源文件info_en_US.properties:
name=Username
pass=Password
submit=Submit
资源文件info_zh_CN.properties:
name=用户名
pass=密码
submit=提交
Struts配置文件:
struts>
constantname="
struts.devMode"
/>
packagename="
localeTest"
extends="
struts-default"
<
actionname="
class="
controller.Login"
<
resultname="
/ok.jsp<
/result>
/error.jsp<
/action>
/package>
struts.custom.i18n.resources"
info"
/constant>
/struts>
实验四Hibernate开发
1、熟悉Hibernate框架的配置和使用方法。
2、掌握Hibernate数据查询方式。
1、基于Hibernate框架的Web项目搭建过程(要求给出具体实现步骤的描述)
(1)、打开Myeclipse软件——新建一个Webproject。
(2)、创建数据库驱动连接。
单击右上角的编辑模式,选择MyeclipseDatabaseExplorer。
(3)、新建数据库连接,在左侧位置右键,选择new,新建一个数据库连接。
(4)、配置连接文件,根据你的数据库选择不同的数据连接方式,填写你要创建的连接的名字,URL等信息,加载驱动,单击next——finish。
(5)、选则新建的数据库链接,然后单击连接按钮进行测试连接。
(6)、连接成功后可以看到数据库中的表等信息。
(7)、切回到myeclipse视图,右键工程名,然后选择myeclipse—>
AddHibernateCapabilities。
(8)、在installHibernate界面,点击Next,进行Hibernate的安装。
新建一个包,用来存放的SessionFactory。
(9)、单击next,选择刚建立的连接名,Next,Finish。
2、实现查询用户信息的功能(要求给出用户表结构、用户持久化类以及映射文件的主要内容)
用户表结构:
CREATETABLEIFNOTEXISTS`userinfo`(
`id`int(11)NOTNULLAUTO_INCREMENT,
`username`varchar(20)NOTNULL,
`password`varchar(20)NOTNULL,
`age`varchar(4)NOTNULL,
`sex`varchar(4)NOTNULL,
PRIMARYKEY(`id`)
)ENGINE=InnoDBDEFAULTCHARSET=utf8AUTO_INCREMENT=1;
持久化类:
publicclassUserinfoimplementsjava.io.Serializable{
privateIntegerid;
privateStringusername;
privateStringpassword;
privateStringage;
privateStringsex;
publicUserinfo(){
publicUserinfo(Stringusername,Stringpassword,Stringage,Stringsex){
this.username=username;
this.password=password;
this.age=age;
this.sex=sex;
publicIntegergetId(){
returnthis.id;
publicvoidsetId(Integerid){
this.id=id;
publicStringgetUsername(){
returnthis.username;
publicvoidsetUsername(Stringusername){
publicStringgetPassword(){
returnthis.password;
publicvoidsetPassword(Stringpassword){
publicStringgetAge(){
returnthis.age;
publicvoidsetAge(Stringage){
publicStringgetSex(){
returnthis.sex;
publicvoidsetSex(Stringsex){
映射文件:
hibernate-mapping>
classname="
orm.Userinfo"
table="
userinfo"
catalog="
test"
idname="
id"
type="
java.lang.Integer"
columnname="
generatorclass="
assigned"
/id>
propertyname="
username"
java.lang.String"
length="
20"
not-null="
/property>
age"
4"
sex"
/class>
/hibernate-mapping>
实验五完整Web项目开发
1、熟悉SSH框架的配置和使用方法。
2、了解IoC的使用方法。
1、基于SSH框架的Web项目搭建过程(要求给出具体实现步骤的描述)
(2)、右键工程名,然后选择myeclipse—>
AddSpringCapabilities。
(3)、勾选以下五个依赖,然后再选择下面的Copychecked...然后点击next
Spring3.0AOPLibraries
Spring3.0CoreLibraries
Spring3.0PersistenceCoreLibraries
Spring3.0PersistenceJDBCLibraries
Spring3.0WebLibraries
(4)、把EnableAOPBuilder勾掉,Finish。
(5)、右键工程名,然后选择myeclipse—>
(6)、选择下面的Copychecked...然后点击next
(7)、选择ExistingSpringconfigurationfile,next
(8)、选择Springconfigurationfile(applicationContext.xml),next
(9)、选择一个hibernate的连接了,next
(10)、把SpecifySpringDataSourcecontentiondetails?
勾掉,next
(11)、把CreateSessionFactoryclass?
勾掉,Finish。
(12)、右键工程名,然后选择myeclipse—>
AddStrutsCapabilities。
(13)、选择struts2.1,URLpattern选择/*,next。
(14)、选择Struts2CoreLibraries,Finish。
2、注册模块中,使用IoC实现注入用户信息的功能(要求给出相关文件的主要内容)
Spring配置文件:
beanid="
userinfodao"
xyz.baal.test.UserinfoDaoImpl"
dataSource"
ref="
/bean>
class="
org.springframework.jdbc.datasource.DriverManagerDataSource"
driverClassName"
com.mysql.jdbc.Driver"
url"
jd