struts2的默认配置文件struts-default.xml

一、struts2配置文件

(一)struts2的默认配置文件struts-default.xml在struts2-core-XX.jar包的最下面

(二)struts2配置文件中标签的含义

1、package 定义一个包。 包作用,管理action。 (通常,一个业务模板用一个包)
  常见属性及其说明:
(1)name  包的名字;以方便在其他处引用此包,此属性是必须的。 包名不能重复;
(2)extends 当前包继承自哪个包,用于声明继承的包。在struts中,包一定要继承struts-default ;struts-default在struts-default.xml中定的包
(3)abstract  表示当前包为抽象包; 抽象包中不能有action的定义,否则运行时期报错
                    abstract=true  只有当当前的包被其他包继承时候才用!
                    如:
                        <package name="basePackage" extends="struts-default" abstract="true"></package>
                        <package name="user" extends="basePackage">
(4) namespace   指定名称空间,也就是访问此包下的Action需要访问的路径,默认为"/" 作为路径的一部分
                  访问路径=  http://localhost:8080/项目/名称空间/ActionName
2、action   配置请求路径与Action类的映射关系, 常见属性及其说明:
         (1)name  请求路径名称,用于配置Action对象被请求的URL映射
         (2)class 请求处理的aciton类的全名
         (3)method 请求处理方法,设置请求Action对象时,调用对象的哪一个方法。        
3、result:常见属性及其说明:
       (1)name  action处理方法返回值 。
       (2)type  跳转的结果类型,用于设置返回结果的类型,如请求转发,重定向等。
       (3)标签体中指定跳转的页面。
4、include节点是struts2中组件化的方式 可以将每个功能模块独立到一个xml配置文件中 然后用include节点引用 
<includefile="struts-default.xml"></include>

(三)struts.xml配置文件常量配置(constant)

<!-- 所有匹配*.action的请求都由struts2处理-->
<constant name="struts.action.extension" value="action"/>
<!-- 是否启用开发模式-->
<constant name="struts.devMode" value="true"/>
<!-- struts配置文件改动后,是否重新加载-->
<constant name="struts.configuration.xml.reload" value="true"/>
<!-- 设置浏览器是否缓存静态内容-->
<constant name="struts.serve.static.browserCache" value="false"/>
<!-- 请求参数的编码方式-->
<constant name="struts.i18n.encoding" value="utf-8"/>
<!-- 每次HTTP请求系统都重新加载资源文件,有助于开发-->
<constant name="struts.i18n.reload" value="true"/>
<!-- 文件上传最大值-->
<constant name="struts.multipart.maxSize" value="104857600"/>
<!-- 让struts2支持动态方法调用-->
<constant name="struts.enable.DynamicMethodInvocation" value="true"/>
<!-- Action名称中是否还是用斜线-->
<constant name="struts.enable.SlashesInActionNames" value="false"/>
<!-- 允许标签中使用表达式语法-->
<constant name="struts.tag.altSyntax" value="true"/>
<!-- 对于WebLogic,Orion,OC4J此属性应该设置成true-->
<constant name="struts.dispatcher.parametersWorkaround" value="false"/>

(四)struts.xml配置文件配置实现实例:

开发过程中,可以先将大体架构搭建出来,配置文件以及jsp页面,实现简单框架应用,然后完善细节。

简单分两步:第一,实例模型业务实现以及数据库的设计。第二,前台界面框架的搭建。

1、导入struts相关jar包

2、配置web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>testBBS1</display-name>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>

<!-- 引入struts2的核心过滤器-->

   <filter>
      <filter-name>struts2</filter-name>
      <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
  <filter-mapping>
  <filter-name>struts2</filter-name>
  <url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>

3、开发action

import com.opensymphony.xwork2.ActionSupport;

public class CategoryAction extends ActionSupport{

public String login(){ System.out.println("登陆的方法");return SUCCESS;}
public String register(){ System.out.println("注册的方法");return SUCCESS;}
public String list(){
return SUCCESS;
}

public String add(){
return SUCCESS;
}

public String update(){
return SUCCESS;
}

public String delete(){
return SUCCESS;
}

public String addInput(){
return INPUT;
}

public String updateInput(){
return INPUT;
}
}

4、配置struts.xml文件:有多中方法:普通方法与通配符方法

 

 

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"
    "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<!-- 声明包-->
<package  name="helloWorld" extends="struts-default" abstract="false" namespace="/">
   <!-- 定义action -->
   <action  name="hello" class="com.bie.HelloAction" method="execute">
       <!-- 显示成功的jsp页面-->
       <result  name="success" type="dispatcher">success.jsp</result>
   </action>
</package>

<!-- 声明包-->
<package name="login" extends="struts-default" abstract="false" namespace="/">
<action name="login" class="com.bie.RegisterAction" method="login">
<result name="success">success.jsp</result>
</action>

<actionname="register" class="com.bie.RegisterAction" method="register">
<resultname="success">success.jsp</result>
</action>
</package>

<!-- 通配符的实现简单配置-->
<package name="loginRegister" extends="struts-default" abstract="false" namespace="/">
<action name="login_*_*" class="com.bie.RegisterAction" method="{1}">
<result name="success">success.jsp</result>
</action>
</package>

<!--通配符的设置-->

 <package name="admin" namespace="/admin" extends="struts-default" >
   
       <action name="*_*" class="com.sdga.bbs.action.{1}Action" method="{2}">
        <result>/admin/{1}_{2}.jsp</result>
        <result name="input">/admin/{1}_{2}.jsp</result>
       </action>
    </package>  
    <package name="front" namespace="/" extends="struts-default" >

<!--可以指定默认显示界面-->
    <default-action-ref name="Category-list"/>  
       <action name="Category-list" class="com.sdga.bbs.action.CategoryAction" method="list">
        <result>/index.jsp</result>
         </action>
    </package>
    
</struts>

14     public String login(){
15         System.out.println("登陆的方法");
16         return SUCCESS;
17     }
18     
19     public String register(){
20         System.out.println("注册的方法");
21         return SUCCESS;
22     }
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一位远方的诗人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值