科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道J2EE Web开发基础-网站的设计与发布 (7)

J2EE Web开发基础-网站的设计与发布 (7)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

J2EE Web开发基础-网站的设计与发布 (7)

作者:kingshare 来源:文摘 2007年11月18日

关键字: 发布 设计 J2EE

  • 评论
  • 分享微博
  • 分享邮件

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领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章