码迷,mamicode.com
首页 > 编程语言 > 详细

struts采用JavaServlet/JSP技术,实现了基于Java EEWeb应用的MVC设计模式的应用框架

时间:2015-02-11 01:45:40      阅读:3166      评论:0      收藏:0      [点我收藏+]

标签:

今天我用Ecipse搭建Struts框架,并且使用Struts框架编写一个最简单的例子,相信读者能够很容易的明白。

Struts是当今Java比较流行的三大框架之一,三大框架是Struts,spring,hibernate。Struts框架也包括Struts1和Struts2,由于两个版本相差比较大,Struts1已经被淘汰,现在企业基本上全部都用Struts2,所以我当然也是用Struts2。

 

好,下面我详细的说明搭建过程

 

 

首先启动Eclipse J2EE版本(官方最近发布的版本),创建一个web项目Struts2
技术分享

 

 

引入我们下载的Struts2的目录下的Jar包,

具体目录如下

技术分享

 

 

将这些Jar包导入到项目的lib目录下
技术分享

 

 

然后打开上层目录的web.xml配置文件
技术分享

 

 

将filter和filter-mapping两个标签对的内容copy到Struts2项目的web.xml
技术分享

 

 

然后,想下图(据图根路径看你Struts的位置)指定路径的struts.xml考到项目的src目录下
技术分享

 

 

 

如图
技术分享

 

 

 

打开strut.xml,将<struts>标签对中的全部内容删除或者注释,建议注释

然后从注释的部分copy一下内容到struts中

内容

<constant name="struts.devMode" value="false" /> 
 <package name="default" namespace="/" extends="struts-default">
        <default-action-ref name="index" />
        <action name="index">
            <result type="redirectAction">
                <param name="actionName">HelloWorld</param>
                <param name="namespace">/example</param>
            </result>
        </action>
    </package>

 

 

然后将第一句<constant name="struts.devMode" value="false" /> 
改为<constant name="struts.devMode" value="true" />

这句话主要是说,当我们项目的action的改变时,可以立刻响应改变,不需要重启服务器

 

结果为
技术分享

 

到此Strut2的配置已经完成,可以写例子了

 

 

 

 

 

我这里就写一个最简单的例子在网页上 打印 hello Struts2!

首先在项目的webContent目录下创建一个JSP文件index.jsp

并更改代码如下
技术分享

 

 

 

然后将项目中的struts.xml的代码更改为
技术分享

这段代码我等下再给大家介绍

 

 

ok,启动服务器,打开浏览器,输入网址http://localhost/Struts2/hello

结果为
技术分享

 

 

实验成功!!!

 

 

 

说明:

大家看到了,现在我们访问的地址是http://localhost/Struts2/hello,并不是直接访问http://localhost/Struts2/index.jsp

我把流程画一下
技术分享

 

当客户端访问时,服务器通过过滤器filter,然后根据action得到客户端访问的jsp页面,然后将jsp页面反馈给客户端。

无形当中把jsp和客户端分开,这样做有什么好处呢?直接访问jsp不更加简单吗,干么弄得这么复杂?

 

 

这根设计模式是一样的,复杂的东西背后带来的好处就是可拓展

大家不妨想想,如果是直接访问jsp,如果我们需要更改jsp中的内容(这是经常需要更改的部分),我个人认为除了暂时停止服务以外,然后更改代码,否则没有什么办法!但是这是很要命的!

 

但是我们如果引入的action这个中间层,因为客户端并没有和jsp有什么直接联系,所以只要action改变,即可立刻更换jsp,或者action不变,直接更换jsp文件,即可,不需要付出任何代价。

 

这就是struts的核心思想,与MVC思想非常类似。

 

好,我的发表到此结束。相信读者能够很轻易的体会这个思想。

struts采用JavaServlet/JSP技术,实现了基于Java EEWeb应用的MVC设计模式的应用框架

标签:

原文地址:http://www.cnblogs.com/x113/p/4285204.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!