【struts2】继承ActionSupport类
【struts2】继承ActionSupport类——基础篇 *萌新必备
1.在Struts2中,Action可以不实现任何特殊的接口或者继承特殊的类,因此,在实际开发中,会更多的使用继承ActionSupport类来实现Action的方式.
2.ActionSupport类本身实现了Action接口,所以继承ActionSupport类就相当于实现了Action接口,
除此之外,ActionSupport类还有其它几个接口,这些接口和Struts2的一些其他特性相结合,可以实现基本的数据验证功能和国际化,可供参考.
1,下面开始进行基本的数据验证
【要实现数据验证的功能,只需要在Action类中覆盖实现validate方法即可】
在validate方法中,可以对用户请求中传递过来的数据进行验证,同一个数据可以进行多方面的验证
2.接下来需要在struts.xml中的Action配置里面,添加一个名称为input的result配置,也就是说,如果validate方法中,有数据没有通过验证,那么会自动跳转回到该action中名称为input的result所配置的页面.
3.这时可以添加一个JSP页面用来反映数据输入对错,当输入信息不满足条件的时候,将错误信息显示在前台页面上
4.在JSP页面中利用<s:fielderror/>标签在相应的字段处输出错误信息.
【<s:fielderror/>它会输出全部的错误信息内容,而如果想选择性地输出指定错误信息,可以使用如下代码解决.】
在上面的示例中,你会发现在validate方法中,添加验证错误消息的时候,是采用的硬编码方式
【 硬解码方式缺点: 1,不容易修改,比如要改变消息的内容,还得重新修改和编译类;2,不利于国际化,如果要把中文的信息变换成英文的呢,同样要重新修改和编译类】
【解决方式】
可以通过访问本地信息的方式,把这些错误消息放置到Action类外部的配置文件中,在Action类内部只需要按照这些消息的key值去获取消息即可.
1.先来建立消息的配置文件
*中文转换成unicode编码推荐工具:native2ascii
2.将Action中validate方法里原来是写的中文字符串修改成从配置文件中获取信息
至此,struts2中继承ActionSupport类讲解完毕.
欢迎各位朋友提出宝贵意见!
演示工具:Notepad++