Struts基本原理与核心配置

Struts基本原理与核心配置  

 在使用JSP/Servlet时,原理为:

       JSP–>web.xml中配置的 servletServlet-mapping –> Servlet(接受参数,验证,调用DAO等操作à跳转到不同的页面

 

使用Struts时,原理为:

       JSP à web.xml àActionServlet(url-pattern:*.do) àstruts-config.xml(根据path路径找对应的actionactionForm) àActionForm àValidate方法验证(如果通过进入action,否则返回input错误页)àaction à调用DAO进行逻辑判断 à成功时跳转某个页面(struts-config.xmlforward),失败时可以返回到错误也(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中包含的属性:

nameattribute表示该aciton所对应的actionFormname属性;

一个aciton只能对应一个form,而一个form可以有多个action使用;

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

所有struts-config.xml中配置的路径必须先加 / ,表示路径从WebRoot下开始定义;

path表示该action的虚拟路径,必须加 / ,而且不需要加.do的后缀;

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

type表示该action的包.类名;

action中可以包含多个不同的forward路径。

Forward中的属性:

Nameforward的唯一标识,在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>

以上是配置公共跳转路径和公共异常处理的配置,一般不使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值