Struts简单介绍
1、MVC介绍
MVC全名是Model View Controller。是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范。用一种业务逻辑、数据、界面显示分离的方法组织代码。将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同一时候。不须要又一次编写业务逻辑。
当中三层各自的功能:
Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。View(视图)是应用程序中处理数据显示的部分。通常视图是根据模型数据创建的。Controller(控制器)是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据。控制用户输入,并向模型发送数据。MVC 分层同一时候也简化了分组开发。不同的开发者可同一时候开发视图、控制器逻辑和业务逻辑。
2、struts介绍Struts是MVC架构,使用Struts的目的是为了帮助我们降低在运用MVC设计模型来开发Web应用的时间。假设我们想混合使用Servlets和JSP的长处来建立可扩展的应用,struts是一个不错的选择。
1、初始化。读取配置文件:在Web应用启动时就会载入并初始化ActionServlet。在载入Struts应用程序时,会先载入web.xml中与Struts相关的一些配置參数,找到struts-config.xml文件。然后通过循环来读取此文件和解析里面的内容。并初始化相关对象。
2、用户请求:用户提交表单或调用url向Web应用程序
adclass=0&app_id=0&c=news&cf=1001&ch=0&di=8&fv=17&is_app=0&jk=38f8cdd40b779ad&k=%B7%FE%CE%F1%C6%F7&k0=%B7%FE%CE%F1%C6%F7&kdi0=0&luki=2&n=10&p=baidu&q=sayyescpr&rb=0&rs=1&seller_id=1&sid=ad79b740dd8c8f03&ssp2=1&stid=0&t=tpclicked3_hc&tu=u1366390&u=http%3A%2F%2Fblog%2Eknowsky%2Ecom%2F179728%2Ehtm&urlid=0" id="5_nwl" style="text-decoration:none">server
提交一个请求,首先会到达ActionServlet这个对象中,在此截取发送请求的URI地址。在和第一步中读取出来的配置文件信息相关内容做对照,找到和这个URI地址相匹配的地址。然后确定其要转向的Action。在此过程中。如这个Action有一个对应的ActionForm。则会把表单中提交的一些数据自己主动匹配到ActionForm的一个实例中,并传递到要转向的Action。
3、业务处理:Action一般仅仅包括一个execute()方法,它负责运行对应的业务逻辑。
在Action中获取传递过来的ActionForm中的数据,然后在调用相关业务逻辑。运行完成后返回一个ActionForward对象,控制器通过该ActionForward对象进行转发工作(通常是跳转到JSP页面对结果进行处理)。
4、接收结果:接收Action中处理的结果,在界面给用户显示相关数据。
1. 实现MVC模式,结构清晰,使开发人员仅仅关注业务逻辑的实现.2. 有丰富的tag能够用 ,Struts的标记库(Taglib),如能灵活动用。则能大大提高开发效率
3. 页面导航.页面导航将是今后的一个发展方向,其实,这样做,使系统的脉络更加清晰。通过一个配置文件。就可以把握整个系统各部分之间的联系,这对于后期的维护有着莫大的优点。
4. 提供Exception处理机制 .
5. 数据库链接池管理6. 支持I18N
Struts简单介绍的更多相关文章
- spring的struts简单介绍
之前一段时间学习了springmvc+mybatis+spring框架,突然对之前的struts东西有点陌生, 所以这里简单记录下温故而知新的东西吧. 1. 首先建立一个Dynamic Web Pr ...
- Auto Layout深入理解,及masonry简单介绍
本篇博客是本人在学习自己主动布局过程中对自己主动布局的理解和整理,分三部分介绍,内容可能会有所反复.见谅. 一.autosizing与Auto Layout对照,及Auto Layout简单介绍 1. ...
- 简单介绍Struts2
Struts2概述 Struts2虽然是Struts1的基础上发展起来的,但是实质上是以WebWork框架为核心,为传统的Struts1注入了WebWork的设计理念,统一了Struts1和WebWo ...
- dubbo学习过程、使用经验分享及实现原理简单介绍
一.前言 部门去年年中开始各种改造,第一步是模块服务化,这边初选dubbo试用在一些非重要模块上,慢慢引入到一些稍微重要的功能上,半年时间,学习过程及线上使用遇到的些问题在此总结下. 整理这篇文章差不 ...
- 【Dubbo基础】dubbo学习过程、使用经验分享及实现原理简单介绍
一.前言 部门去年年中开始各种改造,第一步是模块服务化,这边初选dubbo试用在一些非重要模块上,慢慢引入到一些稍微重要的功能上,半年时间,学习过程及线上使用遇到的些问题在此总结下. 整理这篇文章差不 ...
- Spring Framework简单介绍
Spring Framework 学习java编程不知不觉已经三年时间了,開始的时候,总是喜欢看着视频,然后按部就班的敲打着键盘,每当系统正常执行后.心里乐开了花.最開始的时候,所有的代 ...
- 简单介绍几种Java后台开发常用框架组合
01 前言 Java框架一直以来都是面试必备的知识点,而掌握Java框架,不管在成熟的大公司,快速发展的公司,还是创业阶段的公司,都能对当前正在开发中的系统有整体的认知,从而更好的熟悉和学习技术,这篇 ...
- [原创]关于mybatis中一级缓存和二级缓存的简单介绍
关于mybatis中一级缓存和二级缓存的简单介绍 mybatis的一级缓存: MyBatis会在表示会话的SqlSession对象中建立一个简单的缓存,将每次查询到的结果结果缓存起来,当下次查询的时候 ...
- 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍
一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...
随机推荐
- Gym - 101981I The 2018 ICPC Asia Nanjing Regional Contest I.Magic Potion 最大流
题面 题意:n个英雄,m个怪兽,第i个英雄可以打第i个集合里的一个怪兽,一个怪兽可以在多个集合里,有k瓶药水,每个英雄最多喝一次,可以多打一只怪兽,求最多打多少只 n,m,k<=500 题解:显 ...
- linux shell 编程笔记
重定向和管道 输出重定向:把在终端输出的内容保存到文件上 输入重定向:通过文件的格式输入内容到终端 管道:把上一条命令的输出作为下一条命令的输入,如同管道一样,所有命令同时进行,同时处理数据,不 ...
- Android,加载离线Android API文档缓慢问题!
解决方法:在host文件末添加如下信息! 0.0.0.0 www.googleapis.com 0.0.0.0 www.google.com 0.0.0.0 www.google-analytics. ...
- oracle-3种工具使用
1:原命令行,dos 2:sqlplus,图形界面 3:isqlplus,网页版的.(假如自己机器无法安装oracle,可通过别人ip地址去使用oracle,http://ip:5560/isqlpl ...
- Memcached 之缓存雪崩现象、实际案例和缓存无底洞现象
一.缓存雪崩现象 由于集群中某个memcached服务器宕机的原因,造成集群中的服务器命中率下降.只能通过访问数据库得到数据,是的数据库的压力倍增,造成数据库服务器崩溃.重启数据库还是会崩溃,但是数据 ...
- Java基础学习笔记之:System类;Math类;Arrays类BigInteger,BigDecimal
System类 在API中System类介绍的比较简单,我们给出定义,System中代表程序所在系统,提供了对应的一些系统属性信息,和系统操作.System类不能手动创建对象,因为构造方法被priva ...
- Golang实现常用排序算法
主函数package main import ( "fmt" "math/rand" "sort" "time") co ...
- eas之导入导出
// 是否仅导出有数据的区域,该方法对所有的导出生效(默认为false)table.getIOManager().setExpandedOnly(true); 输入KDF 如果你已经有了一个完整的KD ...
- Running to the End(Codeforces & AtCoder 百套计划)
...Reserved for the future... 仿照xxy dalao的CF&CC百套计划,做了一个Codeforces & AtCoder 百套计划,按这个速度刷下去,每 ...
- 挑战程序设计第二版PDF高清完整版免费下载
挑战程序设计pdf 网上有些地方的资源获取比较麻烦,本着共享的原则将此书pdf发出来,希望有条件的同学支持正版. 链接:https://pan.baidu.com/s/16S-5QOjoNxSGQx- ...