【Struts 1】Struts1的基本原理和简介
2016-06-20 19:41
369 查看
备注:这里介绍的是Struts1的内容,Struts2的内容,会在后续的博客的予以说明!
Struts是Apache 基金会Jakarta 项目组的一个Open Source 项目,它采用MVC模式,能够很好地帮助java 开发者利用J2EE开发Web应用。和其他的java架构一样,Struts 也是面向对象设计,将MVC模式"分离显示逻辑和业务逻辑"的能力发挥得淋漓尽致。Struts 框架的核心是一个弹性的控制层,基于如 Java Servlets,JavaBeans,ResourceBundles与XML等标准技术,以及
Jakarta Commons 的一些类库。Struts由一组相互协作的类(组件)、Servlet以及jsp tag lib组成。基于struts构架的web应用程序基本上符合JSP Model2的设计标准,可以说是一个传统 MVC设计模式的一种变化类型。
browser:
web容器将对来自HTTP的每个请求创建一个request对象,并用一个response对象作出响应
controller:
控制器接收来自浏览器的请求,在struts中,是由一个servlet来充当控制器的角色,struts-config.xml文件配置控制器
model:
在struts中,由Action类充当业务逻辑的包装器,ActionForm是程序的状态
view:
JSP文件
1,ActionServlet类控制导航流
2,ActionServlet根据URI来决定哪个Action类 被用于处理请求,Action可以校验输入,并访 问业务层以便从数据库检索信息
3,Action需要知道页面提交了哪些内容,所以 由ActionServlet根据请求URI来决定将请求 参数绑定到哪个ActionForm中,并传入Action。Action在完成业务逻辑后,返回一个ActionForward 对象,ActionServlet根据ActionForward对象中的路径来调用页面完成响应
4,Struts将这些信息绑定在一个ActionMapping对象中,一个ActionMapping对应一个请求URI,当请求路径到达的时候,ActionServlet就会查询ActionMapping对象,ActionMapping对象将告诉ActionServlet哪个Action类会被调用、哪个ActionForm类被用于传递页面数据以及哪些ActionForward将被用于转向
5,有关Action、ActionForm、ActionForward等信息,Struts通过一个配置文件:struts-config.xml文件来定义。
一、什么是Struts
struts的目标是提供一个开发web应用的开源框架,Struts鼓励基于Model2模式来开发程序。关于model2的说明:【drp 10】JSP页面中model1和model2的区别Struts是Apache 基金会Jakarta 项目组的一个Open Source 项目,它采用MVC模式,能够很好地帮助java 开发者利用J2EE开发Web应用。和其他的java架构一样,Struts 也是面向对象设计,将MVC模式"分离显示逻辑和业务逻辑"的能力发挥得淋漓尽致。Struts 框架的核心是一个弹性的控制层,基于如 Java Servlets,JavaBeans,ResourceBundles与XML等标准技术,以及
Jakarta Commons 的一些类库。Struts由一组相互协作的类(组件)、Servlet以及jsp tag lib组成。基于struts构架的web应用程序基本上符合JSP Model2的设计标准,可以说是一个传统 MVC设计模式的一种变化类型。
二、Struts框架结构
browser:
web容器将对来自HTTP的每个请求创建一个request对象,并用一个response对象作出响应
controller:
控制器接收来自浏览器的请求,在struts中,是由一个servlet来充当控制器的角色,struts-config.xml文件配置控制器
model:
在struts中,由Action类充当业务逻辑的包装器,ActionForm是程序的状态
view:
JSP文件
三、Struts1框架组件
1,ActionServlet类控制导航流
2,ActionServlet根据URI来决定哪个Action类 被用于处理请求,Action可以校验输入,并访 问业务层以便从数据库检索信息
3,Action需要知道页面提交了哪些内容,所以 由ActionServlet根据请求URI来决定将请求 参数绑定到哪个ActionForm中,并传入Action。Action在完成业务逻辑后,返回一个ActionForward 对象,ActionServlet根据ActionForward对象中的路径来调用页面完成响应
4,Struts将这些信息绑定在一个ActionMapping对象中,一个ActionMapping对应一个请求URI,当请求路径到达的时候,ActionServlet就会查询ActionMapping对象,ActionMapping对象将告诉ActionServlet哪个Action类会被调用、哪个ActionForm类被用于传递页面数据以及哪些ActionForward将被用于转向
5,有关Action、ActionForm、ActionForward等信息,Struts通过一个配置文件:struts-config.xml文件来定义。
四、总结
感觉上来说,Struts1不应该是被淘汰掉的一个框架,它是MVC的的一个极佳实现。如果说Struts1被淘汰掉了,那是不是.NET这边的MVC也是要被淘汰掉的。Struts1可以解决的问题,就没有必要用Struts2或者别的框架。所以,个人认为还是一个适合不适合的问题!相关文章推荐
- Java线程池
- java 工厂模式
- 【每天学一点】JAVA Servlet相关02
- spring boot 第二课-完成单表操作及分页查询
- Mybits Demo
- Spring框架学习(1)
- Java多线程(一)基本用法
- NYOJ-12 喷水装置(二)
- Java反射与内省的区别
- Google Maps API in Java ME
- Eclipse plugin SWT Win32 Extension
- MVC Web Project-eclipse下的struts2插件
- UUID.java-J2ME 中javax.bluetooth里的UUID生成类
- blackberry eJDE eclipse plugin update site
- Java数组
- 【Struts1】--ip限制
- java课程总结
- 使用mybatis的逆向工程(xml方式)创建java代码
- Dekker算法和Peterson算法解决互斥锁的并发的Java实现
- java视频格式转换代码