我的Struts笔记

 

Struts原理

 

 

-Struts_工作原理与核心配置:

以前(Servlet)先写DAO.然后JSP页面根据web.xml中配置的servletServlet-mapping再到Servl我的Struts笔记et(接收参数,验证,调用DAO等操作)-》跳转不同的页面。

  使用Struts时原理:

  JSP->web.xml->ActionServlet(url-pattern:*.do)->struts-config.xml(根据path路径对应的actionactionFrom)->ActionFrom->validate方法验证(若通过进入action,否则返回input错误页)->action->调用

 

DAO进行逻辑判断->成功时跳转某个页面(struts-config.xml:forward,失败时可以返回错误页(input

 

 

Struts-config.xml中的配置组成:

<form-beans>------------包含多个form-bean.

     <form-bean name="loginForm"-------name为该bean的名称,唯一标识。

            type="com.struts.form.loginForm"/>--------bean的包.类名.

</form-beans>

此配置是对Actionform

<action-mappings>

   <action........>//可配置多个action,对应写的Action类。

 </action-mappings>           

name.attribute表是该Action所对应的ActionFormname属性。

input是用来作为错误页的,当validate方法执行后有错误,则自动跳转到该页面。

path表示该Action的虚拟路径,必须加/,不用加·do.

scope="request":表示Action所保存的属性范围,request表示每次请求重新建立新的Action

type表示该Action的包.类名。。

Action中可包含多个forward路径

forward属性:name为该forward的唯一标识,在Action代码执行跳转时需要通过的该name来查找对应的路径。            path标识该forward所要跳转的路径,

以上内容配置的为Action

①和②必须一一对应。两个必须都有。等于把Servlet分成两部分。一个Action只能对应一个Actionform,而一个ActionForm可已有多个Action使用它。***********配置中如/login路径path都带/,表示从webroot下开始往下找路径,【不加 / 会报错】

③资源文件的配置:

     <message-resources parameter="com.pro.struts.ApplicationResources" />

表示资源文件改包名地方。

 

 

ActionFrom中参数类型接受:

如果参数为int 类型接受,则会自动进行类型转换,当无法转换时,会使用默认值来进行处理,默认值为0

 

注意:不要将intDate等需要转换的类型,直接放入对象中。

 

 

Bean标签

Bean:用来处理属性范围中的属性,可以对其进行复制,添加和显示,并可以完成国际化功能。

Logic:用来完成页面上的逻辑判断和迭代循环。

Html:用来替代HTML页面元素的标签。

 

1.       bean:defind标签:用来创建或复制一个属性范围中的属性。

Bean:defind中的属性:

Id:表示新建立属性在属性范围中的名称,自行定义,如果有重复的,则自动覆盖。

Value:表示新建立的属性的值,只能是字符串。

Name:表示要复制的的属性在属性范围中的名称,与value不能同时使用。

Scope:表示所要复制的属性所在的属性范围,如果不填写,默认是4种属性范围。

toScope:表示范围后的新的属性所保存的属性范围,如果不填写,默认是page 范围。

 

如果属性范围中保存的为一个vo对象,这里要复制该对象的一个属性,可以通过pro皮而已来进行处理.

 Property: 表示所复制的属性其中包含的子属性的名称,必须有gettersertter方法。

格式化:#0都表示一位数字,这里###0.00表示显示格式为 3位数字,3位数字,2位数字

 

 

格式化:

金钱格式化:#,##0.00

 

#0的区别,如果该位不存在时,如果使用#,则不会显示该位,如果使用0,则会显示补0

Double格式化:#,##0.00

日期格式化:yyyy-MM-dd

 

Struts国际化

需要使用bean:message标签来实现该功能,并且需要资源文件的支持。

这里需要完成多个语言的现实,因此要建立多个资源文件,同时要求资源文件的命名必须规范

资源文件命名规范:以原有资源文件为基准,在其主文件名后+语言种类编码

 

最后在页面通过调用<bean:message key=””>标签来调用。

 

 

 以后继续修改……

你可能感兴趣的:(DAO,bean,xml,struts,servlet)