首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

基本的struts1问题:Struts1中的ActionForm数据来自哪里?

在Struts1中,ActionForm数据可以来自多个来源,包括:

  1. 请求参数:ActionForm会自动根据请求参数的名称和ActionForm属性的名称进行数据绑定。例如,如果请求参数中有一个名为"username"的参数,对应的ActionForm类中有一个名为"username"的属性,那么该参数的值将会被自动设置到ActionForm对象的相应属性上。
  2. 表单:ActionForm可以直接接收表单提交的数据。当用户在表单中输入数据并提交时,Struts1会自动将表单中的数据绑定到相应的ActionForm对象上。
  3. URL参数:ActionForm可以通过URL参数传递数据。当在URL中添加参数时,Struts1会根据参数名称和ActionForm属性的名称进行数据绑定。
  4. Cookies:ActionForm可以从浏览器的Cookie中获取数据。通过使用javax.servlet.http.Cookie类,可以在ActionForm中获取Cookie中存储的数据。
  5. Session:ActionForm可以从会话(Session)中获取数据。通过使用javax.servlet.http.HttpSession类,可以在ActionForm中获取会话中存储的数据。
  6. 其他来源:除了上述方式外,开发人员还可以自定义数据来源,例如从数据库、文件等读取数据,并将其绑定到ActionForm对象中。

总结起来,Struts1中的ActionForm数据可以来自请求参数、表单、URL参数、Cookies、会话和其他自定义数据来源。

腾讯云并没有专门针对Struts1提供的产品或服务,因此无法给出相关的腾讯云产品和介绍链接。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

(02)Struts2_概述

它提供了 Web 应用程序开发过程中的一些常见问题的解决方案: 对来自用户的输入数据进行合法性验证 统一的布局 可扩展性 国际化和本地化 支持 Ajax 表单的重复提交 文件的上传下载 ….....Struts2 VS Struts1 在体系结构方面更优秀: 类更少, 更高效: 在 Struts2 中无需使用 “ActionForm” 来封装请求参数....更容易测试: 即使不使用浏览器也可以对基于 Struts2 的应用进行测试 从 Struts1 升级到 Struts2 Struts2 从本质上讲已不是从 Struts1 扩展而来的, 说它是一个换了品牌标签的...HTML 表单都对应一个 ActionForm 实例....Struts2 中, HTML 表单将被直接映射到一个 POJO. Struts1 的验证逻辑编写在 ActionForm 中; Struts2 中的验证逻辑编写在 Action 中.

41110

Struts1和Struts2的区别和对比

Struts1的一个普遍问题是使用抽象类编程而不是接口,而struts2的Action是接口。...(实际上,servlet容器给每个请求产生许多可丢弃的对象,并且不会导致性能和垃圾回收问题) Servlet 依赖: • Struts1 Action 依赖于Servlet API ,因为当一个Action...可测性: • 测试Struts1 Action的一个主要问题是execute方法暴露了servlet API(这使得测试要依赖于容器)。...捕获输入: • Struts1 使用ActionForm对象捕获输入。所有的ActionForm必须继承一个基类。因为其他JavaBean不能用作ActionForm,开发者经常创建多余的类捕获输入。...表达式语言: • Struts1 整合了JSTL,因此使用JSTL EL。这种EL有基本对象图遍历,但是对集合和索引属性的支持很弱。

90340
  • 聊聊Servlet、Struts1、Struts2以及SpringMvc中的线程安全

    前言 很多初学者,甚至是工作1-3年的小伙伴们都可能弄不明白?servlet Struts1 Struts2 springmvc 哪些是单例,哪些是多例,哪些是线程安全?...这样,当两个或多个线程同时访问同一个Servlet时,可能会发生多个线程同时访问同一资源的情况,数据可能会变得不一致。...Servlet的线程安全问题 Servlet的线程安全问题主要是由于实例变量使用不当而引起的,这里以一个现实的例子来说明。...Struts1使用的ActionServlet是单例的,既然是单例,当使用实例变量的时候就会有线程安全的问题。所有一般在开发中试禁止使用实例变量的。...总结 servlet Struts1 SpringMvc 是线程不安全的,当然如果你不使用实例变量也就不存在线程安全的问题了。

    90360

    聊聊Servlet、Struts1、Struts2以及SpringMvc中的线程安全

    servlet Struts1 Struts2 springmvc 哪些是单例,哪些是多例,哪些是线程安全? 在谈这个话题之前,我们先了解一下Java中相关的变量类型以及内存模型JMM。...[1.png] 这样,当两个或多个线程同时访问同一个Servlet时,可能会发生多个线程同时访问同一资源的情况,数据可能会变得不一致。...Servlet的线程安全问题 Servlet的线程安全问题主要是由于实例变量使用不当而引起的,这里以一个现实的例子来说明。...Struts1使用的ActionServlet是单例的,既然是单例,当使用实例变量的时候就会有线程安全的问题。所有一般在开发中试禁止使用实例变量的。...总结 servlet Struts1 SpringMvc 是线程不安全的,当然如果你不使用实例变量也就不存在线程安全的问题了。

    1.2K140

    Struts2 学习之小白开始

    Struts2 基础知识学习总结   Struts2 概述:Struts2 是一个用来开发 MVC 应用程序的框架,他提供了 Web 应用程序开发过程中的一些常见问题的解决方案,比如对于用户输入信息合法性的验证...struts1 VS struts2 struts1 里使用 ActionServlet 作为控制器,Struts2 使用过滤器作为控制器 Struts1 中每个 HTML 表单都对应一个 ActionForm...实例,Struts2 中 HTML 表单将被直接映射到一个 POJO Struts1 的验证逻辑编写在 ActionForm 中,Struts2 中的验证逻辑编写在 Action 中 Struts1...Struts2 程序的编写,其要求为在一个表单中输入用户的基本信息点击提交后跳转到另一个页面显示用户所输入的信息,在没有学习 Struts2 之前这对于我们来说非常简单,仅需要将页面请求发送到 Servet...在 index.jsp 中编写页面代码,供用户输入基本信息,如下: ?

    52520

    Struts2 学习之小白开始

    Struts2 基础知识学习总结   Struts2 概述:Struts2 是一个用来开发 MVC 应用程序的框架,他提供了 Web 应用程序开发过程中的一些常见问题的解决方案,比如对于用户输入信息合法性的验证...struts1 VS struts2 struts1 里使用 ActionServlet 作为控制器,Struts2 使用过滤器作为控制器 Struts1 中每个 HTML 表单都对应一个 ActionForm...实例,Struts2 中 HTML 表单将被直接映射到一个 POJO Struts1 的验证逻辑编写在 ActionForm 中,Struts2 中的验证逻辑编写在 Action 中 Struts1...Struts2 程序的编写,其要求为在一个表单中输入用户的基本信息点击提交后跳转到另一个页面显示用户所输入的信息,在没有学习 Struts2 之前这对于我们来说非常简单,仅需要将页面请求发送到 Servet...在 index.jsp 中编写页面代码,供用户输入基本信息,如下: ?

    65060

    JavaWeb(2)

    4、Struts1 使用ActionForm对象捕获输入。所有的ActionForm必须继承一个基类。 Struts 2直接使用Action属性作为输入属性,消除了对第二个输入对象的需求。...5、Struts1 整合了JSTL,因此使用JSTL EL。这种EL有基本对象图遍历,但是对集合和索引属性的支持很弱。...Struts1使用Commons-Beanutils进行类型转换。 Struts2 使用OGNL进行类型转换。提供基本和常用对象的转换器。...8、Struts 1支持在ActionForm的validate方法中手动校验,或者通过Commons Validator的扩展来校验。...当Hibernate在查询数据的时候,数据并没有存在与内存中,当程序真正对数据的操作时,对象才存在与内存中,就实现了延迟加载,他节省了服务器的内存开销,从而提高了服务器的性能。

    61410

    聊聊Servlet、Struts1、Struts2以及SpringMvc中的线程安全

    前言 很多初学者,甚至是工作1-3年的小伙伴们都可能弄不明白?servlet Struts1 Struts2 springmvc 哪些是单例,哪些是多例,哪些是线程安全?...这样,当两个或多个线程同时访问同一个Servlet时,可能会发生多个线程同时访问同一资源的情况,数据可能会变得不一致。...Servlet的线程安全问题 Servlet的线程安全问题主要是由于实例变量使用不当而引起的,这里以一个现实的例子来说明。...Struts1使用的ActionServlet是单例的,既然是单例,当使用实例变量的时候就会有线程安全的问题。所有一般在开发中试禁止使用实例变量的。...总结 servlet Struts1 SpringMvc 是线程不安全的,当然如果你不使用实例变量也就不存在线程安全的问题了。

    50120

    Struts 1高级应用

    在应用开发工作中中,我们会遇到一些复杂的业务,这时如果只使用前面的内容将很难解决问题或着解决起来相当麻烦。...2.2 使用实体对象简化ActionForm 在进行Struts开发时,我们经常需要编写ActionForm或者配置动态Form来封装表单数据,但是当数据库表增减字段、业务逻辑发生变化时,我们需要修改相关的实体类...在Struts1中对异常的处理其实比较简单,当程序发生异常时,我们只需要跳转到指定的错误提示页面即可。...使用setter方法封装表单中的数据,所以setBirthday方法会引发异常,我们就给这个方法声明异常。...可以使用实体对象简化ActionForm。 Struts1的异常处理。 (1)在异常可能发生的位置使用throws关键字声明异常。

    7810

    那些年Struts 1.X 而今我还是不会

    struts1是WEB程序MVC分层架构中的C,属于控制层,主要进行处理用户的请求,基于请求驱动。 获取用户的请求地址并将表单中的数据封装到Form 对象后交给Action进行处理。...在Action中进行条用业务层处理具体的请求后将结果通过ActionMapping封装跳转地址返回给用户。 struts1是对servlet的再次封装,使得更加灵活高效。...javax.servlet.http.HttpServletResponse; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm...public class LoginAction extends Action{     public ActionForward execute(ActionMapping mapping,ActionForm...熟悉一下,下个项目要用Struts1 二次开发。最基础的好简单。但是配置文件内容都好多好多。

    59970

    【SSH进阶之路】Struts基本原理 + 实现简单登录(二)

    上面博文,主要简单的介绍了一下SSH的基本概念,比较宏观,作为初学者能够有一个整体上的认识,个人认为对学习有很好的辅助功能,它不仅仅是一个“瞭望塔”,更是检验是否真正掌握所有内容的一个前提。...Struts1 概念 说概念真谈不上,Struts实质上就是采用JavaServlet/JSP技术,在Model2的基础上实现的一个MVC框架。 Struts1实现MVC的模型图 ?...ActionServlet,前端控制器 1、根据相应的规则截取Http请求的URL 2、将Http请求分发到相应的Action处理 ActionForm,相当于实体 1、收集表单数据,将表单数据转换成相应的数据类型...Action,业务层控制器 1、 取得表单数据 2、调用业务逻辑 3、返回转向信息 我们再根据登录实例,对比上面的模型图,进一步理解一下Struts的基本原理,最后做一下总结。...; /** * 登录ActionForm,负责表单收集数据 * 表单的属性必须和ActionForm中的get和set的属性一致 * @author liang * */ @SuppressWarnings

    48220

    SSH框架总结

    3、在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。...2、Struts1的核心构成 在 Struts1 中,由一个名为 ActionServlet 的 Servlet 充当 控制器(Controller)的角色,根据描述模型、视图、控制器对应关系的 struts-config.xml...在 MVC 的模型(Model)部分,经常划分为两个主要子系统(系统的内部数据状态与改变数据状态的逻辑动作),这两个概念子系统分别具体对应 Struts 1里的 ActionForm 与 Action...3、Struts1的基本执行流程 详见《STRUTS基本工作流程》 4、什么是struts2 Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的...具体就不展开了 3、Hibernate基本执行流程 ? 为什么使用Hibernate? 1. 对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。

    1K40

    Java Web 拾遗

    Servlet JSP + JavaBean 的模式有一个明显的缺点,即隐性的页面跳转(数据流转),提高了开发过程中的出错概率,比如同一个页面可能由多个不同页面跳转过来,而相应的数据结构并不相同,开发人员要考虑所有可能的情况...Struts1 Struts1使用一个单例核心ActionServlet接收所有请求,请求数据转化为ActionForm,然后依据配置(struts-config.xml中的ActionMapping)...Struts1 很明显的缺点导致现在基本没人会去用: 配置繁琐 ActionServlet 单例模式,须考虑线程安全 依赖 Web 容器,单元测试不方便 Struts2 于是Struts2被推出。...它使用Interceptor(拦截器) + Controller(即 Struts1 中的 Action)的模式,使得整个处理流程扩展性大大提高了。...* IOC 我们可以通过在 XML 文件(使用ClassPathXmlApplicationContext加载)中配置 Bean,然后在代码中使用@Autowired或@Resource(来自 JSR-

    10010

    Struts 1基础入门

    现在使用Java技术新开发的WEB软件应用基本上都使用Struts 2,但是之前也有很多已经投入使用的软件工程用的是Struts 1。...所示的Struts1体系结构。...Action,Action主要负责从ActionForm中取出用户提交的数据,然后调用相应的模型进行业务处理,最后根据处理结果跳转到不同的视图。...(2) 服务器端的ActionServlet接收并拦截来自客户端的HTTP请求,同时读取struts-config.xml文件并按照action配置中的name属性配置将请求中的表单数据封装到一个FormBean...任务实训部分​ 1:查询管理员 ​训练技能点​ ​ ​使用MyEclipse手工编码配置进行Struts1开发​​​ ​需求说明​ 使用理论部分的数据库,并实现查询功能。

    11710

    struts2概述

    (struts1是Apache软件基金会赞助的一个开源项目,它通过采育好难过javaservlet/jsp技术,实现了基于java ee web应用的mvc设计模式的应用框架,是mvc经典设计模式中的一个经典产品...struts1结构简单小巧,十分易用,一度市场占有率超过20%,struts1框架,与jsp/servlet耦合非常紧密,这制约了它的发展,以至于被后来的框架陆续赶超)。...webwork市场的反响不如struts1) struts2与struts1差别巨大,不能理解为struts1的升级版。 struts2以xwork为核心,可以理解为webwork的升级版。...吸取了两大框架的优点 吸收了自动封装数据技术,简化了许多冗余代码 提高了开发效率和规范性 更好的实现了mvc架构 解除了与servlet的强耦合性 2.struts2的概念: 是轻量级MVC框架,主要解决了请求分发的问题...所谓轻量级,低侵入性,与业务代码的耦合度很低。即业务代码中基本不需要import它的包。struts2实现了MVC,并提供了一些列API,采用模式化方式简化业务开发过程。

    60030

    究竟什么是POJO?

    对此我一开始也是存在误区的,我原来是这样理解的: POJO是这样的一种“纯粹的”JavaBean,在它里面除了JavaBean规范的方法和属性没有别的东西,即private属性以及对这个属性方法的...我们会发现这样的JavaBean很“单纯”,它只能装载数据,作为数据存储的载体,而不具有业务逻辑处理的能力。 所以下面的代码被认为是POJO了。...基本的意思是我们要给具有业务逻辑处理的规则的Java对象(regular java objects)起了一个名字——POJO,这些Java对象不是EntityBeans(EJB的一种)。...基本意思是说POJO一个正规的Java对象(不是JavaBean,EntityBean等),也不担当任何的特殊的角色,也不实现任何Java框架指定的接口。...例如:Struts1中的Action和ActionForm当然不属于POJO了,而在Struts2中的Action由于可以不继承任何的接口,所以在这种情况下Action是POJO,但是Struts2中的

    42530

    SpringMvc面试题

    讲下SpringMvc和Struts1,Struts2的比较的优势   性能上Struts1>SpringMvc>Struts2 开发速度上SpringMvc和Struts2差不多,比Struts1要高...讲下SpringMvc的核心入口类是什么,Struts1,Struts2的分别是什么   SpringMvc的是DispatchServlet,Struts1的是ActionServlet,Struts2...SpringMvc的控制器是不是单例模式,如果是,有什么问题,怎么解决   是单例模式,所以在多线程访问的时候有线程安全问题,不要用同步,会影响性能的,解决方案是在控制器里面不能写字段 f-sm-4....SpringMvc中有个类把视图和数据都合并的一起的,叫什么   叫ModelAndView f-sm-17....使用适配器找到相应的业务类,在进业务类时进行数据封装,在封装前可能会涉及到类型转换,执行完业务类后使用ModelAndView进行视图转发,数据放在model中,用map传递数据进行页面显示。

    64020
    领券