
Struts2学习
文章平均质量分 85
一个吸血的青年
这个作者很懒,什么都没留下…
展开
-
Struts2学习(一):创建一个Struts2应用
Struts1.*都还没有怎么玩,Struts2的时代就已经来临了,在网上查了很多资料,结果显示Struts2和Struts1相关性不高,即使没有用过Struts1,也可以直接使用Struts2框架,实际上Struts2可以说是WebWork的翻版。于是俺就在网上down了一个Struts2中文文档,是一个网友自己做的chm文件,他的blog地址是http://www.blogjava.net/m原创 2007-07-25 13:42:00 · 2568 阅读 · 0 评论 -
struts2学习:配置篇之namespace
把namespace单独拉出来讲一方面是因为它实际上不是一个element,而只是一个attribute,前面已经说了,它是package的一个attribute;另外一方面是因为这个属性是我接触Struts2的时候第一个研究的,印象很深,鉴于这两个原因我决定单独说一下它。在struts1中是没有命名空间这个概念的,通过命名空间我们可以将所有的action配置划分为一个个逻辑单元,每个单元都有原创 2007-09-06 20:15:00 · 20758 阅读 · 10 评论 -
struts2学习:配置篇值请求处理元素
对请求进行处理的元素主要有interceptors、Action以及Result。下面分别对其进行讲述。 1.拦截器配置(interceptors)通过使用拦截器,我们可以在action中的方法执行之前先执行一些我们事先定义好了的方法,也可以在action中的方法执行之后立即执行一些我们事先定义好了的方法。在开发的过程中,拦截器将是一个强有力的工具。拦截器有很多很多的功翻译 2007-09-07 19:40:00 · 2412 阅读 · 1 评论 -
Struts2学习:在struts2中集成Spring
Spring的官方定义是:一个轻量级的IoC和Aop容器框架,它使用了一种叫做依赖注入的技术。所谓依赖注入,就是指将创建对象以及协议依赖对象之间合作的责任从对象自身中转移到“工厂”中去,这个“工厂”通常由IoC容器提供。Struts2与Spring的集成要用到Spring插件包,这个包是同Struts2一起发布的。Spring插件是通过覆盖(override)Struts2的ObjectFac原创 2007-09-09 16:43:00 · 2576 阅读 · 0 评论 -
Sturts2学习:理解bean元素的作用
在看struts2的bean元素配置时一直对这个元素的作用不是很清楚,尽管官方文档说它有两个作用:对象注入和值注入,当时说的都相当抽象。于是上网查了很多资料,并且查了下webwork in action这本书,发现bean元素是struts2里面才引入的,无意间又看了下官方文档中plug-in这节,这才对bean元素的作用有了一点领悟,下面谈下个人理解。在这之前,首先说下struts2中的依赖注入原创 2007-09-08 18:16:00 · 2898 阅读 · 0 评论 -
Struts2学习:配置篇之异常映射
异常映射是处理Action类异常的一个有力工具,通过异常映射我们可以提供更加友好的用户界面,而不是一堆错误代码信息。Action方法抛出的异常能够被自动捕捉然后经过映射指向一个预定义好了的Result。声明式的策略对于抛出运行时异常的框架尤其有用。和框架的很多其它部分一样,我们需要使用一个拦截器来启动异常映射功能。在struts-default.xml文件中已经为我们把这个拦截器准备好了,因此原创 2007-09-14 13:53:00 · 4207 阅读 · 1 评论 -
struts2学习:配置篇之通配符映射
应用程序越大,它里面action mapping的数量也越多,通过使用通配符,我们可以将一些相似的mapping绑在一起,用一个比较通用的mapping来表示,在前面关于action配置的那章里面也提到了这个通配符的使用,这里再系统的说一下。如下所示,有一个配置好了的action mapping: name="/edit*" class="org.apache.stru原创 2007-09-15 20:45:00 · 5632 阅读 · 1 评论 -
Struts2学习(九):集成Hibernate
在Struts2中集成了Spring之后再集成Hibernate就非常容易了,在这里我们需要用到Spring提供的ORM模块。通过这个模块Spring提供了对Hibernate、JDO、OJB和iBatis的集成。在与Hibernate集成时我们需要用到Spring的LocalSessionFactoryBean类,这个类可以看作是连接Spring与Hibern ate的桥梁。一.首先我们原创 2007-09-20 17:28:00 · 1601 阅读 · 0 评论 -
Struts2:类型转换之批量封装Set集合类型的属性
这个应该是属于Struts2类型转换的话题,本篇主要是讨论如何将页面上表单的值批量封装到一个Set集合中去,因为项目中用的是Hibernate,基本上所有的集合类型用的都是Set类型。至于如何批量封装数据到其它的集合类型如(List,Map)可以参看这篇文章,说的很详细了:http://hi.baidu.com/wava/blog/item/01d58926c42dac158b82a134.htm原创 2007-09-25 13:09:00 · 4984 阅读 · 5 评论 -
Struts2学习:类型转换篇
框架中常规的类型转换对我们而言是透明的,我们无需关心,一般来说我们所要做的是确保HTML中input的命名能够在OGNL表达式中使用。在HTML中,并没有数据类型的概念,任何数据都被当做字符串或者字符串数组来传递。Struts2为我们提供了一些内建的类型转换,譬如说基本类型之间的转换、”1984-08-27”格式的字符串能够被正确的转换为Date类型等等。但是这些内建的类型转换有时并不能满足我们的翻译 2007-09-25 10:49:00 · 4370 阅读 · 0 评论 -
Struts2学习:配置篇之静态内容
在struts2框架中有一些它所需要的公共的静态内容,比如说js文件和一些css文件。当框架需要这些静态内容的时候,FilterDidpatcher会自动提供给我们。那么FilterDidpatcher是如何知道我们在请求静态内容的呢?任何请求只要以“/struts/”开头,那么FilterDidpatcher就会认为它是在请求静态内容。注意这里所说的请求是指从应用上下文后面开始的部分,比如说请求翻译 2007-09-04 09:22:00 · 3275 阅读 · 1 评论 -
Struts2学习:配置篇之配置文件
从一个struts开发者的角度来看,框架唯一必须的配置文件是web.xml,如上篇所说的0配置,它就只需要web.xml文件。通过web.xml文件,我们可以完全控制struts来配置它自身以及我们的应用程序。默认情况下,struts会装载一系列的内部配置文件来配置它自己,然后装载另外一系列的文件来配置应用程序,尽管只要一个web.xml文件就可以了,但是我们在开发一个完整的struts应用时通常翻译 2007-09-03 19:30:00 · 3563 阅读 · 0 评论 -
Struts2学习:配置篇之管理层配置元素(一)
在web应用程序中我们都是使用部署描述符来初始化一些资源如servlet、过滤器、监听器等等,这个部署描述符就是那广为人知的web.xml了。同样的,框架也使用一个配置文件来初始化它自己的资源,这些资源主要包括:1.拦截器(Interceptor):对请求进行预处理和后加工;2.Action Classes:负责调用商业逻辑和数据访问层;3.Results:负责返回视图(view),如翻译 2007-09-05 15:06:00 · 4914 阅读 · 1 评论 -
Struts2学习(二):第一个Action
前面我们已经把Struts2的运行环境搭建起来了,下面我们开始创建我们的第一个Action,还是按照Max的教程来,我新创建了如下几个文件:sayHello.jsp:page language="java" contentType="text/html; charset=utf-8"%>taglib prefix="s" uri="/struts-tags" %>DOCTYPE h原创 2007-07-25 20:14:00 · 2204 阅读 · 0 评论 -
Struts2学习(四):Action执行的时候发生了什么
通过前面的学习,对Struts2的工作流程大致有了一个了解,如下图所示:上图中的“分流”是指根据我们所请求的url把request交给某个指定的action来处理。那么在这个FilterDispatcher中还有一些什么操作呢?在Struts1中我们经常要把一个ActionForm和一个Action相关联,ActionForm中封装了表单的所有值,并且这些都是在ActionServlet中原创 2007-07-26 21:19:00 · 2549 阅读 · 4 评论 -
Struts2学习(三):namespace属性的使用
struts.xml文件中的package元素有一个namespace属性,这个属性有什么用呢,加了这个属性之后我们的url又该怎么写了,还是亲自实践一把吧,^_^。我现在把struts.xml文件修改如下:DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0原创 2007-07-26 11:05:00 · 3197 阅读 · 4 评论 -
Struts学习(五):对POJO对象访问的支持
在Struts2.0里面有一个非常牛*的功能就是支持更高级的POJO访问,这句话是什么意思呢?下面来通过例子实际操作一把就能体会到这个功能的强大与好使了。要实现的功能:如果用户输入用户名xiaozu,密码111111,则显示welcome,xiaozhu!否则提示用户名或密码错误。下面是我们所需的文件:登陆页面login.jsp:page language="java" conte原创 2007-07-30 14:06:00 · 1737 阅读 · 1 评论 -
Struts2学习(六):访问隐藏的request和session
在Struts1.*中,要想访问request、response以及session等Servlet对象是很方便的,因为它们一直是作为形参在各个方法之间进行传递的,而在Struts2中我们就很难看到它们的芳踪了,因为我们获得表单中的值都是通过预先设置好了的get方法来得到的,那么如果有些参数我们必须通过request.getParametre或者session.getAttribute来得到,原创 2007-08-01 16:12:00 · 2637 阅读 · 0 评论 -
Struts学习(七):说说相对路径
从刚开始接触Tomcat开始,就被繁杂的相对路径给弄晕了,尽管最后每次都能正确的匹配上,但是总觉得不是很顺畅,一直试图找出一条匹配的规则出来,但是每每总结出一条来的时候,总是又被新的“事实”给颠覆,让人不胜烦恼,因此决定有一点写一点。通常相对路径的写法有两种,一种就是以“/”开头,一种就是不以“/”开头,这两种写法有什么区别呢,下面举例阐述一下。现在的Web环境是一个Struts2的原创 2007-08-06 14:45:00 · 3620 阅读 · 8 评论 -
Struts2学习:Overview之Nutshell
写在前面的话:对Struts2的理解一直处于似懂非懂的状态让我很是苦闷,在使用的过程中Struts2的强大已经让我叹为观止,不知道这个用词是否准确。为了更好的理解Struts2,决定拜读下官方的guide,顺便做下翻译,希望自己能够坚持下来,阅读的过程中肯定有很多地方理解不了,但是还是打算直接译出来,也许一段时间以后再毒一遍的话就能够理解的更深刻了。1.坚果壳中的apache翻译 2007-09-01 19:07:00 · 1672 阅读 · 0 评论 -
Struts2学习:配置篇之“0配置”和Annotation
Struts2官方文档在讲述配置的时候,一开始就来了个“0配置”(Zero Configuration),大意就是说在struts应用中不使用任何xml文件或者properties文件,元数据(Metadate)都用通过约定(convention)和注解(annotation)来表达的,而且这是struts2的一个新特性,目前仍在测试中,相关文档也很粗略。接下来的一部分讲述的就是Annotatio翻译 2007-09-02 18:03:00 · 6220 阅读 · 4 评论 -
Struts2学习:Overview之debug
在看完NutShell这部分之后,把overview的剩下几部分溜了一遍,主要讲的主题有:AJAX、依赖注入(dependency injection)、切面(profiling)、debug,除了profiling那节讲的比较晕之外,其它几节还能勉强凑合着理解下,不知道profiling是不是就是Spring里面所讲的AOP,因为前面也提到了Spirng中的IoC(即依赖注入)。这几节中我唯一觉原创 2007-09-02 16:55:00 · 2314 阅读 · 0 评论 -
Struts2学习:拦截器篇(一)
Struts2中自带的默认拦截器栈已经能够满足大多数应用的需要了,大多数的应用都不必再增加自己的拦截器或者改变已有的拦截器栈。在Struts2中,许多action通常都有一些共同的需要关心的问题,比如有一些action它们都需要对页面上的输入进行验证,有一些action需要对上传的文件进行一下预处理,还有一些action可能需要防止重复提交(double submit),还有很多action需要在原创 2007-12-11 11:22:00 · 1952 阅读 · 0 评论