model2 的缺点:---- 针对Struts,model2 有了不足
1 一个请求过来 我就要在Web.xml 中增加一个配置。---累不累啊。
就是说我有多个请求就要增加多少个。----麻烦啊。
2 请求过来的时候是不是要带上一个参数啊,-- 累不累啊。
并且还要在动作类中作判断。--- 烦了。
-
model2 的优点 :---- 针对modle1 ,model2 呈现出了自己的有点。
javaBean + Servlet + jsp
针对Model1 ,它把实现后台处理的Java代码,写在了一个Servlet中,这样写的好 处是--显示层 -jsp
控制层 - Servlet
数据模型 - JavaBean
分开了。
-
-
现在使用 model2 实现一个验证登陆:
-
-
代码说明:
|一个Web.xml配置文件 两个包 三个页面
|-- org.zhang.bean--- javaBean
|-- org.zhang.servlet-- 动作类
|-- login.jsp-- 信息输入页面
|-- error.jsp -- 登录失败页面
|-- success.jsp -- 登陆成功页面
-
代码区:
web.xml 的配置:输入信息的页面直接到这上面找 后台处理程序-动作类。
<servlet>
<servlet-name>loginServlet</servlet-name>
<servlet-class>org.zhang.servlet.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>loginServlet</servlet-name>
<url-pattern>/LoginServlet</url-pattern>
</servlet-mapping>
-
---- org.zhang.bean
package org.zhang.bean;
public class LoginBean {
private String username;
private String password;
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
-
//验证
public boolean check(){
if("a".equals(this.username) && "a".equals(this.password)){
return true;
}else{
return false;
}
}
}
-
---- org.zhang.servlet
这把model1 中页面上的代码 拿到了这里来。
-
package org.zhang.servlet;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.zhang.bean.LoginBean;
public class LoginServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 这样写的目的是 多个请求对应这么一个Servlet
String method = request.getParameter("method");
System.out.println(method);
if("check".equals(method)){
check(request,response);
}
}
protected void check(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
LoginBean user = new LoginBean();
user.setUsername(username);
user.setPassword(password);
String path = "error.jsp";
if(user.check()){
path="success.jsp";
}
RequestDispatcher dispatch = request.getRequestDispatcher(path);
dispatch.forward(request,response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request,response);
}
}
-
-
----- login.jsp
注意与Model1 的区别:action="LoginServlet"与model1 不一样了
这是跳到Web.xml配置文件中了,而Model1
是直接跳到了 另一个页面上来进行后台处理。
model2中增加了<input type="hidden" name="method" value="check" />
目的就是:在请求中隐藏一个方法名,以便到了动作类中能找到对应的方法。
这是实现 多个请求对应 一个Servlet的关键。
-
-
<form action="LoginServlet" method="post" >
<input type="hidden" name="method" value="check" />
<table>
<tr>
<td>username</td>
<td><input type="text" name="username" /></td>
</tr>
<tr>
<td>password</td>
<td><input type="text" name="password" /></td>
</tr>
<tr>
<td><input type="submit" value="login" /></td>
<td><input type="reset" value="reset" /></td>
</tr>
</table>
</form>
-
-
-
-
-
-
-
-
-
-
-
没有合适的资源?快使用搜索试试~ 我知道了~
JSP——Model2 实现的验证登陆
共1个文件
txt:1个
需积分: 14 17 下载量 192 浏览量
2009-06-05
23:57:47
上传
评论
收藏 2KB RAR 举报
温馨提示
model2 的缺点:---- 针对Struts,model2 有了不足 1 一个请求过来 我就要在Web.xml 中增加一个配置。---累不累啊。 就是说我有多个请求就要增加多少个。----麻烦啊。 2 请求过来的时候是不是要带上一个参数啊,-- 累不累啊。 并且还要在动作类中作判断。--- 烦了。 - model2 的优点 :---- 针对modle1 ,model2 呈现出了自己的有点。 javaBean + Servlet + jsp 针对Model1 ,它把实现后台处理的Java代码,写在了一个Servlet中,这样写的好 处是--显示层 -jsp 控制层 - Servlet 数据模型 - JavaBean 分开了。
资源推荐
资源详情
资源评论
收起资源包目录
Jsp——Model2实现的登录验证.rar (1个子文件)
Jsp——Model2实现的登录验证.txt 4KB
共 1 条
- 1
资源评论
zhangshaobin2009
- 粉丝: 2
- 资源: 26
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功