1.
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>/login.jsp</welcome-file>
</welcome-file-list>
</web-app>
配置了一个叫action(可以随便改)的ActionServlet类,并告诉容器,任何匹配*.do的请求都会发送给action的Servlet去处理,但不匹配的*.do的请求struts则不处理。
ActionServlet能接受多个参数,config是其中一个参数,作用是为ActionServlet指定XML配置文件,根据需要可以同时指定多个XML。
2.
<html:link>标签对应于HTML中的<a>标签,用于生成一个超链接。它有以下4个属性。
forward:指定一个全局ActionForward的名称。
action:指定一个Action的名称。
href:指定一个完整的URL连接。
page:指定一个页面的路径,必须以"/"开始。
3.
在进行国际化处理时,资源文件中包含中文字符,若不进行编码转换页面将会出现乱码。在JDK中提供一个native2ascii 程序
native2ascii [-reverse] [-encoding 编码] [输入文件 [输出文件]
例如要转换a.properties文件中的字符,在DOS中执行以下命令:
native2ascii -encoding gbk a.properties a_zh.properties
经过native2ascii -encoding命令转换后,就得到一个新的文件a_zh.properties。
4.
ActionForm可以写比表单多的属性,但不可以少写!
5.
当表当提交的是如:
<html:select property="diplomas" multiple="2">
<html:option value="doctor">高</html:option>
<html:option value="master">中</html:option>
<html:option value="bachelor">低</html:option>
</html:select>
<html:multibox property="interests" value="swimming"/>游泳
<html:multibox property="interests" value="tennis" />网球
<html:multibox property="interests" value="socer" />足球
在ActionForm是String[],
而不是如:
<html:text property="loginName"/>
<html:select property="diplomas" >
<html:option value="doctor">高</html:option>
<html:option value="master">中</html:option>
<html:option value="bachelor">低</html:option>
</html:select>
在ActionForm是String不是数组。
要注意提交过去到另一页页面时显示出来时String[]要防止为空!!!!!
6.
<html:checkbox property="storepassword" />记住密码<!--默认值是no 和 off-->
<html:checkbox property="storepassword" >记住密码</html:checkbox>
<html:radio property="gender" value="male"/>男<!--在html:radio中value属性必须写-->
<html:radio property="gender" value="male">男</html:radio>
<html:select property="diplomas" multiple="2">
<html:option value="doctor"/>高<!--在选项里显示“doctor”--><!--在html:option中value属性必须写-->
<html:option value="master">中</html:option><!--在选项里显示“中”->
<html:option value="bachelor">低</html:option>
</html:select>
<html:multibox property="interests" value="basketball" />篮球<!--在选项里显示“篮球”--><!--值=basketball-->
<html:multibox property="interests" value="swimming"/><!--在选项里不显示--><!--值=swimming-->
<html:multibox property="interests" >网球</html:multibox><!--在选项里不显示--><!--值= 网球 -->
<html:multibox property="interests" value="socer" >足球</html:multibox><!--在选项里不显示--><!--值= socer -->
这个标签中的值和value中的值通用,都写时取的是value。
6
struts-config.xml
global-execptions form-beans global-forwards action-mappings controller message-resources plug-in |
7
struts-config.xml中配置的各个项目是有一定的顺序要求的,几个主要项目的顺序大致是这样的:
data-sources form-beans action-mappings message-resources plug-in |
在配置时要遵守上述顺序
8
在struts-config.xml文件中配置数据源
- <set-property property="driverClassName"
- value="com.microsoft.jdbc.sqlserver.SQLServerDriver" />
- <set-property property="url"
- value="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mystruts;
- SelectMethod=cursor"
- />
这句中,如果您的struts应用程序中只配置一个数据源则key="A"可以不要,而配置多个数据源时就要用这个键值区别,也就是说,可以为一个应用程序配置多个数据源让它访问多个数据库。