扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
4、MVC的进一步发展----Struts
有些人觉得model2仍不够好,于是Craig R. McClanahan 2000年5月 提交了一个WEB framework给Java Community.这就是后来的Struts。
2001年7月,Struts1.0,正式发布。该项目也成为了Apache Jakarta的子项目之一 。Struts 本质上就是在Model2的基础上实现的一个MVC架构。它只有一个中心控制器,他采用XML定制转向的URL。采用Action来处理逻辑。
6、MVC的应用实例:
一个MVC模式的数据传递的过程,从JSP页面输入一个字符,然后提交给Servlet,由Servlet调用JavaBean处理后,然后再把页面定向到另一个JSP页面,然后用session和request两种方式实现显示。
由JSP所实现的录入页为Login.htm,显示页分别为RequestTest.jsp和SessionTest.jsp;
Servlet为TestServlet.class,JavaBean为TestBean.class。
(1)Login.htm 代码如下
<body bgcolor="#FFFFFF">
<FORM METHOD="post" ACTION="/TestServlet">
<INPUT TYPE="text" NAME="testStr">
<INPUT TYPE="submit">
</FORM>
</body>
(2)TestServlet.java Sevlet的代码
package mvcExamples;
import java.io.IOException;
import javax.servlet.*;
import javax.servlet.http.*;
public class TestServlet extends HttpServlet
{
static final private String CONTENT_TYPE = "text/html; charset=GBK";
public void init(ServletConfig config) throws ServletException
{
super.init(config);
}
public void destroy()
{
}
protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException
{
response.setContentType(CONTENT_TYPE);
}
protected void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException, IOException
{
response.setContentType(CONTENT_TYPE);
TestBean testbean = new TestBean (); //对JavaBean进行实例化
HttpSession session = request.getSession(); //获得session对象
String testStr = request.getParameter("testStr"); //获得从录入页为Login.htm所传递来的参数
testbean.setTestStr (testStr); //向JavaBean传递参数
String targetURL = "/RequestTest.jsp"; //定义目标页面URL
session.setAttribute("sessionbean",testbean); //向session中存储JavaBean以便在另一页中获得它
request.setAttribute("requestbean",testbean); //向request中存储JavaBean以便在另一页中获得它
this.dispatch(targetURL, request, response); //转移到目标页面
}
public void dispatch(String targetURI,HttpServletRequest request,HttpServletResponse response) throws java.io.IOException,
ServletException
{
RequestDispatcher dispatch = getServletContext().getRequestDispatcher(targetURI);
dispatch.forward(request, response);
}
}
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者