struts2入门
Posted 软软爱Java
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了struts2入门相关的知识,希望对你有一定的参考价值。
struts2框架应用在JavaEE三层结构中web(显示)层;
struts2框架是在Struts1和webwork的基础之上发展的全新的框架;
Struts2入门案例演示:
1:创建javaweb项目Struts2_day01,导入jar包;
2:创建action;
--创建一个JSP页面;hello.jsp
3:配置action类的访问路径:
--创建Struts2 的核心配置文件:这个文件的名称跟位置是固定的;位置必须在src下,名称为:struts.xml;
--引入的dtd约束:
--action的基本配置:
启动服务器,访问路径:
http://localhost:8080/Struts2_day01/hello.action
访问之后发现问题:
4:配置Struts2过滤器,没有配置就会出现上述问题;
配置完之后再次访问,可以正常访问;
struts2的基本执行过程:
查看Struts2源代码:
1:过滤器是在服务器启动的时候创建,创建过滤器的时候会执行里面的init方法;
-- 在init方法中主要是加载配置文件;(包含我们自己创建的配置文件和Struts2自带的配置文件);
Struts2中相关的配置:
1:Struts2核心配置文件:名称和位置是固定的;
2:在核心配置文件中有三个主要的标签:package , action , result ;
** 标签package
1):类似与代码中的包,用于区分不同的action;配置action,必须首先写 package标签,在package里面配置action;
2):package标签中的属性:
name属性:name属性中的值跟功能本身是没有关系的,在一个配置文 件中可以写多个package,但是name属性的
值不能相同;
extends属性:表示一种继承的关系,属性值是固定的:struts-default; 写了这个属性之后,在package里面配置的
类才具有action的功能;
namespace属性:namespace的属性值和action标签里面的name属性 值构成访问路径;
** 标签action:
1):配置action访问路径;
2):action标签中的属性:
name属性:
-- namespace的属性值和action标签里面的name属性值构成访问路 径;
-- 在package标签中可以写多个action标签;但是name的属性值是不 能相同的;
class属性: action的全路径;
method属性: 让action里的多个方法执行;
** 标签result
1):根据action里面方法的返回值,配置到不同的路径里面;
2):result标签属性:
-- name属性:name属性值和方法的返回值一样;
-- type属性:配置如何到路径中(转发或者重定向),默认做转发操 作;
action的三种编写方式:
1:创建普通类,不继承任何类,也不实现任何接口;
2:创建类,实现接口Action;
3:创建类,继承ActionSpport;
访问action的方法:
有三中方式可以实现:
1:使用action中的method属性,在这个属性里面就写要执行的action的方法;
创建action,在action里面写多个方法;
配置文件:
使用这种方法功能上是没有问题的,但是有一个缺陷,如果action里面有大量的方法,就要写大量的配置,造成很不方便;
2:使用通配符的方式实现;
action标签里面的name属性,在属性值里面写上一个符号: *
星号(*)表示可以匹配任意内容,
3:动态访问的方式:(一般不使用)
以上是关于struts2入门的主要内容,如果未能解决你的问题,请参考以下文章