struts2和1的区别】的更多相关文章

Struts2与Struts的区别 从Struts2的发展过程来看,Struts2继承了Struts与WebWork的血脉,Struts2取两者之精华,形成新德框架,但是struts2还是更多的继承了struts的设计思想,并加入了WebWork的优点.在了解Struts2体系之前,让我们先看看struts2对struts做了哪些修改. Struts2与struts的不同主要体现在以下几个方面. (1)  Action类 1>在struts中都是使用抽象类编程而不是接口,因此他要求开发Actio…
Struts1与Struts2的12点区别  1) 在Action实现类方面的对比:Struts 1要求Action类继承一个抽象基类:Struts 1的一个具体问题是使用抽象类编程而不是接口.Struts 2 Action类可以实现一个Action接口,也可以实现其他接口,使可选和定制的服务成为可能.Struts 2提供一个ActionSupport基类去实现常用的接口.即使Action接口不是必须实现的,只有一个包含execute方法的POJO类都可以用作Struts 2的Action. 2…
简单谈一下Struts2和SpringMVC的区别,文章有所引用知乎所对应的答案数据,和所查看的其余资料数据,进行一个简单的汇总,后续查看时使用: 知乎解释链接为:https://www.zhihu.com/question/31565442 SpringMVC处理请求的工作机制:和Struts2处理请求的数据机制,(注:其实这两张图是很重要的) SpringMVC: Struts2: 1.Struls2是一个请求一个Action,SpringMVC是单例模式的 2,Sruts2是基于类的横切,…
Struts2是基于WebWork的一个全新框架.不过有了Struts1的基础,学Struts2更方便.Struts2主要改进是取代了Struts1的Servlet和Action.Struts2的核心框架是当作一个filter来实现其功能的,而Struts1是ActionServlet.然后在Action上,Struts1都少不了要传递Request等参数,还要继承Action父类,而Struts2只要实现了一个public String execute()就可以了,这样Action就可以实现脱…
先大致介绍下struts1和struts2 struts:过去最流行的web MVC组件,apache项目组的一个开源项目. struts2:现在非常流行的web MVC组件,是apache用struts1和webwork组合出来的产品. 两者都是web MVC组件,利用这两个组件都可以比较方便地开发web项目.不过struts1毕竟是老组件,在人们开发过程中,发现了如下问题: 1.struts1支持的表现层技术太单一,就只有jsp.不支持freemaker.velocity等当前比较流行的页面…
虽然说没有系统的学习过Spring MVC框架, 但是工作这么长时间, 基本上在WEB层使用的都是Spring MVC, 自己觉得Struts2也是一个不错的WEB层框架, 这两种框架至今自己还未有比较, 今天闲着没事干, 从网上找了一些资料, 再加上平时使用Spring MVC的感触来总结一下. Spring MVC PK Struts2 我们用struts2时采用的传统的配置文件的方式,并没有使用传说中的0配置.spring3 mvc可以认为已经100%零配置了(除了配置spring mvc…
MVC是web开发常用的模式,M即模型层(Model):主要由javabean来实现.V即视图层(View):主要由jsp.velocity.freemarker等.C即控制层(Controller):主要由servlet.strtus.springmvc来实现.   struts1 Struts1 工作流程1  ActionServlet接收由浏览器发出的请求后,检索和请求匹配的ActionMapping对象.如果不存在,返回请求无效的信息.2  检索和请求匹配的ActionForm对象.如果…
1) 在Action实现类方面的对比:Struts 1要求Action类继承一个抽象基类:Struts 1的一个具体问题是使用抽象类编程而不是接口.Struts 2 Action类可以实现一个Action接口,也可以实现其他接口,使可选和定制的服务成为可能.Struts 2提供一个ActionSupport基类去实现常用的接口.即使Action接口不是必须实现的,只有一个包含execute方法的POJO类都可以用 作Struts 2的Action. 2) 线程模式方面的对比:Struts 1 A…
1 机制不同 springmvc的入口是servlet,struts2的入口是filter,导致了二者的机制不同: 2 性能不同 spring会稍微比struts快.spring mvc是基于方法的设计,而sturts是基于类,每次发一次请求都会实例一个action,每个action都会被注入属性,而spring基于方法,粒度更细,但要小心把握像在servlet控制数据一样.spring mvc是方法级别的拦截,拦截到方法后根据参数上的注解,把request数据注入进去,在spring mvc中…
1. 拦截机制不同 Struts2是类级别的拦截,每次请求就会创建一个Action,和Spring整合时Struts2的ActionBean注入作用域是原型模式prototype,然后通过setter,getter吧request数据注入到属性.Struts2中,一个Action对应一个request,response上下文,在接收参数时,可以通过属性接收,这说明属性参数是让多个方法共享的.Struts2中Action的一个方法可以对应一个url,而其类属性却被所有方法共享,这也就无法用注解或其…
总的来说,Struts1 的 Action 是单例模式,因此开发者必须保证它是线程安全的或是同步的,因为Struts 1中每个Action仅有一个实例来处理所有的请求.     但是在用Struts 1开发时并没有考虑到线程安全问题,这是因为我们在Action中使用的基本都是局部变量,而“局部变量是线程安全的.因为每执行一个方法,都会在独立的空间创建局部变量,它不是共享的资源.局部变量包括方法的参数变量”(忘了引自哪了).在Struts 1中,所有的变量都是定义在Action中我们要执行的方法里…
Struts2: struts 2 是一个基于MVC(mode-view-con)设计模式的Web应用框架,是由Struts1和WebWork两个经典框架发展而来的. 工作流程: 1客户端浏览器发出HTTP请求 2根据web.xml配置,该请求被FilterDispatcher(过滤器调度员)接收 3根据struts.xml配置,找到需要调用的Action类和方法,并通过IOC(控制反转)方式,将值注入给Action 4Action调用业务逻辑组件处理业务逻辑 5Action执行完毕,根据str…
struts2中OGNL和 ValueStack(一) 收藏 学习的时候,总分不清楚在struts2中页面的传值和取值是怎么来完成的,所以从网上搜了很多资料,现在把这些资料总结写,留着以后参考..看完资料后也大概明白了... 先分清楚下ActionContext .ValueStack .Stack Context三者 ActionContext 一次Action调用都会创建一个ActionContext 调用:ActionContext context = ActionContext.getC…
Struts2和Struts1的区别: 一.elclipse-ee开发 搭建环境eclipse-ee 1.加入jar包  apps/struts2-blank.war解压 2.在web.xml文件中配置struts2 3.在当前web应用的classpath下添加struts2的配置文件struts.xml 4.添加dtd约束 配置dtd文件的需要注意:进入struts.xml文件以后-->>复制http://struts.apache.org/dtds/struts-2.3.dtd-->…
day03 上传下载 1        上传下载组件介绍 l  jspSmartUpload(model1的年代): l  apache-commons-fileupload,Struts2默认上传组件: l  Servlet3.0使用的Part,但Servlet3.0还没有普及: l  COS,Struts2支持,不过已经停止更新很久了: l  pell,Struts2支持. 2        fileUpload的拦截器 Struts2默认使用的是commons-fileUpload组件完成…
Struts2是一个基于MVC设计模式的Web应用框架.在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互.Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架.Struts 2的体系结构与Struts 1的体系结构差别巨大.Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet API完全脱离开,所以S…
Struts2的目录结构: 解压apps目录下的struts2-blank.war: 仿照这个最基本的项目,拷贝相关文件: 1.拷贝apps/struts2-blank/WEB-INF/classes/struts.xml到我们的项目中的src目录(因为src编译完成后会自动放在classes目录): 2.拷贝类库apps/struts2-blank/WEB-INF/lib/*.jar到自己项目的WebRoot/WEB-INF/lib下. 3.拷贝apps/struts2-blank/WEB-I…
以下内容是我在复习struts2.hibernate和spring的时候记下得到,部分书上找不到的内容来自网络 以下是网络部分的原文网站: http://blog.csdn.net/frankaqi/article/details/51873557 http://blog.sina.com.cn/s/blog_75115c8d0102vy1i.html http://www.cnblogs.com/xiohao/p/3561175.html http://www.cnblogs.com/oumy…
struts2是一个基于mvc的web应用框架.struts2本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器层(Controller)来建立模型与视图的数据交互. struts2使用优势:自动封装参数.参数校验.结果的处理(转发|重定向).国际化.显示等待页面.表单防止重复提交等. struts2具有更加先进的架构以及思想. struts2的历史 struts2与struts1的区别:struts1是基于servlet开发的,servlet本身就是线程不安全的,所以…
如若转载请注明出处: http://www.cnblogs.com/wang-meng/p/5898837.html   谢谢.上一篇发了一个找工作的面经, 找工作不宜, 希望这一篇的内容能够帮助到大家.对于这次跳槽找工作, 我准备了挺长的时间, 其中也收集了很多比较好的笔试面试题, 大都是一些常用的基础, 很多都是由于时间原因没有来得及给出答案, 但是题目大都是比较经典实用的, 现在都放到这里, 希望对正处于找工作的博友有一定的帮助. 第一部分: Java基础(此部分面试题题目来自:http:…
三者之间的关系如下图所示: ActionContext  一次Action调用都会创建一个ActionContext  调用:ActionContext context = ActionContext.getContext() ValueStack 由OGNL框架实现  可以把它简单的看作一个List Stack Object:放入stack中的对象,一般是action. Stack Context(map):stack上下文,它包含一些列对象,包括request/session/attr/ap…
1.struts2与struts1的区别 2.声明式事务是什么,怎么实现? 3.ajax两种请求方式 4.java中string str=new string("ss")创建了个几个对象内存分配如何? java 虚拟机分为堆区.栈区.代码区.树根区,创建了一个对象,在堆中有一个内存,保存的是"ss",这个字符串的值,在栈中有一个内存,保存的堆是"ss",这个字符串的引用str,即栈中str是一个引用,指向堆中"ss"这个字符串…
一.Java基础部分 (搞定所有技术之后才考虑复习的技术点) 1.数组中的排序问题(笔试或者机试,前者可能性更大) 2.面向对象的理解 3.集合相关的问题,比如hashmap跟hashtable的区别.搞清楚每个集合对象的特性就欧了. 4.多线程启动方式,以及产生死锁的原因和解决办法[多线程问题不是很常问,有精力就复习这块内容] 5.IO流,了解常见的几个流对象以及基本的流操作即可,被机试的可能性比较小. 二.Web基础 (年工作经验者需要重点复习的技术点) 1.http协议(定义.常见的请求头…
1.struts2框架中,从用户发出请求到获得响应整个过程的流转图 FilterDispatcher --> ActionProxy-->Configuration Manager-->ActionInvocation -->Interceptor(入)-->Action -->Interceptor(出)--> result 对应的页面. 2.struts2和servlet的区别: 控制器非单例(对于每次请求,都会创建1个action对象.防止多线程同步造成的低…
者之间的关系如下图所示: relation ActionContext 一次Action调用都会创建一个ActionContext 调用:ActionContext context = ActionContext.getContext() ValueStack 由OGNL框架实现 可以把它简单的看作一个List Stack Object:放入stack中的对象,一般是action. Stack Context(map):stack上下文,它包含一些列对象,包括request/session/at…
1.为什么我们学习框架? 提高开发效率,框架是别人写好的工具类,我们需要遵循其规则进行操作 2.我们学习哪些框架 A.持久层框架:MyBatis 什么是持久化? 狭义:把数据永久性的保存到数据当中 广义:针对于数据库的所有操作都称为持久化操作 CreateReadUpdateDelete操作 面试:持久层框架?MyBatis  Hibernate Object[Java对象] Relation[数据库] Mapping[映射-通过框架来映射对象和数据中的表和字段的关系]框架? MyBatis和H…
个人看到对比play1.x和play2.x比较的文章中,写的最深入,最清晰的一个.转自:http://freewind.me/blog/20120728/965.html 为了方便群中的Play初学者们,写了一篇入门引导,以帮助初学者尽快了解Play.本文之前发在另一个网站,因为觉得有些不便,还是转到博客上. 欢迎来到play的世界,在这里你将体验到与传统SSH开发网站不一样的感受.我将把我学习play的感受与经验分享给大家,希望能对大家(特别是初学者)有所帮助. Play是一个非常有创造力.让…
基础部分 1. 线程和进程的区别 线程三个基本状态:就绪.执行.阻塞 线程五个基本操作:创建.就绪.运行.阻塞.终止 进程四种形式:主从式.会话式.消息或邮箱机制.共享存储区方式 进程是具有一定功能的程序关于某次数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位.一个进程包含多个线程. 线程是进程的一个实体,是CPU调度和分配的基本单元. 2. JSP四大域对象和九大内置对象 四大域对象:PageContext.request.session.servletContext 九大内置…
剑指Offer--知识点储备-J2EE基础 9.2 jdk 1.8的新特性(核心是Lambda 表达式) 参考链接:http://www.bubuko.com/infodetail-690646.html (1)接口的默认方法 (给接口添加一个非抽象的方法实现,只需default关键字即可) 采用接口的默认方法,还是为了解决java不能多继承的原因. (2)Lambda 表达式(使代码变得异常简洁)(1参数列表 2箭头符号 3代码块) 其实是一种函数值编程,都是直接调用函数,而且编译器可以自动推…
面试知识点:1:简单讲一下Java的跨平台原理答:由于非跨平台的情况下,对于不同的操作系统,那么就需要开发几套不同程序代码.为了解决这个问题,java通过不同系统,不同版本,不同位数的JVM来屏蔽不同的系统指令集差异而对外提供统一的接口(JavaAPI),所以这样对于我们普通的开发者来说,只需要开发符合Java规范的程序即可.如果程序需要部署到不同的操作系统,那么我们只需要按照对应版本的虚拟机即可. 2:java开发环境的步骤答:需要的内容:对应操作系统的JDK  , 对应版本位数的IDE(开发…