Struts4
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
http://localhost:8002/StrutsLogin/
如果所以有欢迎文件都 找不能则列出程序可执 行文件或目录
孙 丰 伟
11/32 11/32
4.2.4 配置错误处理
<error<error-page> <error-code>404</error<error-code>404</error-code> <location>/common/404.jsp</location> </error</error-page> 404,在当前程序中找不到对应的主页时 转入到错误页。 在当前程序中找不到对应的主页时, 404,在当前程序中找不到对应的主页时,转入到错误页。 还可以配置异常页
6/32
孙 丰 伟
4.2 为Struts应用配置web.xml文件 Struts应用配置 应用配置web.xml文件
4.2.1 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 配置Struts 配置Struts的ActionServlet Struts的 ActionServlet的初始化参数 声明 ActionServlet的初始化参数 配置欢迎文件清单 配置错误处理 在服务器启动时装载servlet 在服务器启动时装载servlet 控制会话超时
说明: servlet-name是定义servlet名称 说明: servlet-name是定义servlet名称 是定义servlet servlet-class元素指定Servlet完整类名 元素指定Servlet完整类名。 servlet-class元素指定Servlet完整类名。
在Struts应用程序中只需要配置一个ActionServlet。因为 Struts应用程序中只需要配置一个ActionServlet。 应用程序中只需要配置一个ActionServlet ActionServlet本身就是多线程的 且目前的Struts ActionServlet本身就是多线程的,且目前的Struts框架只允许 本身就是多线程的, Struts框架只允许 配置一个ActionServlet ActionServlet。 配置一个ActionServlet。
无符号 读取子元素在父元素内必须存在且只能存在一次 + * 该子元素在父元素内必须存在, 该子元素在父元素内必须存在,可以存在一次或者多次 该子元素在父元素内可以不存在, 该子元素在父元素内可以不存在,或者存在一次或者多 次.它是比较常用的符号 该子元素在父元素内可以不存在,或者只存在一次. 该子元素在父元素内可以不存在,或者只存在一次.它 是比较常用的符号
元素element属性attribute实体entity具体内容参数相关书籍符号符号含义含义无符号无符号读取子元素在父元素内必须存在且只能存在一次读取子元素在父元素内必须存在且只能存在一次该子元素在父元素内必须存在该子元素在父元素内必须存在可以存在一次或者多次可以存在一次或者多次该子元素在父元素内可以不存在该子元素在父元素内可以不存在或者存在一次或者多或者存在一次或者多次次
<error<error-page> <exception-type>javax.servlet.ServetException</exception<exception-type>javax.servlet.ServetException</exception-type> <location>/common/system_error.jsp</location> </error</error-page> Web容器可以捕获的异常有 容器可以捕获的异常有: Web容器可以捕获的异常有: RuntimeException 或 Error 孙 ServletException 或它的子类 丰 IOException 或 它的子类 伟
12/32 12/32
4.2.5 在服务器启动时装载servlet 在服务器启动时装载servlet
<load-on-startup>0</load-on<load-on-startup>0</load-on-startup>
13/32 13/32
孙 丰 伟
4.2.6 控制会话超时
如果某个会话在一定的时间内未被访问,服务器可把它释放 如果某个会话在一定的时间内未被访问, 以节约内存。可利用HttpSession HttpSession的 以节约内存。可利用HttpSession的setMaxInactiveInterval 方法直接设置个别会话对象的超时值。如果不采用这种方法, 方法直接设置个别会话对象的超时值。如果不采用这种方法, 则缺省的超时值由具体的服务器决定。但可利用session session则缺省的超时值由具体的服务器决定。但可利用sessionconfig和session-timeout元素来给出一个适用于所有服务器 config和session-timeout元素来给出一个适用于所有服务器 的明确的超时值。超时值的单位为分钟,因此, 的明确的超时值。超时值的单位为分钟,因此,下面的例子 设置缺省会话超时值为三个小时(180分钟 分钟)。 设置缺省会话超时值为三个小时(180分钟)。 <session<session-config> <session-timeout>180</session<session-timeout>180</session-timeout> </session</session-config>
7/32
孙 丰 伟
4.2.1 配置Struts的ActionServlet 配置Struts的
Servlet配置 Servlet配置: 配置:
<servlet> action</servlet <servlet-name>action</servlet<servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servletorg.apache.struts.action.ActionServlet</servlet <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> </servlet>
2/32
孙 丰 伟
前言
Struts应用采用两个基于 Struts应用采用两个基于XML的配置文件来配置应 应用采用两个基于XML的配置文件来配置应 用. web.xml : 适用于所有Java Web应用,是web应用 适用于所有Java Web应用 web应用 应用, 的发布描述文件. 的发布描述文件. strutsstruts-config.xml : 是Struts专用的配置文件. Struts专用的配置文件 专用的配置文件.
10/32 10/32
孙 丰 伟
4.2.3 配置欢迎文件清单
<welcome-file<welcome-file-list> <welcome-file>index.jsp</welcome<welcome-file>index.jsp</welcome-file> <welcome-file>userLogin.jsp</welcome<welcome-file>userLogin.jsp</welcome-file> </welcome-file</welcome-file-list>
孙 丰 伟
1. 2. 3. 4. 5. 6. 7.
4/32
4.1.1 web应用发布描述文件的文档类型定义(DTD) web应用发布描述文件的文档类型定义 应用发布描述文件的文档类型定义(DTD) 是对web.xml格式的定义: 是对web.xml格式的定义: web.xml格式的定义 元素 element 属性 attribute 实体 entity 具体内容参数相关书籍 符号 含义
精通Struts 精通Struts
用
4.1 Web应用的发布描述文件 Web应用的发布描述文件 Struts应用配置web.xml文件 应用配置web.xml 4.2 为Struts应用配置web.xml文件 Struts配置文件 4.3 Struts配置文件
孙 丰 伟
9/32
4.2.2 声明 ActionServlet的初始化参数 ActionServlet的初始化参数
定义Struts配置文件所在位置 定义Struts配置文件所在位置 <init<init-param> <param-name>config</param<param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml</param<param-value>/WEB-INF/struts-config.xml</param-value> </init</init-param> 如果多个配置文件可以写成: 如果多个配置文件可以写成: <init<init-param> <param-name>config</param<param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml, <param-value>/WEB-INF/struts-config.xml, /WEB-INF/struts-config/WEB-INF/struts-config-user.xml </param</param-value> </init</init-param>
3/32
孙 丰 伟
4.1 Web应用的发布描述文件 Web应用的发布描述文件
Web容器在启动时从该文件中读取配置信息, Web容器在启动时从该文件中读取配置信息,根据它来装载 容器在启动时从该文件中读取配置信息 web应用 应用。 和配置 web应用。 web.xml中常用配置 web.xml中常用配置 初始化参数 Session Servlet声明 Servlet声明 Servlet映射 Servlet映射 欢迎文件列表 出错处理页面 客户化标签
孙 丰 伟
?
5/32
web.xml
<?xml version="1.0" encoding="UTF-8"?> encoding="UTF<web<web-app> <servlet> <servlet-name>action</servlet<servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servlet<servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <init<init-param> <param-name>config</param<param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml</param<param-value>/WEB-INF/struts-config.xml</param-value> </init</init-param> <load-on-startup>0</load-on<load-on-startup>0</load-on-startup> </servlet> <servlet<servlet-mapping> <servlet-name>action</servlet<servlet-name>action</servlet-name> <url-pattern>*.do</url<url-pattern>*.do</url-pattern> </servlet</servlet-mapping> </web</web-app>
孙 丰 伟
8/32
web.xml
Servlet映射 Servlet映射: 映射: <servlet<servlet-mapping> <servlet-name>action</servlet<servlet-name>action</servlet-name> <url-pattern>*.do</url<url-pattern>*.do</url-pattern> </servlet</servlet-mapping> *.do表示ActionServlet负责处理所有以 .do”为扩展名的 表示ActionServlet负责处理所有以” 为扩展名的URL *.do表示ActionServlet负责处理所有以”.do”为扩展名的URL 例: http://localhost:8888/StrutsLogin/userLogin.do <html:form action="/userLogin.do" focus="userName"> <html:form action="/userLogin" focus="userName">
如果所以有欢迎文件都 找不能则列出程序可执 行文件或目录
孙 丰 伟
11/32 11/32
4.2.4 配置错误处理
<error<error-page> <error-code>404</error<error-code>404</error-code> <location>/common/404.jsp</location> </error</error-page> 404,在当前程序中找不到对应的主页时 转入到错误页。 在当前程序中找不到对应的主页时, 404,在当前程序中找不到对应的主页时,转入到错误页。 还可以配置异常页
6/32
孙 丰 伟
4.2 为Struts应用配置web.xml文件 Struts应用配置 应用配置web.xml文件
4.2.1 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 配置Struts 配置Struts的ActionServlet Struts的 ActionServlet的初始化参数 声明 ActionServlet的初始化参数 配置欢迎文件清单 配置错误处理 在服务器启动时装载servlet 在服务器启动时装载servlet 控制会话超时
说明: servlet-name是定义servlet名称 说明: servlet-name是定义servlet名称 是定义servlet servlet-class元素指定Servlet完整类名 元素指定Servlet完整类名。 servlet-class元素指定Servlet完整类名。
在Struts应用程序中只需要配置一个ActionServlet。因为 Struts应用程序中只需要配置一个ActionServlet。 应用程序中只需要配置一个ActionServlet ActionServlet本身就是多线程的 且目前的Struts ActionServlet本身就是多线程的,且目前的Struts框架只允许 本身就是多线程的, Struts框架只允许 配置一个ActionServlet ActionServlet。 配置一个ActionServlet。
无符号 读取子元素在父元素内必须存在且只能存在一次 + * 该子元素在父元素内必须存在, 该子元素在父元素内必须存在,可以存在一次或者多次 该子元素在父元素内可以不存在, 该子元素在父元素内可以不存在,或者存在一次或者多 次.它是比较常用的符号 该子元素在父元素内可以不存在,或者只存在一次. 该子元素在父元素内可以不存在,或者只存在一次.它 是比较常用的符号
元素element属性attribute实体entity具体内容参数相关书籍符号符号含义含义无符号无符号读取子元素在父元素内必须存在且只能存在一次读取子元素在父元素内必须存在且只能存在一次该子元素在父元素内必须存在该子元素在父元素内必须存在可以存在一次或者多次可以存在一次或者多次该子元素在父元素内可以不存在该子元素在父元素内可以不存在或者存在一次或者多或者存在一次或者多次次
<error<error-page> <exception-type>javax.servlet.ServetException</exception<exception-type>javax.servlet.ServetException</exception-type> <location>/common/system_error.jsp</location> </error</error-page> Web容器可以捕获的异常有 容器可以捕获的异常有: Web容器可以捕获的异常有: RuntimeException 或 Error 孙 ServletException 或它的子类 丰 IOException 或 它的子类 伟
12/32 12/32
4.2.5 在服务器启动时装载servlet 在服务器启动时装载servlet
<load-on-startup>0</load-on<load-on-startup>0</load-on-startup>
13/32 13/32
孙 丰 伟
4.2.6 控制会话超时
如果某个会话在一定的时间内未被访问,服务器可把它释放 如果某个会话在一定的时间内未被访问, 以节约内存。可利用HttpSession HttpSession的 以节约内存。可利用HttpSession的setMaxInactiveInterval 方法直接设置个别会话对象的超时值。如果不采用这种方法, 方法直接设置个别会话对象的超时值。如果不采用这种方法, 则缺省的超时值由具体的服务器决定。但可利用session session则缺省的超时值由具体的服务器决定。但可利用sessionconfig和session-timeout元素来给出一个适用于所有服务器 config和session-timeout元素来给出一个适用于所有服务器 的明确的超时值。超时值的单位为分钟,因此, 的明确的超时值。超时值的单位为分钟,因此,下面的例子 设置缺省会话超时值为三个小时(180分钟 分钟)。 设置缺省会话超时值为三个小时(180分钟)。 <session<session-config> <session-timeout>180</session<session-timeout>180</session-timeout> </session</session-config>
7/32
孙 丰 伟
4.2.1 配置Struts的ActionServlet 配置Struts的
Servlet配置 Servlet配置: 配置:
<servlet> action</servlet <servlet-name>action</servlet<servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servletorg.apache.struts.action.ActionServlet</servlet <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> </servlet>
2/32
孙 丰 伟
前言
Struts应用采用两个基于 Struts应用采用两个基于XML的配置文件来配置应 应用采用两个基于XML的配置文件来配置应 用. web.xml : 适用于所有Java Web应用,是web应用 适用于所有Java Web应用 web应用 应用, 的发布描述文件. 的发布描述文件. strutsstruts-config.xml : 是Struts专用的配置文件. Struts专用的配置文件 专用的配置文件.
10/32 10/32
孙 丰 伟
4.2.3 配置欢迎文件清单
<welcome-file<welcome-file-list> <welcome-file>index.jsp</welcome<welcome-file>index.jsp</welcome-file> <welcome-file>userLogin.jsp</welcome<welcome-file>userLogin.jsp</welcome-file> </welcome-file</welcome-file-list>
孙 丰 伟
1. 2. 3. 4. 5. 6. 7.
4/32
4.1.1 web应用发布描述文件的文档类型定义(DTD) web应用发布描述文件的文档类型定义 应用发布描述文件的文档类型定义(DTD) 是对web.xml格式的定义: 是对web.xml格式的定义: web.xml格式的定义 元素 element 属性 attribute 实体 entity 具体内容参数相关书籍 符号 含义
精通Struts 精通Struts
用
4.1 Web应用的发布描述文件 Web应用的发布描述文件 Struts应用配置web.xml文件 应用配置web.xml 4.2 为Struts应用配置web.xml文件 Struts配置文件 4.3 Struts配置文件
孙 丰 伟
9/32
4.2.2 声明 ActionServlet的初始化参数 ActionServlet的初始化参数
定义Struts配置文件所在位置 定义Struts配置文件所在位置 <init<init-param> <param-name>config</param<param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml</param<param-value>/WEB-INF/struts-config.xml</param-value> </init</init-param> 如果多个配置文件可以写成: 如果多个配置文件可以写成: <init<init-param> <param-name>config</param<param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml, <param-value>/WEB-INF/struts-config.xml, /WEB-INF/struts-config/WEB-INF/struts-config-user.xml </param</param-value> </init</init-param>
3/32
孙 丰 伟
4.1 Web应用的发布描述文件 Web应用的发布描述文件
Web容器在启动时从该文件中读取配置信息, Web容器在启动时从该文件中读取配置信息,根据它来装载 容器在启动时从该文件中读取配置信息 web应用 应用。 和配置 web应用。 web.xml中常用配置 web.xml中常用配置 初始化参数 Session Servlet声明 Servlet声明 Servlet映射 Servlet映射 欢迎文件列表 出错处理页面 客户化标签
孙 丰 伟
?
5/32
web.xml
<?xml version="1.0" encoding="UTF-8"?> encoding="UTF<web<web-app> <servlet> <servlet-name>action</servlet<servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servlet<servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <init<init-param> <param-name>config</param<param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml</param<param-value>/WEB-INF/struts-config.xml</param-value> </init</init-param> <load-on-startup>0</load-on<load-on-startup>0</load-on-startup> </servlet> <servlet<servlet-mapping> <servlet-name>action</servlet<servlet-name>action</servlet-name> <url-pattern>*.do</url<url-pattern>*.do</url-pattern> </servlet</servlet-mapping> </web</web-app>
孙 丰 伟
8/32
web.xml
Servlet映射 Servlet映射: 映射: <servlet<servlet-mapping> <servlet-name>action</servlet<servlet-name>action</servlet-name> <url-pattern>*.do</url<url-pattern>*.do</url-pattern> </servlet</servlet-mapping> *.do表示ActionServlet负责处理所有以 .do”为扩展名的 表示ActionServlet负责处理所有以” 为扩展名的URL *.do表示ActionServlet负责处理所有以”.do”为扩展名的URL 例: http://localhost:8888/StrutsLogin/userLogin.do <html:form action="/userLogin.do" focus="userName"> <html:form action="/userLogin" focus="userName">