SSH框架学习之struts2 ---- 1、 Struts2入门和快速上手

day01 Struts2入门

1、 struts2的创建

首先是idea的配置,在这篇指导下完成 传送门

第一步、创建action(类似servlet),每次访问action时执行里面的方法。
第二步、配置action类的访问路径

创建核心配置文件,名称和位置是固定的。src下的 struts.xml

下面介绍各个标签和属性

package

作用:类似于代码的包,用于区分不同的action。

标签的属性:

  • name : 和功能本身没有关系的,是为了用于区分不同的package

  • extend: 继承,固定为struts-default。类因此具备action功能

  • namespace:和action标签里面的name值构成访问路径(通过这个url发送的请求才会传给action)

action

作用:配置action的访问路径

标签的属性:

  • name: 访问路径的一部分。同一个package下的action的name不可相同。
  • class:全路径,为了反射时找到实体位置
  • method:默认的是execute,假如现在希望执行的是update方法,那么method=“update”
result

作用:根据action的方法返回值,做跳转(不一定是页面,任何路径都行)

标签属性:

  • name:和返回值进行匹配
  • type: 配置跳转路径的方法,默认是转发(地址栏不变)
修改常量

最常用的常量最常用的一个,帮我们完善了post方式提交的中文乱码问题
在这里插入图片描述

2、图解struts2处理请求

在这里插入图片描述

3、协调开发

struts配置文件中,可以通过引入的方式引入文件。
在这里插入图片描述

4、动态地调用action的方法

我们希望不同的请求有不同的action方法去处理,比如说 add()方法处理添加的请求;remove()方法处理删除的请求。

学到这里,我们可以给不同的请求,在配置文件中添加相应方法的配置。这是能做到的。缺点是要写多个action标签

这里用通配符实现

思想就是,把一类请求都添加到一个action,再根据不同的返回值,响应相应的页面

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
        "http://struts.apache.org/dtds/struts-2.5.dtd">
<struts>
    <package name="hellodemo" extends="struts-default" namespace="/">
         <!--访问hello_update 那么就执行update方法
         {1}标识第一个*-->
        <global-allowed-methods>regex:.*</global-allowed-methods>
        <action name="User_*" class="com.lin.struts.StrutsDemo" method="{1}">
            <result name="success">/hello.jsp</result>
            <allowed-methods>add,hello</allowed-methods>
        </action>
    </package>
</struts>

注意
struts2.5版本对此进行更新
需要把dtd约束改成2.5。
然后二选一
要么加上<global-allowed-methods>regex:.*</global-allowed-methods>
要么加上<allowed-methods>add,hello</allowed-methods>

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值