jsp---->JSP + Servlet + JavaBean开发模式
2012-08-17 09:55
603 查看
[align=center]JSP + Servlet + JavaBean[/align]
分析:
JSP 优点:开发前台界面方便,做UI 开发容易
Servlet 优点:是JAVA 程序,安全性高,性能也高
Servlet 缺点:显示不方便
Servlet 也可以像JSP 一样接收用户的请求参数
JavaBean 优点:可重复调用,需要接收用户的请求参数,进行相应的处理
问题?
JSP 跳转到Servlet 可以吗?可以,通过表单提交或超链接
由 Servlet 跳转到JSP 可以吗?可以,可以通过response 对象
response.sendRedirect():客户端跳转,请求不保存
现在从 Servlet 中要传递的值只使用一次,如果把此值存放在session 范围之中,则此内容只要用户一直与服务器保持连接,则此块内存空间要一直被占用,那么性能会怎么样?性能会很低。
解决方法:RequestDispatcher 接口,是用于进行服务器端跳转的接口
此接口要求使用 HttpServletRequest 进行实例化
RequestDispatcher rd = null ;
rd = req.getRequestDispatcher("mvcdemo.jsp") ;
rd.forward(req,resp) ;
MVCServlet.java
Servlet 跳转到JSP 的服务器端跳转指令是:req.getRequestDispatcher("mvcdemo.jsp").forward(req,resp) ;
通过以上代码可以发现:
使用 MVC 开发程序,代码稍微复杂
JSP 与JavaBean 之间没有什么特别明显的直接关系
而 Servlet 根据JavaBean 返回的内容进行跳转
Servlet 中最好只有以下几种代码:
· 接收参数
· 调用 JavaBean
· 根据结果javaBean的结果进行跳转
· 有一些简单的逻辑判断
分析:
JSP 优点:开发前台界面方便,做UI 开发容易
Servlet 优点:是JAVA 程序,安全性高,性能也高
Servlet 缺点:显示不方便
Servlet 也可以像JSP 一样接收用户的请求参数
JavaBean 优点:可重复调用,需要接收用户的请求参数,进行相应的处理
问题?
JSP 跳转到Servlet 可以吗?可以,通过表单提交或超链接
由 Servlet 跳转到JSP 可以吗?可以,可以通过response 对象
response.sendRedirect():客户端跳转,请求不保存
现在从 Servlet 中要传递的值只使用一次,如果把此值存放在session 范围之中,则此内容只要用户一直与服务器保持连接,则此块内存空间要一直被占用,那么性能会怎么样?性能会很低。
解决方法:RequestDispatcher 接口,是用于进行服务器端跳转的接口
此接口要求使用 HttpServletRequest 进行实例化
RequestDispatcher rd = null ;
rd = req.getRequestDispatcher("mvcdemo.jsp") ;
rd.forward(req,resp) ;
MVCServlet.java
package cn.mldn.lxh.servlet ; import java.io.* ; import javax.servlet.* ; import javax.servlet.http.* ; import cn.mldn.lxh.bean.MVCCheck ; public class MVCServlet extends HttpServlet { public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException { this.doPost(req,resp) ; } public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException,ServletException { String name = req.getParameter("uname") ; //表单提交的参数 MVCCheck mc = new MVCCheck() ; //调用javabean进行处理, // 将请求内容设置到mc对象之中 mc.setName(name) ; String path = null ; if(mc.isValidate()) { // 保存名字在request范围之中 req.setAttribute("name",mc.getName()) ; path = "mvc_success.jsp" ; } else { path = "mvc_failure.jsp" ; } // 根据javabean的结果进行跳转 req.getRequestDispatcher(path).forward(req,resp) ; } }; /* <servlet> < servlet-name>mvc</servlet-name> < servlet-class>cn.servlet.MVCServlet</servlet-class> </servlet> <servlet-mapping> < servlet-name>mvc</servlet-name> < url-pattern>/mvcdemo.mldn</url-pattern> </servlet-mapping> */MVCCheck.java
package cn.bean ; public class MVCCheck { private String name ; public void setName(String name) { this.name = name ; } public String getName() { return this.name ; } // 验证 public boolean isValidate() { if(this.name==null||"".equals(this.name)) { return false ; } else { return true ; } } };mvc_success.jsp
<h2>欢迎:<%=request.getAttribute("name")%>光临!!!</h2>
Servlet 跳转到JSP 的服务器端跳转指令是:req.getRequestDispatcher("mvcdemo.jsp").forward(req,resp) ;
通过以上代码可以发现:
使用 MVC 开发程序,代码稍微复杂
JSP 与JavaBean 之间没有什么特别明显的直接关系
而 Servlet 根据JavaBean 返回的内容进行跳转
Servlet 中最好只有以下几种代码:
· 接收参数
· 调用 JavaBean
· 根据结果javaBean的结果进行跳转
· 有一些简单的逻辑判断
相关文章推荐
- javaWeb入门<1>Servlet+Jsp+JavaBean实现MVC开发模式登陆注册实例详解
- jsp---->JSP + Servlet + JavaBean开发模式
- jsp---->JSP + Servlet + JavaBean开发模式
- Servlet+JSP+JavaBean开发模式
- javaEE JSP+Servlet+JavaBean 5种开发模式
- JavaWeb学习总结(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册
- 【转载】 javaweb学习总结(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册 - 孤傲苍狼 - 博 http://www.cnblogs.com/xdp-gacl/
- model1(jsp+javaBean)和model2(jsp+servlet+javaBean+MVC)开发模式优缺点
- 基于Servlet+JSP+JavaBean开发模式的用户登录注册
- MVC框架详解--Servlet+JSP+JavaBean模式(MVC)开发复杂的web应用
- javaweb学习总结(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册
- JavaWeb开发模式二:JSP+Servlet+JavaBean
- Servlet+JSP+JavaBean开发模式(MVC)介绍
- 对基于Servlet+JSP+JavaBean开发模式的用户登录注册的升级
- 深入分析JavaWeb 19 -- 基于Servlet+JSP+JavaBean开发模式的用户登录注册
- 基于Servlet+JSP+JavaBean开发模式的用户登录注册
- javaweb学习总结(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册
- 对基于Servlet+JSP+JavaBean开发模式的用户登录注册的升级
- javaweb学习总结(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册
- 经典Servlet+JSP+JavaBean开发模式(MVC)原理与创建工程