文章说明 本篇文章介绍如何使用Struts1进行增删改查,仅是对自己学习的记录,并没有深入分析每个模块(不重复造轮子O(∩_∩)O~)。
8 Struts1的处理流程: 控制器进行初始化工作,读取配置文件,为不同的Struts模块初始化相应的ModuleConfig对象。
参考链接:http://blog.csdn.net/john2522/article/details/7436307 Struts1 Action 官方注释 Action.java 源代码中的注释如下:...---- Struts1和2的Action对比 ? Struts1和2的区别.png-154.7kB Action模型 数据如何从Action中,传入JSP中?...Struts1 需要显示的数据(Bean),要在Action中存到Request或Session中。...Struts1必须继承org.apache.struts.action.Action或者其子类,表单数据封装在FormBean中。...---- 参数:Struts1的execute方法,是具有参数的;Struts2没有。 返回类型:Struts1的返回类型是ActionForward;Struts2是String。
分析:既然知道form为null,说明,能够进入到action里面去,为什么为空呢?可能性最大的一个原因,就是:formbean没有和struts中的actio...
Struts1和Struts2的区别和对比: Action 类: • Struts1要求Action类继承一个抽象基类。...线程模式: • Struts1 Action是单例模式并且必须是线程安全的,因为仅有Action的一个实例来处理所有的请求。单例策略限制了Struts1 Action能作的事,并且要在开发时特别小心。...可测性: • 测试Struts1 Action的一个主要问题是execute方法暴露了servlet API(这使得测试要依赖于容器)。...一个第三方扩展--Struts TestCase--提供了一套Struts1的模拟对象(来进行测试)。...• Struts 2 Action可以通过初始化、设置属性、调用方法来测试,“依赖注入”支持也使测试更容易。 捕获输入: • Struts1 使用ActionForm对象捕获输入。
Struts2 VS Struts1 在体系结构方面更优秀: 类更少, 更高效: 在 Struts2 中无需使用 “ActionForm” 来封装请求参数....更容易测试: 即使不使用浏览器也可以对基于 Struts2 的应用进行测试 从 Struts1 升级到 Struts2 Struts2 从本质上讲已不是从 Struts1 扩展而来的, 说它是一个换了品牌标签的...WebWork 更合适 从 Struts1 升级到 Struts2: Struts1 里使用 ActionServlet 作为控制器; Struts2 使用了一个过滤器作为控制器 Struts1 中每个...Struts1 的验证逻辑编写在 ActionForm 中; Struts2 中的验证逻辑编写在 Action 中....Struts1 中, Action 类必须继承 org.apache.struts.action.Action 类; Struts2 中任何一个 POJO 都可以是一个 Action 类.
servlet Struts1 Struts2 springmvc 哪些是单例,哪些是多例,哪些是线程安全? 在谈这个话题之前,我们先了解一下Java中相关的变量类型以及内存模型JMM。...System.out.println("用户:"+username+"在"+action); } catch (Exception e) { } } } Struts1...Struts1使用的ActionServlet是单例的,既然是单例,当使用实例变量的时候就会有线程安全的问题。所有一般在开发中试禁止使用实例变量的。...总结 servlet Struts1 SpringMvc 是线程不安全的,当然如果你不使用实例变量也就不存在线程安全的问题了。
创建spring配置文件(进行包扫描,和视图解析器) action-servlet.xml 视图解析器访问路径:prefix + logicName + suffix 创建控制器 创建jsp文件 发布、测试...面试要点:Struts1、Struts2和springmvc比较 都是web层框架。 Struts1是基于servlet;Struts2是基于filter;springmvc是基于servlet 。...Struts1的action是单例模式,线程不安全的;Struts2 action是原型模式 prototype,每次访问对象都会创建新的实例,保证线程安全性;springmvc controller是单例模式...Struts1使用JSTL EL表达式,但是对集合和索引属性的支持很弱。Struts2采用 OGNL。
转载请注明:http://blog.csdn.net/uniquewonderq 1.struts2背景 由出色稳定的框架struts1和WebWork框架整合而来。...(struts1是Apache软件基金会赞助的一个开源项目,它通过采育好难过javaservlet/jsp技术,实现了基于java ee web应用的mvc设计模式的应用框架,是mvc经典设计模式中的一个经典产品...struts1结构简单小巧,十分易用,一度市场占有率超过20%,struts1框架,与jsp/servlet耦合非常紧密,这制约了它的发展,以至于被后来的框架陆续赶超)。...(webwork是有Opensysphony组织开发的,是建立在成为xwork的command模式框架之上的强大的mvc框架,webwork晚于struts1,技术上更为先进,由于组织至猛毒,人们习惯等原因...webwork市场的反响不如struts1) struts2与struts1差别巨大,不能理解为struts1的升级版。 struts2以xwork为核心,可以理解为webwork的升级版。
与sturts2的区别(struts2是struts1和webwork的结合体) 1、struts1要求Action类继承一个抽象基类,而不是接口。...3、sturts1过去依赖serlet API,不容易测试。 struts2不依赖于容器,允许Action脱离容器单独被测试。 4、Struts1 使用ActionForm对象捕获输入。...5、Struts1 整合了JSTL,因此使用JSTL EL。这种EL有基本对象图遍历,但是对集合和索引属性的支持很弱。...Struts1使用Commons-Beanutils进行类型转换。 Struts2 使用OGNL进行类型转换。提供基本和常用对象的转换器。...Hibernate作为一个O/R Mapping,比JDBC具备的优势有: 1.编程思想上,更加符合人的逻辑思维习惯,面向对象比面向过程更加容易理解,测试和维护 2.开发维护速度上,Hibernate显著的快
讲下SpringMvc和Struts1,Struts2的比较的优势 性能上Struts1>SpringMvc>Struts2 开发速度上SpringMvc和Struts2差不多,比Struts1要高...讲下SpringMvc的核心入口类是什么,Struts1,Struts2的分别是什么 SpringMvc的是DispatchServlet,Struts1的是ActionServlet,Struts2
具体自己百度吧 所有Spring的这些特征使你能够编写更干净、更可管理、并且更易于测试的代码 3、为什么使用Spring?...从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。 二、Struts 1、什么是Struts?...2、Struts1的核心构成 在 Struts1 中,由一个名为 ActionServlet 的 Servlet 充当 控制器(Controller)的角色,根据描述模型、视图、控制器对应关系的 struts-config.xml...3、Struts1的基本执行流程 详见《STRUTS基本工作流程》 4、什么是struts2 Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的...7、 Struts1和Struts2的区别 详见《Struts1 和 Struts2》 三、Hibernate 1、什么是Hibernate?
Struts2 是一个用来开发 MVC 应用程序的框架,他提供了 Web 应用程序开发过程中的一些常见问题的解决方案,比如对于用户输入信息合法性的验证,统一的布局,国际化等,既然有 Struts2 那么肯定有 Struts1...,但是从本质上讲 Struts2 不是从 Struts1 扩展而来的,更应该说是一种换了品牌标签的 WebWork 更合适。...struts1 VS struts2 struts1 里使用 ActionServlet 作为控制器,Struts2 使用过滤器作为控制器 Struts1 中每个 HTML 表单都对应一个 ActionForm...实例,Struts2 中 HTML 表单将被直接映射到一个 POJO Struts1 的验证逻辑编写在 ActionForm 中,Struts2 中的验证逻辑编写在 Action 中 Struts1
Struts1的实现底层是servlet,是单利的,所以在Struts1的开发过程中有很多的时候是需要注意单例导致的线程安全性的问题。
================================================================================================= /*struts1...的上传与下载*/ /*struts1的上传:*/ //index.jsp中 <form action="upload.do" method = "post" enctype = "multipart/...os.close(); return mapping.findForward("suc"); } } //------------------------------------------ /*struts1
Struts1 Struts1使用一个单例核心ActionServlet接收所有请求,请求数据转化为ActionForm,然后依据配置(struts-config.xml中的ActionMapping)...Struts1 很明显的缺点导致现在基本没人会去用: 配置繁琐 ActionServlet 单例模式,须考虑线程安全 依赖 Web 容器,单元测试不方便 Struts2 于是Struts2被推出。...它使用Interceptor(拦截器) + Controller(即 Struts1 中的 Action)的模式,使得整个处理流程扩展性大大提高了。...Controller 对HttpServletRequest和HttpServletResponse这样的原生 Servlet 对象的剥离,即 Controller 不依赖于 Web 容器,可以方便地单元测试了...相比 Struts1,Struts2 有了质的飞跃,然而没过几年,它的荣光也被后起之秀所掩盖。 Spring MVC 说起Spring MVC,不得不先说说Spring。
2、Struts2的来历 Struts1:也是apache开发的一套mvc的开源框架。在2005年之前非常流行。 弊端:Struts1的核心控制器就是一个Servlet。...除此之外,和Struts1没有任何关系了。 六、搭建Struts2开发环境 1、下载Struts2开发包 http://struts.apache.org 2、开发包目录结构 ?...结论: struts2比struts1优秀的一个体现就是,它用了更为强大的过滤器作为控制器了。 ? 3.4、验证是否成功 部署应用,启动Tomcat,不报错表示搭建成功。 ?...5、测试: ? 6、关于struts.xml没有提示的问题 分析原因:没有找到对应的dtd约束文件。 解决办法: a.上网 b.不能上网: ? ? 八、第一个案例的执行过程 3 ? 明确: ?...CAPTCHA(Completely Automated Public Turing Test to Tell Computers and Humans Apart 全自动区分计算机和人类的图灵测试)—
领取专属 10元无门槛券
手把手带您无忧上云