`
jieAmei
  • 浏览: 29343 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

struts2的简要总结

阅读更多

*一.*在struts2中Action类的作用?

  1.定义了5个字符串常量

public static final String SUCCESS = "success";
public static final String NONE = "none"; 
public static final String ERROR = "error"; 
public static final String INPUT = "input"; 
public static final String LOGIN = "login";
  2.定义处理用户请求的execute抽象方法

二.ActionSupport类的作用?

   ActionSupport类是struts2中的一个工具类,它已经实现了Action接口。除此之外,它还

实现了Validateable接口,提供了数据校验,国际化功能。通过继承该ActionSupport类,

可以简化Struts 2的Action开发。

*三.*打印验证的方法有两种:

A.<s:fielderror />:这是强制打印

B.如果用struts2的标签提交它会自动打印。

*四.*自定义类型转换器步骤:

<1>在src目录下建立一个xwork-conversin.properties文件

里面主要包含:包名.属性名=包名.类型转换器的类名

<2>写一个属性类和一个类型转换器的类

<3>在页面定义一个文本属性,里面输入符合类型转换器类厘米的格式即可。

*五.*struts2国际化步骤:

第一步、在src文件夹中加入struts.properties文件,内容如下:

struts.custom.i18n.resources=globalMessages

第二步、在src文件夹中加入globalMessages_en_US.properties文件,

内容如下:

HelloWorld=Hello World!

第三步、在src文件夹中加入globalMessages_zh_CN.properties文件(

注意转码),内容如下:

user=\u7528\u6237\u540d

第四步,在jsp页面上引用。

第五步,运行。

*六.*国际化控件制作:

第一步.写一个类,里面用集合保存java.util.Locale中的常量:

内容如下:

public class Language {

  Map<String,Locale>  map=new HashMap<String, Locale>();

  public Map<String,Locale> getMap(){

  map.put("英文", Locale.US);

  map.put("中文", Locale.CHINA);

  return map;

  }

{color:#000000}}第二步.在struts.xml文件中配置一个完整的Action。

第三步.在jsp页面上引用集合类中的集合

如:

<s:select name="request_locale" label="请选择语言" labelposition="top" value="#session['WW_TRANS_I18N_LOCALE']"

    list="#Language.map" listKey="value"

listValue="key" onchange="Language();" />

注:select的name是规定的(request_locale),这是标准不可以改变。

#session['WW_TRANS_I18N_LOCALE']是取到session的值,也就是你选中的值。

*七.*struts2常量配置的地方(struts2搜索顺序如下:):

  1.struts.xml

  2.struts.properties

  3.web.xml配置如:

*八.*什么是拦截器?

拦截器,在AOP(Aspect-Oriented Programming)中用于在某个方法或字段被访问之前,

进行拦截然后在之前或之后加入某些操作。拦截是AOP的一种实现策略。

*九.*自定义拦截器:

第一步:写一个类继承AbstractInterceptor。覆盖intercept()方法

第二步:在intercept里面写一些要执行的内容,在调用invoke();

内容如下:String result=actionInvocation.invoke();

第三步:在struts.xml中配置

如:

<interceptors>

<interceptor name="interceptors" class="包名.类名"/>

<interceptor-stack name="custom-stack">

<interceptor-ref name="interceptors" />

</interceptor-stack>

</interceptors>

第四步:在struts.xml中的Action中引用

如:<interceptor-ref name="custom-stack"></interceptor-ref>

第五步:运行;

*十.*指定方法拦截器:

第一步:写一个类继承MethodFilterInterceptor。覆盖doIntercept()方法

第二步:在doIntercept()里面写一些要执行的内容,在调用invoke();

内容如下:String result=actionInvocation.invoke();

第三步:在struts.xml中配置

<interceptors>

  <interceptor name="interceptorsFilter" class="com.interceptors.InterceptorsFilter"/>

   <interceptor-stack name="custom-stack">

   <interceptor-ref name="interceptorsFilter">

      <param name="includeMethods">拦截的方法,多个方法用逗号分开</param>

      <param name="excludeMethods">拦截出这个方法以为的方法</param>

</interceptor-ref>

</interceptor-stack>

</interceptors>

第四步:在struts.xml中的Action中引用

如:<interceptor-ref name="custom-stack"></interceptor-ref>

第五步:运行;

十一.Struts 2支持以下几种表达式语言:

1.      OGNL(Object-Graph Navigation Language),可以方便地操作对象属性的开源表达式语言;

2.      JSTL(JSP Standard Tag Library),JSP 2.0集成的标准的表达式语言;

3.      Groovy,基于Java平台的动态语言,它具有时下比较流行的动态语言(如Python、Ruby和Smarttalk等)的一些起特性;

4.      Velocity,严格来说不是表达式语言,它是一种基于Java的模板匹配引擎,具说其性能要比JSP好。



Struts 2默认的表达式语言是OGNL,原因是它相对其它表达式语言具有下面几大优势:

1.      支持对象方法调用,如xxx.doSomeSpecial();

2.      支持类静态的方法调用和值访问,表达式的格式为@[类全名(包括包路径)]@[方法名 |  值名],例如:@java.lang.String@format('foo %s', 'bar')或@tutorial.MyConstant@APP_NAME;

3.      支持赋值操作和表达式串联,如price=100, discount=0.8, calculatePrice(),这个表达式会返回80;

4.      访问OGNL上下文(OGNL context)和ActionContext;

5.      操作集合对象。
分享到:
评论

相关推荐

    struts2 总结工程大全

    struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全...

    struts2学习总结

    struts2学习总结

    struts2总结项目总结

    一些struts2的笔记、项目总结,挺实用

    Struts2输入校验总结

    Struts2输入校验总结 Struts2输入校验

    Struts2页面取值总结

    Struts2页面取值总结

    struts2简要的jar包

    struts2简要的jar包,包不多就5-6个。学习struts2足够用了

    struts2学习笔记总结

    struts2学习笔记总结

    struts2总结第一章

    Struts2第一章 一、 介绍: a) Struts2是以web work优秀的设计思想为核心,吸收了struts1的部分优点,建立了一个基于webwork和struts1的MVC框架。 二、 优点: a) 结构清晰,使开发者只关注业务逻辑实现即可。 b) ...

    struts1和struts2的区别

    struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别...

    java struts2开发总结

    java struts2开发总结,word文档

    struts2简要教程

    能使你快速掌握struts2,把struts2应用的你的项目中。

    struts知识点总结

    struts知识点总结struts知识点总结,觉得有需要的就拿去看看吧

    Struts2知识点总结

    Struts2知识点总结,包括文件上传,文件下载,防止表单重复提交,Struts2标签,Struts2拦截器

    struts2总结大全

    servlet模板,JavaDoc视图的使用,局部类型转换器步骤 ,全局类型转换器 ---对所有的Action类有效,模型驱动,数据校验,struts2校验介绍,校验分类,包的总结,开发的核心类库

    Struts2初步使用总结

    Struts2初步使用总结 初步介绍Struts2和用法

    我的struts2的总结

    希望大家都在一起学习我是一个很唉学习的人希望你们也一样 不要太过劳累

Global site tag (gtag.js) - Google Analytics