Struts学习笔记 第36页 共39页
时国际化资源文件会自动加载。我们在相应的文件中可以直接访问(利用ActionSupport类中的getText()方法。)了。 我们现在只需要将登录页面代码修改就可以了。
注意:要求国际化资源文件需要与相应的Action在同一包中(见上第三个图),这样Struts2就可以保证当访问这个LoginAction
国际化资源文件以任何名称开头都可以,只是需要在Struts2.xml配置文件中告诉Struts2资源文件是以什么开头的。
Struts学习笔记 第37页 共39页
例如:现在以项目名为前缀:bbs2009
bbs2009_en_US.properties 及 bbs2009_en_US.properties
告诉Struts2资源文件是以什么开头的
场景:如果一个登录系统,用户登录后页面提示“欢迎您,xxxx”,如果是英文:”Welcome,xxx” 正常应该如下处理:先取职欢迎信息 + 再显示登录的用户名。
在某些网站中,会发现页面中有国家语言的选择,如:中文、英语、日语等语言供您选择。 Struts2也可以实现这种动态语言切换的功能,方法非常的简单。 方法:只需要传入一个参数(参数名必需为request_locale),参数值为”语言_国家”(也就是资源文件的后缀,如zh_CN、en_US)就可以了。例:如果当前访问的页面为中文并且URL为 http://localhost:8080/struts2_3200_bbs2009_08/admin/Login-input 如果需要切换成英文,则只需要传入一个参数request_locale=en_US就可以了。URL如下 http://localhost:8080/struts2_3200_bbs2009_08/admin/Login-input?request_locale=en_US 这样当前进程的浏览器就可以访问这个网站的所有页面为英文,至到这个进程结束,因为Struts2向session中写入locale值 WW_TRANS_I18N_LOCALE=en_US Struts学习笔记 第38页 共39页
09 自定义拦截器
一般99.9%用不上
10 类型转换
public class MyPointConverter extends DefaultTypeConverter{ }
public class MyPointConverter extends StrutsTypeConverter{
@Override
public String convertToString(Map context, Object o) { }
// TODO Auto-generated method stub return o.toString(); @Override
public Object convertFromString(Map context, String[] values, Class toClass) { }
Point p = new Point();
String[] strs = (String[])values; String[] xy = strs[0].split(\); p.x = Integer.parseInt(xy[0]); p.y = Integer.parseInt(xy[1]); return p; @Override
public Object convertValue(Object value, Class toType) { }
if(toType == Point.class) { }
if(toType == String.class) { }
return super.convertValue(value, toType);
return value.toString(); Point p = new Point();
String[] strs = (String[])value; String[] xy = strs[0].split(\); p.x = Integer.parseInt(xy[0]); p.y = Integer.parseInt(xy[1]); return p;
Struts学习笔记 第39页 共39页
}
a) 三种注册方式: i. ii. iii.
局部:XXXAction-conversion.properties 1. p(属性名称) = converter 全局:xwork-conversion.properties 1. com.xxx.XXX(类名)= converter Annotation
b) 如果遇到非常麻烦的映射转换 i. request.setAttribute(); ii.
session
Struts2总结
1. Action
a) namespace(掌握) b) path(掌握) c) DMI(掌握) d) wildcard(掌握)
e) 接收参数(掌握前两种)
f) 访问request等(掌握Map IOC方式)
g) 简单数据验证(掌握addFieldError和 a) 结果类型(掌握四种,重点两种) b) 全局结果(掌握) c) 动态结果(了解) OGNL表达式(精通) a) # % $ Struts标签 a) 掌握常用的 声明式异常处理(了解) I18N(了解) CRUD的过程(最重要是设计与规划)(精通) Interceptor的原理(掌握) 类型转换(掌握默认,了解自定义) 2. 3. 4. 5. 6. 7. 8. 9. 百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库Struts2开发手册- 马士兵 - 图文(8)在线全文阅读。
相关推荐: