struts入门初步(一)
struts2.0与struts1.0运用了不同的框架,有一定的不兼容性。
struts2.0借鉴了webwork的框架思想。
Struts2的基本步骤:
1、拷贝struts的jar到项目中(导包);
2、将struts2的过滤器添加到web.xml中;
3、配置struts2的配置文件(在src目录中创建struts.xml文件);
4、创建action(就是一个干净的POJO类);
4.1 、为action编写execute方法(创建相应的方法);
4.2、在struts.xml中配置action和返回结果集;
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd"> <struts>
<package name="default" namespace="/" extends="struts-default">
<action name="hello" class="com.it.action.HelloAction">
<result name="success">/hello.jsp</result>
//默认访问的是execute()方法
</action> </package>
</struts>
第一种 struts.xml
<!--
对一个action配置多个方法对应,减少了action类的的数量,仍旧无法减少配置的数量
地址栏输入:http://localhost:8080/Struts/user_addInput 即可
<action name="user_addInput" class="com.it.action.UserAction" method="addInput">
<result name="success">/addInput.jsp</result>
</action>
<action name="user_add" class="com.it.action.UserAction" method="add">
<result name="success">/WEB_INF/add.jsp</result>
</action>
<action name="user_list" class="com.it.action.UserAction" method="list">
<result name="success">/WEB_INF/user/list.jsp</result>
</action>
-->
第二种 struts.xml
package com.it.action; public class UserAction {
public String addInput(){
System.out.println("add Input!");
return "addInput";
}
public String add(){
System.out.println("add==");
return "add";
}
public String list(){
System.out.println("list---");
return "list";
}
} <!--
==============================
以下方法就写一个action,之后通过在调用的时候确定方法
地址栏输入:http://localhost:8080/Struts/user!addInput
很不明白为什么是"!"号
--> <action name="user" class="com.it.action.UserAction" >
<result name="addInput">addInput.jsp</result>
<result name="add">/WEB_INF/add.jsp</result>
<result name="list">/WEB_INF/user/list.jsp</result>
</action>
UserAction及struts.xml
<!--
============================
基于通配符的方式
http://localhost:8080/Struts/User_list.action
-->
<action name="*_*" class="com.it.action.{1}Action" method="{2}" >
<result >/{1}/{2}.jsp</result>
<!--
UserAction中的add里边return "r_list";用下边的配置,就可以让User_add也跳转到/User/list.jsp页面
-->
<result type="redirect" name="r_list">/{1}_list</result> </action>
<!-- 通过配置constant的方法来重置默认选项 -->
<constant name="struts.action.extension" value="action,do,df"/>
<constant name="struts.configuration.xml.reload" value="true"/>
对此,遗留问题有访问不到/WEB_INF/*.jsp(如:/WEB_INF/add.jsp)的问题。tomcat8下边
struts入门初步(一)的更多相关文章
- Struts 2 初步入门(三)
接Struts 2初步入门(二) 若想用多个通配符设定访问: <struts> <package name="default" namespace="/ ...
- 菜鸟玩云计算之二十:saltstack入门初步
菜鸟玩云计算之二十 SaltStack 入门初步 0. saltstack 是什么 参考下面的文章: http://docs.saltstack.com/en/latest/topics/tutori ...
- Struts1.3——Struts入门
1.Struts的几个基本概念 1.struts是一个开源框架(frameset) 2.struts是一个Web框架 3.struts是一个基于MVC的Web框架 2.为什么有struts 因为我们对 ...
- Struts 2 初步入门(六)之处理结果类型
Struts2 处理流程: 用户请求--->struts框架--->Action控制器--->struts框架--->视图资源 xml配置文件里: <result nam ...
- Struts 2 初步入门(二)
Struts 2 动态方法调用 1.在HelloWorldAction中添加两个新的方法如下: import com.opensymphony.xwork2.ActionSupport; public ...
- Struts 2 初步入门(一)
搭建Struts 2环境步骤 下载jar包----->创建web项目---->创建并完善相关配置文件---->创建action并测试启动 下载jar包访问网站:http://stru ...
- Struts 2 初步入门(五)之接受参数
1.使用action的属性接受参数 执行顺序为:前端提交参数--->LoginAction.do进行处理--->处理成功后,跳转到sucess.jsp文件. (1)新建login.jsp文 ...
- struts入门实例
入门实例 1 .下载struts-2.3.16.3-all .不摆了.看哈就会下载了. 2 . 解压 后 找到 apps 文件夹. 3. 打开后将 struts2-blank.war ...
- Struts入门(三)深入Struts用法讲解
访问Servlet API Action搜索顺序 动态方法调用 指定多个配置文件 默认Action Struts 后缀 接收参数 处理结果类型 1.访问Servlet API 首先我们了解什么是Ser ...
随机推荐
- Laravel-5.1 ---- 将mews captcha整合到项目中!
经过摸索,终于能在laravel 5.1中应用验证码了. 因为英语渣五水平,所以几乎没搜索到什么有用的,于是考虑在github上搜索验证码包! 提示: github上的package中往往会有使用说明 ...
- MapReduce运行过程以及原理
1.map和reduce MapReduce任务过程分为两个处理阶段:map阶段和reduce阶段.每个节点都以键值对作为输入和输出,其类型由程序员来选择.程序员还需要编写两个函数:map函数和red ...
- Redis配置文件(redis.conf)说明
Redis 配置 Redis 的配置文件位于 Redis 安装目录下,文件名为 redis.conf. 你可以通过 CONFIG 命令查看或设置配置项. 语法3> Redis CONFIG 命令 ...
- autocomplete一次返回多个值,并且选定后填到不同的Textbox中
$(txtTest1).autocomplete({ source: function (request, response) { $.ajax({ url: 'HttpHandler.ashx?to ...
- oracle deterministic 关键字
多次看到DETERMINISTIC,一直很疑惑,今天做了一个实验.我们欺骗Oracle说是一个DETERMINISTIC函数,它在SQL中只调用一次.如果不使用DETERMINISTIC,可以看到出来 ...
- 【转】HTTP 头部解释,HTTP 头部详细分析,最全HTTP头部信息
HTTP 头部解释 ========================================================================================== ...
- DruidDataSource配置属性列表
DruidDataSource配置兼容DBCP,但个别配置的语意有所区别. 配置 缺省值 说明 name 配置这个属性的意义在于,如果存在多个数据源,监控的时候可以通过名字来区分开来.如果没有配置 ...
- 解决 No resource found that matches the given name (at 'icon' with value '@drawable/icon') 问题
对新解决方案Xamarin的Android项目在项目属性 换图标后 会出现 No resource found that matches the given name (at 'icon' with ...
- JAVA基础语法。
1.java数据类型和变量布尔型.短整型.整型.长整型.浮点型.双精度型.字符型.字节型.8中数据类型结构.2. 变量的作用域3.常量.关键字.标识符4.运算符和表达式 4.1算术运算符 4.2位运算 ...
- 新建Java文件的 文档注释
/** * <br> * ============================================= * * @author : Liuyc * @company : 版权 ...