struts2的属性驱动

Struts2中属性驱动与模型驱动 属性驱动: 阅读详情

属性驱动:将表单的提交数据与java基本类型数据相对应

类似springmvc的表单绑定,可以与javabean 的属性对应如

实体类:

package com.chet.domain;

public class Product {

    String productID;
    String productName;
    String productPrice;
    public String getProductID() {
        return productID;
    }
    public void setProductID(String productID) {
        this.productID = productID;
    }
    public String getProductName() {
        return productName;
    }
    public void setProductName(String productName) {
        this.productName = productName;
    }
    public String getProductPrice() {
        return productPrice;
    }
    public void setProductPrice(String productPrice) {
        this.productPrice = productPrice;
    }

    public String toString()
    {
        return this.getProductID()+this.getProductName()+this.getProductPrice();
    }

}

action类:这里定义了一个product实体 在请求提交到这个Action的时候会通过setter实例这个实体。所以必须有setter 与getter方法、

package com.chet.action;

import java.util.ArrayList;
import java.util.List;

import javax.servlet.http.HttpServletRequest;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.struts2.ServletActionContext;

import com.chet.domain.Product;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class TestAction extends ActionSupport {
    /**
     * 
     */
    private static final long serialVersionUID = 1L;

    private Product product;

    private static Logger logger = LogManager.getLogger(TestAction.class.getName());
    @Override
    public String execute() throws Exception {
        System.out.println("test -------------------");

        logger.info("无奈发生的");

        return SUCCESS;
    }


    public String ognlTest()
    {
        System.out.println(" test start-------------------");
        ActionContext ctx = ActionContext.getContext();
        ctx.getApplication().put("testFirst", "我是applicatio");
        ctx.getSession().put("test", "我是session");


        HttpServletRequest request = ServletActionContext.getRequest();
        request.setAttribute("test", "我是request");


        return SUCCESS;
    }


    public Product getProduct() {
        return product;
    }


    public void setProduct(Product product) {
        this.product = product;
    }
}

jsp页面

<p>test OGNL</p>
    <s:property value="#request.test"/>
    <s:property value="#session.test"/>
    <s:property value="#application.test"/>

    <s:property value="product.productName"/>
    <s:property value="product.productID"/>
    <s:property value="product.productPrice"/>

通过浏览器访问http://localhost:8080/SSH_Test/TestAction_ognlTest.action?product.productName=fsdf&product.productID=11将会在网页上打印出pruduct的属性值。

如果通过form表单提交则

<input type="text" name="product.productID" value=""/>
<input type="text" name="product.productName" value=""/>

如果使用上面的代码,请注意struts的配置文件,这里主要是通过通配符来访问到Action里面的方法 ,具体请参考我的文章 —struts2通配符

DeepSeek R1-32B医疗大模型的完整微调实战分析(全码版) 【代码】DeepSeek R1-32B医疗大模型的完整微调实战指南(全码版) 阅读详情

相关推荐

树莓派IgH EtherCAT主站部署与实时内核调优实战

本文详细介绍了在树莓派上部署开源IgH EtherCAT主站并进行实时内核调优的完整实战流程。通过编译实时内核(RT-Preempt)、交叉编译IgH主站、系统集成配置及性能优化,实现了低成本、高定制的工业控制解决方案,有效满足了EtherCAT通信对微秒级实时性的严苛要求。

weixin_29166013的博客 299

struts2 接受参数的两种方式(属性驱动和模型驱动)

第一种:属性驱动 (1)基本数据类型属性 前端jsp页面的表单的属性名要和java里业务处理Action的属性名匹配,要有get和set方法(不然参数是无法传递到Action中,前端的属性值是通过setter方法注入到Action中) 例子: 前端jsp页面: body> <form action=" "> 用户名: <input type="...

F13253524870的博客 305

NLP DAY1: 文本数据读取

txt 文本数据的读写CSV 及 Excel 文本数据的读写更多的 DataFrame 操作数据规模太大怎么办相信通过本次实验的学习,同学们可以游刃有余地面对各种数据文件了。在接下来的实验中,我们将开始真正地开启自然语言处理之旅,开始认识并熟悉一些常见的针对文本本身的预处理操作。

feifeikon的博客 1061

struts2属性驱动和实体驱动的用法讲解

第一个 struts 程序  关键步骤:1. 导入jar包。把struts2所需要的8个jar,放入lib里面,并biud Path到项目中。2. 新建一个aciton,重写execute方法,如:注:execute是struts默认执行的方法,类似于servlet中的serve方法;return返回的是一个字符串标识,用来指向已有的result结果集。3.  在src目录下面新建一个struts...

Ronin_hu的博客 690

【面试经验】大疆笔试-计算机视觉算法B卷

3、a=np.random.randn(3,3) b=np.random.randn(3,1) ,那么c=a*b的维度应该是:*是元素乘法或者torch.mul,@才是矩阵乘法或者torch.matmul,不会触发广播机制;8、将分辨率降低一半时,精标定内参(fx、fy、cx、cy、k1、k2、k3)焦距、光心、畸变系数将分别变成(fx、fy、cx/2、cy/2、k1、k2、k3),只能搜到光心变成一半,畸变系数不变。12、KLT算法在频闪光源、重复纹理、高速机动、环境照度低的情况下效果显著下降。

litterfinger的博客 1448

再不入坑就晚了,深度神经网络概念大整理,最简单的神经网络是什么样子?

再不入坑就晚了,深度神经网络概念大整理,最简单的神经网络是什么样子?

我是香菜 3万+

strut2接收参数的三种方式(属性驱动\对象驱动\模型驱动)说明

strut2接收参数的三种方式(属性驱动\对象驱动\模型驱动)说明

播客的博客 4770

Python数据分析师必备:OpenClaw开启Pandas清洗脚本自动生成新时代

本文介绍了OpenClaw这一AI智能体框架如何帮助Python数据分析师高效完成数据清洗工作。OpenClaw通过自然语言交互理解用户需求,自动生成Pandas清洗脚本,显著提升了数据清洗效率,降低了技术门槛。文章详细阐述了OpenClaw的工作原理、实战应用步骤及其在电商、金融、医疗等行业中的成功案例。相比传统手动编写脚本方式,OpenClaw能快速生成规范准确的清洗代码,使数据分析师能更专注于业务洞察。该工具为数据驱动决策提供了可靠支持,是数据分析领域的重要创新。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 230

Struts2 - 属性驱动与模型驱动 中应该注意的问题。

Struts2 - 属性驱动与模型驱动 中应该注意的问题: 属性驱动例子代码如下: import com.opensymphony.xwork2.ActionSupport; public class LoginAction extends ActionSupport{ private String username; private String password; @Ove

看不过的黑工坊 2979

DCM07-诊断服务EcuReset ($11 )的配置和实现

文章目录1 诊断服务EcuReset ($11 )1.1 概述1.2 诊断模式声明组1.3 代码实现1.4 配置参数 传送门 ==>> AutoSAR实战系列300讲「糖果Autosar」总目录 1 诊断服务EcuReset ($11 ) 1.1 概述 该服务实现了 ECU 内的复位功能,协议的具体理论讲解请参考「FlashBootloader03【电控单元复位服务($11)】」。在接收到UDS 服务 0x11 的请求时,DCM 模块应触发 ModeDeclarationGroupPrototy

2066

FPGA开发中的操作系统

在FPGA开发中,操作系统起着关键的作用,它负责任务管理、资源管理、中断处理和设备驱动程序等功能。在实际的FPGA开发中,可以选择使用现有的操作系统,如MicroC/OS-II、FreeRTOS等,或者根据具体需求自行设计和开发操作系统。在FPGA(可编程逻辑门阵列)开发中,操作系统扮演着关键的角色,为硬件设计师提供了一种有效的方式来管理资源、调度任务并实现系统级功能。本文将介绍FPGA开发中的操作系统概念,并提供一个简单的示例代码来说明如何在FPGA平台上实现一个基本的操作系统。

CqpFsharp的博客 1161

Struts2属性驱动与模型驱动

Struts2属性驱动与模型驱动 为什么要使用属性驱动和模型驱动 struts2与struts很大的不同点在于,struts的execute方法提供了HttpServletRequest和HttpServletResponse方法在获取客户端提交的数据信息的时候需要使用HttpServletRequest的getParameter()方法,并且还需要进行必要的数据类型转换。如何客户端提交的数据

博学而笃志,切问而近思 1万+

在 RAP 里把编号这件事做得既优雅又合规:Early Numbering 与 Late Numbering 的落地指南

本文探讨了 SAP RAP 框架中的三种主键编号策略及其适用场景。文章首先指出传统 ABAP 应用中主键处理的局限性,详细分析了早期编号(外部/内部)和延迟编号的差异,强调延迟编号在避免业务断号方面的优势。通过 Partner 业务对象案例,文章演示了延迟编号的实现方法,包括行为定义配置、保存类实现和编号分配逻辑。同时指出测试中常见的校验陷阱,并提醒生产环境应避免简单的 MAX+1 方案,建议采用原子取号机制确保并发安全。全文从业务合规性和技术实现两个维度,为 RAP 应用的编号策略选择提供了实用指导。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1849

Struts2属性驱动和模型驱动详解

属性驱动,就是在Action中定义的是和表单中对应的一个个属性,每个属性都有对应的get/set方法。当表单提 交到Action后,Struts2将会自动将根据表单的name属性调用Action中相应的属性setter,去自动赋值。     模型驱动,就是事先定义一个模型即Model,将表单传递过来的数据封装成一个Model对象后,再传递给Action。 当表单提交到Action

思想上移,行动下移 1079

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Struts2 属性驱动

Struts2 属性驱动

zys_1997的博客 1290

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Struts2之属性驱动

1 属性驱动 表单文本框name值和action中的属性名一致 index.jsp         用户名:     密码:           action类 public class UserAction extends ActionSupport { //属性驱动所需属性     private String name;     private Stri

hello world 645

STRUTS2的属性驱动

STRUTS2的属性驱动, action类中:    private String ddd;    public String getDdd() {        return ddd;    }    public void setDdd(String ddd) {        this.ddd = ddd;    } action执行完跳到的页面:${ddd}

q124113的专栏 471

Struts2 - 属性驱动与模型驱动概念

Struts2 - 属性驱动与模型驱动   一、为什么要使用属性驱动和模型驱动?          :struts2与struts很大的不同点在于,struts的execute方法提供了HttpServletRequest和       HttpServletResponse方法在获取客户端提交的数据信息的时候需要使用HttpServletRequest的     g

KJ345002013的专栏 898

Struts2的模型驱动、属性驱动的理解

因为在struts1的版本中,属性的拦截以及控制的处理是被封装为两个对立的ActionForm、Action来获取HttpServerRequest的参数、控制访问的MAPPING的。而在Struts2中我们可以直接通过Action来获取请求参数,并把处理的资源映射返回给stru

Java高知社区 7330

struts2的属性驱动和模型驱动的区别

1.Struts2的属性驱动和模型驱动所用的jsp页面相同,区别在Action页面 Struts2的属性驱动指的是在action中JSP页面的每一个form中的name都对应在action中有一个属性与之对应。 .jsp页面代码:             账户:             密码:user.upass">

fkngl的博客 473

Struts2浅析 之 模型驱动与属性驱动

1.Struts2的属性驱动. Struts2的属性驱动指的是在action中JSP页面的每一个form中的name都对应在action中有一个属性与之对应。看下面代码片段: Username: Password: Confirm: 这是一个最基本的用户注册的表单,它有三个数据要提

稚枭天卓 741

Struts2的属性驱动与模型驱动的区别

1.Struts2的属性驱动.Struts2的属性驱动指的是在action中JSP页面的每一个form中的name都对应在action中有一个属性与之对应。看下面代码片段:            Username:            Password:            Confirm:            

阿布客栈 8137

Struts2模型驱动和属性驱动

属性驱动 当你提交表单数据之后,struts2会自动将请求参数对应的值封装到你与请求参数名同名且生成了get,set方法的属性中,并将值set到request域中 在这个属性中,set方法是将值设置在属性中的方法,get方法是将属性值set到request域中的方法. 模型驱动 与属性驱动的基本原理差不多,只是将属性封装到了实体中,再从实体中取值 要实现模型驱动,要让这个Action类实

jingzhi1230的博客 429

Struts2 - 属性驱动与模型驱动

Struts2 - 属性驱动与模型驱动 一、为什么要使用属性驱动和模型驱动? :struts2与struts很大的不同点在于,struts的execute方法提供了HttpServletRequest和 HttpServletResponse方法在...

147
上一篇: spring整合struts2
下一篇: springmvc-mybatis整合
cst_code
博客等级 码龄10年 4粉丝 59原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值