[java] Struts基本原理与核心配置
来源:互联网 发布:逆战源码 编辑:程序博客网 时间:2024/06/05 20:46
在使用JSP/Servlet时,原理为:
JSP –>web.xml中配置的 servlet与Servlet-mapping –> Servlet(接受参数,验证,调用DAO等操作) à跳转到不同的页面
使用Struts时,原理为:
JSP à web.xml àActionServlet(url-pattern:*.do) àstruts-config.xml(根据path路径找对应的action与actionForm) àActionForm àValidate方法验证(如果通过进入action,否则返回input错误页)àaction à调用DAO进行逻辑判断 à成功时跳转某个页面(struts-config.xml:forward),失败时可以返回到错误也(input)
Struts-config.xml中的配置组成:
<form-beans >
<form-bean name="loginForm" type="com.wll.struts.form.LoginForm" />
</form-beans>
以上配置针对的是Action的配置。
<action-mappings >
<action
attribute="loginForm"
input="/login.jsp"
name="loginForm"
path="/login"
scope="request"
type="com.wll.struts.action.LoginAction">
<forward name="succ" path="/succ.jsp" />
<forward name="fail" path="/login.jsp" />
</action>
</action-mappings>
action-mappings:可包含多个aciton
action中包含的属性:
name、attribute表示该aciton所对应的actionForm的name属性;
一个aciton只能对应一个form,而一个form可以有多个action使用;
input:用来作为错误页的,当validate方法执行后有错误,则自动跳转到该页面;
所有struts-config.xml中配置的路径必须先加 / ,表示路径从WebRoot下开始定义;
path:表示该action的虚拟路径,必须加 / ,而且不需要加.do的后缀;
scope=“request”:表示action所保存的属性范围,request表示每次请求重新建立新的action;
type:表示该action的包.类名;
在action中可以包含多个不同的forward路径。
Forward中的属性:
Name:该forward的唯一标识,在action代码中执行跳转时需要通过该name来查找对应的路径;
Path:表示该forward所要跳转的路径,必须加 /。
<message-resources parameter="com.wll.struts.ApplicationResources" />
配置资源文件所在的路径,资源文件的后缀名必须为properties
<data-sources />
通过data-sources可以配置数据源连接,但struts开发中不使用
<global-exceptions>
<exception key="num"
type="java.lang.NumberFormatException" path="excep">
</exception>
</global-exceptions>
<global-forwards>
<forward name="excep" path="/error.jsp"></forward>
</global-forwards>
以上是配置公共跳转路径和公共异常处理的配置,一般不使用。
struts-config.xml 文件中的,action元素中的path属性表示的是浏览器地址栏中相对于应用程序根目录的请求路径,
与form 中提交表单以后有谁处理的action属性指定的根路径一致。
例如:form表单的提交处理请求是classesAdd.do,其在ie地址栏中的路径如下所示,
http://localhost:9000/Struts_study/classesMan/classesAdd.do
红色部分表示的根路径,所以,action中的classesAdd.do请求的完整路径是classesMan/classesAdd.do
<form name="form1" action="classesAdd.do" method=post>
所以 struts 中的action 的path路径是指/classesMan/classesAdd。
大家可以看着浏览器的地址栏加以配置。
补充一下吧,form中的action的默认路径就是当前路径,
而struts中的action 的path属性默认路径为根路径,所以要加上所在的文件夹得路径。
- [java] Struts基本原理与核心配置
- Struts 2.0 学习一 struts的基本原理与基本配置
- struts 2 核心配置
- ACL基本原理与配置
- 配置Struts的核心过滤器
- struts基本原理
- struts 基本原理
- struts基本原理
- FTP服务基本原理与配置
- struts2—核心配置struts.xml
- Struts框架核心工作流程与原理
- Struts框架核心工作流程与原理
- Struts的核心与原理分析
- struts入门与配置
- struts入门与配置
- struts配置与详解
- solr 基本原理 配置,solr java 初级应用
- Struts基本原理实现
- [iPhone初级]Storyboard全解析-第二部分
- 《算法导论》笔记--B树
- Linux 中断学习之小试牛刀篇
- eclipse实用插件(个人笔记)
- VI使用的个人笔记【超老版】
- [java] Struts基本原理与核心配置
- 响应式设计的5个CSS实用技巧
- 关于Nand Flash和Nor Flash的XIP
- 中断之原理篇
- virtualbox如何打开用VMware安装的虚拟系统
- Http download like Video Stream?
- QLocalServer
- VS2008快捷方式
- oracle logmnr 日志挖掘一例