这篇文章给大家介绍Struts2 中怎么防止刷新重复提交表单,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
本实例用两个页面(create.jsp,createResult.jsp),一个Action(CreateAction),一个验证文件(CreateAction-validation.xml),两个Struts2 国际化文件(message_en_US.properties,message_zh_CN.properties),还有一个struts.xml(必有的).创建用户成功之后,显示刚才创建的信息,不成功则显示错误提示,错误提示使用了Struts2 国际化来显示,输入合法性就用了用struts2的验证机制验证.
如下结构图,好好对照:
K:\ECLIPSWORKS\STRUTS2TEST │ .classpath │ .mymetadata │ .project │ ├─.myeclipse ├─src │ │ message_en_US.properties │ │ message_zh_CN.properties │ │ struts.xml │ │ │ └─cn │ └─struts2 │ CreateAction-validation.xml │ CreateAction.java │ └─WebRoot │ create.jsp │ createResult.jsp │ ├─META-INF │ MANIFEST.MF │ └─WEB-INF │ web.xml │ ├─classes │ │ message_en_US.properties │ │ message_zh_CN.properties │ │ struts.xml │ │ │ └─cn │ └─struts2 │ CreateAction-validation.xml │ CreateAction.class │ └─lib commons-logging-1.0.4.jar freemarker-2.3.8.jar jcommon-1.0.14.jar junit.jar ognl-2.6.11.jar struts2-core-2.0.11.2.jar struts2-jfreechart-plugin-2.0.11.2.jar xwork-2.0.5.jar
2.置全局Struts2 国际化文件(两个):
// message_en_US.properties ******************************************** create = Create Users Information username.invalid = User Name Not Null! password.invalid.null = Password Not Null! password.invalid.too.short.or.long = Password should be between 6 and 10 submit = submit //*********************************************************************** 中文国际化 // message_zh_CN.properties ******************************************** create = \u521b\u5efa\u7528\u6237\u4fe1\u606f username.invalid = \u7528\u6237\u540d\u4e0d\u80fd\u4e3a\u7a7a password.invalid.null = \u5bc6\u7801\u4e0d\u80fd\u4e3a\u7a7a password.invalid.too.short.or.long = \u5bc6\u7801\u957f\u5ea6\u5fc5\u987b\u57286\u523010\u4e4b\u95f4 submit =\u63d0\u4ea4
注意:如(create = \u521b\u5efa\u7528\u6237\u4fe1\u606f)等号右边的一串乱码是中文字符对就的ASCII码值,如果你需要转换,可以打开你的CMD(开始-->运行-->输入CMD即可),输入命令native2ascii,回车,将你的中文字符粘上,再回车就可以看到一串乱码了.再将其COPY到相应的位置即可.
文件的名字不能乱取,XXX_en_US.properties,XXX_zh_CN.properties,XXX后面的名字是固定的,而前面的XXX是根据你的struts.xml文件中的
< CONSTANT name="struts.custom.i18n.resources" value="XXX">中的XXX而取的.本例的XXX就是message.
5.JSP文件
(1) // createResult.jsp ************************************************************************
6.验证文件(注意名字要与你的Action名字一样,后面再跟固定的(-validation.xml)如(CreateAction-validation.xml)
CreateAction-validation.xml: // **************************************************************************** < ?xml version="1.0" encoding="UTF-8"?> http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
关于Struts2 中怎么防止刷新重复提交表单就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。