Struts总结

[size=large]struts总结
上两篇博客中分别介绍了struts框架引入的缘由以及struts如何实现mvc。其实struts实现mvc原理理解了,那么在表示层剩下的主要是actionForm,action以及配置。
这篇博客是主要是总结struts的应用。
[img]0_132939579652Z2.gif
[/img]

1.struts标签库用于展示视图部分。像jstl一样,需要使用标签时,必须把头文件引进来。
2.struts对国际化的支持。
那什么是国际化?
目的是为了适应不同区域的要求。开发这样适应不同区域程序称之为国际化。
那struts是如何实现国际化呢?具体的做法如下:
提供国际化资源文件。文件是由base基本信息和local组成。
配置信息中进行配置。<message-resourcesparameter="resources.MessageResources" />其中的parameter视资源文件位置而定,若是在具体包下,则配置时需加上具体包名。
界面进行读取。使用struts提供的标签进行读取。<bean:messagekey="login.form.field.username"/>:<input type="text"name="username">
对于,输入的用户名重复这种提示信息或者密码不正确这种错误信息,struts又是如何做到呢?
首先要创建国际化消息文本。
//返回的list
ActionMessagesmessages = new ActionMessages();
//返回的一条文本信息
ActionMessageerror = new ActionMessage(key);
传递国际化消息文本。
this.saveErrors(request,messages);
显示国际话消息文本。
使用struts标签来显示信息。可以使用<html:message>或者<html:errors>。其中<html:message>可以显示任何一条信息,而<html:errors>只可显示错误信息。
3.动态验证框架。
动态框架的引入历程:
以前,把验证代码javascript都写在jsp文件中,若是修改验证信息,则需要修改大量的jsp文件。
比如:每个jsp页面都有验证文本框的输入字符的长度信息,若是在每个jsp文件都写js代码,则会出现大量的重复代码。重复代码是糟糕代码的表现。为了消除重复的代码,首先想到的是提取,对了,可以抽取到一个js文件中,到时候其他jsp文件直接引用即可。在drp视频中,我们是这样做的。这是一个办法,但是我们修改验证信息,比如验证长度从5个字符变成9个字符,那我们修改js文件后必须重新编译。为了进一步改进这种情况,struts替我们封装好了,使用struts框架,我们把验证信息放到验证配置文件中,修改验证信息直接修改xml文件即可。注意:修改xml是不用重新编译的。这是使用配置文件的最大特点。
那struts是如何实现动态验证的呢?
配置struts-config文件,
<plug-inclassName="org.apache.struts.validator.ValidatorPlugIn">
<set-property
property="pathnames"
value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>
</plug-in>
提供配置文件validation.xml和validator-rules.xml
配置验证配置文件-validation.xml
4.主要的组件介绍:
ActionServlet:中央控制类,是Struts的核心控制类。
ActionForm:与表单上数据一致,封装了表单上的数据。
ActionForward:封装了返回信息的对象。
ActionMapping:根据path,封装了path对应的配置信息的对象。
DispatchAction:也是继承了Action,主要的作用是根据名称分发Action,其工作流程是动态代理的代表。
5.配置信息介绍:
配置文件中的标签都是有顺序的。常用的配置标签有:<form-bean>用来配置actionForm的。<action-mapping>用来配置action、forward、exception的。还有就是第三方组件的配置如<plug-in>[/size]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值