1、struts2是什么
struts2是用于企业级Web开发的框架,基于struts2开发Web应用程序,在开发效率、可扩展性、可维护性上都会大有提升。
2、struts2的优点
struts2框架是典型的实现了MVC架构的框架,使用struts框架,通过struts2.xml文件配置非常容易的将数据层(模型)、控制层和视图展现层分离,开发出架构清晰的项目。
3、struts2的运行机制
参见博客:http://www.cnblogs.com/tengpan-cn/p/5210155.html
4、struts2知识体系
① 如何搭建最简易的struts2程序
结合struts2运行机制可知,首先在web.xml中配置struts2的过滤器;写struts2.xml文件(文件中可以include其他xml文件);写后台的action类(继承于ActionSupport类);编写前端展示页面即可;
② 关于struts.xml配置中的问题
包(package):包的作用同Java中的包的作用是一样的,主要防止action的命名冲突,尤其是多个小组负责一个项目的时候;
包可以继承,默认(必须在xml中写)继承 struts-default 包;
namespace属性,值必须以“/”开头;对应客户端浏览器中的URL地址的一部分
action标签:位于package标签里面,这个标签指定了后台逻辑,实现的是控制层;
name属性对应的URL地址的一部分
动态方法调用(通配符* 的应用)~~~~,此技术可以从客户端向服务器端的struts.xml文件中传递参数,实现动态配置;
struts2是线程安全的,每次请求访问一个action 都会创建一个新的action对象。
result标签,位于action标签里面,用于指定action执行完后,前台显示的内容,实现的是展示层;
name属性默认值是success;
type属性:可以设置为 dispatcher(服务器跳转到页面.jsp .html等)、redirect(客户端跳转到页面)、chain(服务器端跳转到action)、redirectAction(客户端跳转到action) ;默认是dispatcher;
关于struts中的路径:URL地址中的路径并不是文件的实际路径;也就是说,struts2寻找路径的方式不是按照文件保存路径去寻找的,而是根据package、action、result的这些对于关系找的。
global-result标签:一个package对应一个global-result标签,这个标签内包含多个result标签,这个包内的所有action都可以使用这些result标签;
其他包想要使用这些标签,可以继承这个包;
前端与服务器端的数据交互:
前端向服务器端传递数据: