JavaEE实验报告
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
user.setRealname(request.getParameter("realname"));
user.setEmail(request.getParameter("email"));
user.setAdmin(request.getParameter("admin"));
UserService cs=new UserService();
<servlet-name>Login</servlet-name>
<url-pattern>/Login</url-pattern>
</servlet-mapping>
2、在用户登录模块上,编写一个登录验证的过滤器,禁止不通过登录直接访问欢迎页面。(要求给出过滤器的主要代码,及其配置文件)
过滤器主要代码:
throws ServletException, IOException {
User user=new User();
user.setUserid(request.getParameter("userid"));
user.setPassword(request.getParameter("password"));
String tempname = name.substring(0, 5);
String temppass = pass.substring(0, 3);
if(tempname.equals("admin")&&temppass.equals("123")){
return "success";
} else {
dispatcher.forward(request, response);
}
配置文件:
<servlet>
<servlet-name>Login</servlet-name>
<servlet-class>servlet.login</servlet-class>
</servlet>
<servlet-mapping>
2、掌握MVC模式的实现方法。
环境:
Windows、MyEclipse10、Tomcat7、MySQL5.6
内容:
1、给出你对MVC的理解
MVC:模型、视图、控制器。用业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进界面及用户交互时,不需要重新编写业务逻辑,耦合性低,重用性高。
登陆页面:
<form action="Login" method="post">
<p>账号:<input type="text" name="userid"></p>
<p>密码:<input type="password" name="password"></p>
<p><input type="submit" value="登录" >
内容:
使用Struts2实现用户登录模块,其中:
1、登录页面需要使用Struts2标签库和实现国际化
<s:form action="regist" validate="true">
<s:textfield name="name"></s:textfield>
<s:password name="pass"></s:password>
<message>必须输入名字</message>
</field-validator>
<field-validator type="regex">
<param name="expression"><![CDATA[(/w{4,25})]]></param>
<message>用户名只能是字母和数组,且长度必须在4到25之间</message>
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>
e.printStackTrace();
}
}
}
return false;
}
Service对应的方法:
public boolean insert(User user) {
return dao.insert(user);
}
Servlet主要内容:
public void doPost(HttpServletRequest request, HttpServletResponse response)
2、基于用户表实现用户注册功能(要求给出DAO的数据库插入方法,Service的对应方法,和控制器-Servlet的主要内容)
DAO层数据库插入方法:
public boolean insert(User user) {
Connection conn = JDBCConnectionFactory.getConnection();
<s:submit name="submit"></s:submit>
</s:form>
2、对于空数据要进行validate()校验
<validators>
<field name="name">
<field-validator type="requiredstring">
<param name="trim">true</param>
String userid=request.getParameter("userid");
String password=request.getParameter("password");
HttpSession session=request.getSession();
session.setAttribute("userid", userid);
</field-validator>
</field>
<field name="pass">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>必须输入密码</message>
</field-validator>
dispatcher.forward(request, response);
}
实验三Struts2开发
目的:
1、熟练掌握Struts2框架的使用。
2、熟悉Struts2标签库的配置和使用。
3、熟悉Struts2在国际化方面的实现。
4、掌握Struts2数据校验的功能。
环境:
Windows、MyEclipse10、Tomcat7
RequestDispatcher dispatcher=request.getRequestDispatcher("successLogin.jsp");
dispatcher.forward(request, response);
}
else{
RequestDispatcher dispatcher=request.getRequestDispatcher("failLogin.jsp");
<input type="reset" value="重置" >
</p>
</form>
欢迎页面:
<p>用户名:<%= session.getAttribute("userid") %></p>
<p>密码:<%= session.getAttribute("password") %></p>
控制器Servlet:
HttpServletRequest request=(HttpServletRequest)arg0;
HttpServletResponse response=(HttpServletResponse)arg1;
HttpSession session=request.getSession();
String userid=(String)session.getAttribute("userid");
实验一Servlet开发
目的:
1、理解Servlet的工作原理。
2、掌握创建Servlet的方法。
3、熟悉Servlet的应用。
4、熟悉Filter的应用。
环境:
Windows、MyEclipse10、Tomcat7
内容:
1、使用Servlet创建一个用户登录模块,登录成功后在欢迎页面:显示用户信息。(要求给出登录页面、欢迎页面的关键代码,控制器Servlet的主要代码,及其配置文件)
session.setAttribute("password", password);
UserService cs=new UserService();
if(cs.login(userid, password)){
List<User> list=cs.viewAll();
request.getSession().setAttribute("userlist", list);
return "failed";
}
}
}
资源文件info_en_US.properties:
name=Username
pass=Password
submit=Submit
资源文件info_zh_CN.properties:
</validators>
3、要求给出相关文件的关键代码和资源文件、配置文件的主要内容
Action代码:
public class Login {
private String name;
private String pass;
public String getName() {
return name;
}
String sql = "insert into User(userid,password,realname,email,admin) values(?,?,?,?,?)";
try {
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, user.getUserid());
</filter>
<filter-mapping>
<filter-name>LoginFilter</filter-name>
<url-pattern>/successLogin.jsp</url-pattern>
</filter-mapping>
实验二基于MVC的简单Web应用开发
目的:
1、理解MVC模式。
pstmt.setString(2, user.getPassword());
pstmt.setString(3, user.getRealname());
pstmt.setString(4, user.getEmail());
pstmt.setString(5, user.getAdmin());
public void setName(String name) {
= name;
}
public String getPass() {
return pass;
}
public void setPass(String pass) {
this.pass = pass;
}
public String execute() {
int i = pstmt.executeUpdate();
if (i > 0)
return true;
} catch (SQLException e) {
e.printStackTrace();
} finally {
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
<field-validator type="regex">
<param name="expression"><![CDATA[(/w{4,25})]]></param>
<message>密码只能是字母和数组,且长度必须在6到25之间</message>
</field-validator>
</field>
boolean flag=cs.insert(user);
String msg=flag?"添加成功!":"添加失败!";
request.setAttribute("msg", msg);
RequestDispatcher dispatcher=request.getRequestDispatcher("successLogin.jsp");
user.setEmail(request.getParameter("email"));
user.setAdmin(request.getParameter("admin"));
UserService cs=new UserService();
<servlet-name>Login</servlet-name>
<url-pattern>/Login</url-pattern>
</servlet-mapping>
2、在用户登录模块上,编写一个登录验证的过滤器,禁止不通过登录直接访问欢迎页面。(要求给出过滤器的主要代码,及其配置文件)
过滤器主要代码:
throws ServletException, IOException {
User user=new User();
user.setUserid(request.getParameter("userid"));
user.setPassword(request.getParameter("password"));
String tempname = name.substring(0, 5);
String temppass = pass.substring(0, 3);
if(tempname.equals("admin")&&temppass.equals("123")){
return "success";
} else {
dispatcher.forward(request, response);
}
配置文件:
<servlet>
<servlet-name>Login</servlet-name>
<servlet-class>servlet.login</servlet-class>
</servlet>
<servlet-mapping>
2、掌握MVC模式的实现方法。
环境:
Windows、MyEclipse10、Tomcat7、MySQL5.6
内容:
1、给出你对MVC的理解
MVC:模型、视图、控制器。用业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进界面及用户交互时,不需要重新编写业务逻辑,耦合性低,重用性高。
登陆页面:
<form action="Login" method="post">
<p>账号:<input type="text" name="userid"></p>
<p>密码:<input type="password" name="password"></p>
<p><input type="submit" value="登录" >
内容:
使用Struts2实现用户登录模块,其中:
1、登录页面需要使用Struts2标签库和实现国际化
<s:form action="regist" validate="true">
<s:textfield name="name"></s:textfield>
<s:password name="pass"></s:password>
<message>必须输入名字</message>
</field-validator>
<field-validator type="regex">
<param name="expression"><![CDATA[(/w{4,25})]]></param>
<message>用户名只能是字母和数组,且长度必须在4到25之间</message>
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>
e.printStackTrace();
}
}
}
return false;
}
Service对应的方法:
public boolean insert(User user) {
return dao.insert(user);
}
Servlet主要内容:
public void doPost(HttpServletRequest request, HttpServletResponse response)
2、基于用户表实现用户注册功能(要求给出DAO的数据库插入方法,Service的对应方法,和控制器-Servlet的主要内容)
DAO层数据库插入方法:
public boolean insert(User user) {
Connection conn = JDBCConnectionFactory.getConnection();
<s:submit name="submit"></s:submit>
</s:form>
2、对于空数据要进行validate()校验
<validators>
<field name="name">
<field-validator type="requiredstring">
<param name="trim">true</param>
String userid=request.getParameter("userid");
String password=request.getParameter("password");
HttpSession session=request.getSession();
session.setAttribute("userid", userid);
</field-validator>
</field>
<field name="pass">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>必须输入密码</message>
</field-validator>
dispatcher.forward(request, response);
}
实验三Struts2开发
目的:
1、熟练掌握Struts2框架的使用。
2、熟悉Struts2标签库的配置和使用。
3、熟悉Struts2在国际化方面的实现。
4、掌握Struts2数据校验的功能。
环境:
Windows、MyEclipse10、Tomcat7
RequestDispatcher dispatcher=request.getRequestDispatcher("successLogin.jsp");
dispatcher.forward(request, response);
}
else{
RequestDispatcher dispatcher=request.getRequestDispatcher("failLogin.jsp");
<input type="reset" value="重置" >
</p>
</form>
欢迎页面:
<p>用户名:<%= session.getAttribute("userid") %></p>
<p>密码:<%= session.getAttribute("password") %></p>
控制器Servlet:
HttpServletRequest request=(HttpServletRequest)arg0;
HttpServletResponse response=(HttpServletResponse)arg1;
HttpSession session=request.getSession();
String userid=(String)session.getAttribute("userid");
实验一Servlet开发
目的:
1、理解Servlet的工作原理。
2、掌握创建Servlet的方法。
3、熟悉Servlet的应用。
4、熟悉Filter的应用。
环境:
Windows、MyEclipse10、Tomcat7
内容:
1、使用Servlet创建一个用户登录模块,登录成功后在欢迎页面:显示用户信息。(要求给出登录页面、欢迎页面的关键代码,控制器Servlet的主要代码,及其配置文件)
session.setAttribute("password", password);
UserService cs=new UserService();
if(cs.login(userid, password)){
List<User> list=cs.viewAll();
request.getSession().setAttribute("userlist", list);
return "failed";
}
}
}
资源文件info_en_US.properties:
name=Username
pass=Password
submit=Submit
资源文件info_zh_CN.properties:
</validators>
3、要求给出相关文件的关键代码和资源文件、配置文件的主要内容
Action代码:
public class Login {
private String name;
private String pass;
public String getName() {
return name;
}
String sql = "insert into User(userid,password,realname,email,admin) values(?,?,?,?,?)";
try {
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, user.getUserid());
</filter>
<filter-mapping>
<filter-name>LoginFilter</filter-name>
<url-pattern>/successLogin.jsp</url-pattern>
</filter-mapping>
实验二基于MVC的简单Web应用开发
目的:
1、理解MVC模式。
pstmt.setString(2, user.getPassword());
pstmt.setString(3, user.getRealname());
pstmt.setString(4, user.getEmail());
pstmt.setString(5, user.getAdmin());
public void setName(String name) {
= name;
}
public String getPass() {
return pass;
}
public void setPass(String pass) {
this.pass = pass;
}
public String execute() {
int i = pstmt.executeUpdate();
if (i > 0)
return true;
} catch (SQLException e) {
e.printStackTrace();
} finally {
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
<field-validator type="regex">
<param name="expression"><![CDATA[(/w{4,25})]]></param>
<message>密码只能是字母和数组,且长度必须在6到25之间</message>
</field-validator>
</field>
boolean flag=cs.insert(user);
String msg=flag?"添加成功!":"添加失败!";
request.setAttribute("msg", msg);
RequestDispatcher dispatcher=request.getRequestDispatcher("successLogin.jsp");