Struts2基础知识
Struts2概述
1.Struts2框架应用javaee三层结构中的web层框架。
2.Struts2框架在struts1和webwork基础之上发展的全新框架。 3.Struts2所解决的问题:
在以往实现一个功能时,都需要写很多的servlet,从而造成后期维护上的不方便。 图解:
4.现在比较稳定的Struts2版本 struts-2.3.24-all.zip 5.web层常见框架 1.struts 2.springMVC Struts2框架入门
1.导入jar包
1.在lib里面有jar包,但不能全部导入,因为里面含有一些spring包,是不能使用的,导入会导致程序不能运行。 2.到app目录里面复制案例的jar包是最好的方法。 2.创建action
3.配置action类的访问路径
1.创建struts2核心配置文件,该核心配置文件位置和名称是固定的,位置必须在src下面,名称为struts.xml 。 2.引入dtd约束,可以在案例文件中找到,复制在struts.xml文件中即可。
3.action的配置
*注意访问路径:
http://域名/端口号/项目名/action名.action
注意:.action可以省略,但建议不要省略,为了兼容一些老版本的浏览器。
4.配置Struts2的过滤器,可以在案例中的web.xml文件中找到,复制粘贴即可。
Struts2执行过程
图解:
Struts2配置
Struts2的核心配置文件 1.名称和位置是固定的。 2.在配置文件中主要有三个标签,package、action、result,以及各个标签内的其它属性。 标签package 1.类似于代码包,区别不同的action,要配置action,必须首先写package标签,在package里面才能配置action 。 2.package标签属性 1.name属性,name属性的值跟功能本身没有关系的,在一个配置文件中可以写多个package标签,但name的属性值不能相同。 2.extends属性,该属性的值是固定的,在package里面配置的类具有action功能。 3.namespace属性,该属性值和action标签里面的name的属性值构成访问路径,可以不写,推荐写上,默认为/。 标签action 1.action标签配置action访问路径。 2.action标签属性 1.name属性 namespace属性值和action标签里面的name属性值构成访问路径。在package标签里面可以写多个action标签,但是action的属性name的值不能够相同。 2.class属性 action的全路径,即包名+类名 3.method属性 比如在action里面默认执行的方法是execute方法,但是在action
里面写其他的方法,让action里面多个方法执行,使用method进行配置。 标签result 1.根据方法的返回值,配置到不同的路径下。 2.result标签属性 1.name属性 和action中method所调用的方法返回值一致。 2.type属性 配置如何到路径中(转发/重定向),该属性值的默认是做转发操作。 标签constant 1.是一种常量标签 2.修改Struts2的默认常量值 1.常用方式 在struts.xml中进行配置。 2.其它两种方式 1.在src下面创建struts.properties文件并修改。 2.在web.xml文件中进行修改。 3.Struts2最常用的常量 struts.il8n.encoding=UTF-8,解决表单在通过post方式提交中文时,中文乱码的问题。 分模块开发 1.单独写配置文件,把配置文件引入到核心配置文件中,从而解决多人操作一个核心文件的问题。 2.配置用法 在.xml文件中加入