Struts2第十一篇【简单UI标签、数据回显】


Struts2UI标签

Sturts2为了简化我们的开发,也为我们提供了UI标签…也就是显示页面的标签…..

但是呢,Struts2是服务端的框架,因此使用页面的标签是需要在服务器端解析然后再被浏览器解析,最后才显示在页面上的。因此,它的性能是不够HTML标签好的…HTML直接就能够被浏览器解析

还有一点是:我们在写网页的时候,肯定是需要使用div+css的页面布局的。使用Struts2UI标签也没法干了….因此,除了有必要的话,才去使用Struts2UI标签

简单使用Struts2UI标签


<%--我们发现,Struts2UI标签用起来和HTML是差不多的--%>

<s:form id="form1" name="form1" method="POST" action="#">


    <%--输入框数据,lable就相当于我们以前外边写的数据--%>
    <s:textfield label="用户名" name="user.username"/>

    <%--密码框--%>
    <s:password label="密码" name="user.password"/>

    <%--提交按钮--%>
    <s:submit value="提交"/>

</s:form>

当我们查看源文件的时候,发现Struts2UI标签为我们自动加入了很多的标签

这里写图片描述

设置主题

上面已经说了,Struts2UI标签为我们自动加入了很多的标签,那有的时候,我们不想要,或者换一种风格的话,怎么办???

Struts2UI标签也为我们提供了“主题”这样的功能…

当我们在表单中设置theme属性为simple之后…我们发现源文件Struts2自动为我们添加的标签全没了。

这里写图片描述

如果我们想整个项目都是使用simple为主题的话,我们可以在配置文件中配置!


  <constant name="struts.ui.theme" value="simple"/>

数据回显

我们对数据回显也不会陌生,在使用EL表达式的时候就已经用过了数据回显了….那为啥数据回显放在Struts2标签这里讲解呢???因为Struts2也提供了数据回显的支持,并且,使用数据回显必须要使用Struts2的标签…

这里写图片描述

按照正常思路写数据回显

在Struts中按照正常思路写数据回显是这样的:

  • 把数据放到request域中存储,跳转到对应的JSP页面…
    public String login() {
        //把数据存储到域中
        Map<String, Object> request = ActionContext.getContext().getContextMap();

        request.put("username", "zhongfucheng");
        request.put("password", "123");

        return SUCCESS;
    }
  • JSP页面使用Struts2标签,设置value属性就可以进行数据回显了

<s:form id="form1" name="form1" method="POST" action="" >


    <%--输入框数据,lable就相当于我们以前外边写的数据--%>
    <s:textfield label="用户名" name="user.username" value="%{#request.username}"/>

    <%--密码框--%>
    <s:password label="密码" name="user.password"/>

    <%--提交按钮--%>
    <s:submit value="提交"/>

</s:form>
  • 效果:

这里写图片描述


Struts2提供的数据回显

其实,上面的代码已经实现了数据回显,但Struts2提供了一个更巧妙的方法

这里写图片描述

也就是说,Struts2可以直接在name中就可以实现数据回显了….要做的是:

  • 我们回显的数据在根元素下的,也就是保存在CompoundRoot中的数据【保存在根元素的数据不用使用#号就可以获取】

因此,我们把想要回显的数据放在CompoundRoot下

  • 直接放在值栈的数据就是根元素数据

        //得到值栈对象
        ValueStack valueStack = ActionContext.getContext().getValueStack();
        valueStack.set("username","zhongfucheng");
  • 在JSP就可以直接获取了

  <s:textfield label="用户名" name="username"/>
  • 效果:

这里写图片描述


<script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $('<ul/>').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('<li/>').text(i)); }; $numbering.fadeIn(1700); }); }); </script>
正点原子RK3588 Android 12镜像构建实战:从环境配置到烧录验证全指南 本文提供了一份基于正点原子RK3588开发板的Android 12镜像构建全流程实战指南。内容涵盖从Ubuntu环境配置、SDK获取、编译内核与系统,到最终镜像打包与烧录验证的完整步骤,并分享了内核驱动定制与系统优化技巧,旨在帮助开发者高效完成瑞芯微RK3588平台的系统定制工作。 阅读详情

相关推荐

大华事件检测智能服务器,大华股份:高速公路智能事件检测 解决方案

1方案背景随着我国基础设施建设的飞速发展,公路尤其是高速公路的总里程数年年攀升。交通运输部统计数据显示,截止2017年底全国公路总里程477.35万公里,其中高速公路13.65万公里,位居世界第一。高速公路的运营和管理作为全国交通管理的重要组成部分日益受到严峻挑战,交通拥堵和事故频发已成为高速公路上非常突出的问题。抛洒物、行人、车辆不规则行驶等事件是导致以上结果的重要原因。基于视频分析的高速公路智...

weixin_39523887的博客 1824

Struts2框架标签

Struts2框架标签

qq_42640067的博客 1155

EBS开发_离散工单创建API

--以下代码于20171213在TONY环境中实现 DECLARE     l_iface_rec    wip.wip_job_schedule_interface%ROWTYPE; --工单任务接口表     l_group_id     NUMBER;     l_returnstatus VARCHAR2(40);     l_errormsg     VARCHAR2(2000

蜗牛先生快跑的博客 2596

Struts2的表单标签

struts表单简单介绍

ccb1372098的博客 657

2025-03-21(DS复习): Databricks 的技术架构

Databricks 的技术架构以 ​为核心,构建了一套高度集成、可扩展且支持多云环境的统一分析平台。其架构设计注重存储与计算的深度融合,并通过丰富的服务层功能简化了数据工程、机器学习和数据科学的工作流。

baidu_24377669的博客 1429

手把手教你用Apollo Dreamview调试自动驾驶感知模块(附数据包下载)

本文详细介绍了如何使用百度Apollo平台的Dreamview工具调试自动驾驶感知模块,包括环境配置、数据加载、感知问题定位和多传感器融合调试等关键步骤。通过实战案例和参数调整技巧,帮助开发者快速掌握自动驾驶感知模块的调试方法,提升开发效率。

weixin_29084111的博客 142

struts2标签详解

struts2标签讲解 要使用Struts2的标签,只需要在JSP页面添加如下一行定义即可:<%@ taglib prefix="s" uri="/struts-tags"%> Struts2的标签共分为五大类: 一、逻辑控制标签 用于进行逻辑控制输出,主要分为以下几类: 1、条件标签:用于执行基本的条件流转 <c:if>拥有一个test属性,其表达式的值用来决...

weixin_34130269的博客 252

形位公差标注的常见误区与优化策略

本文深入解析机械设计中形位公差标注的常见误区与优化策略,特别针对NX2406用户提供实用技巧。从标注冗余、基准选择到公差值设定等五大误区入手,结合工程图实例展示如何提升标注精度与效率,帮助工程师避免常见错误,优化设计流程,确保零件功能实现与制造可行性。

info6的博客 246

Struts2:Struts2常用标签总结

Struts2:Struts2常用标签总结 一. Struts2的常用逻辑标签 1.1 property标签 功能说明:获取对象的属性值,目标对象默认位于ValueStack栈顶。 示例如下: &lt;s:property value="user.userName"/&gt; 标签属性: 名称 必选 类型 说明 value no Object 对象的属性名称,默认直接输出 Va...

王小二(海阔天空) 1008

如何手动打包Linux(麒麟系统)的Qt程序

Qt在windows上有自带的windeployqt来帮助打包程序,但是对于linux系统来说Qt并没有自带对应的打包程序。尽管存在开源的linuxdeployqt打包程序,但是在使用的过程中会出现很多问题,对于arm架构的系统来说需要编译并修改源码等等。确定你程序所需要的插件,然后将你使用的Qt版本对应的插件复制到plugins里边。你可以根据各个库后面的路径来找到对应的库,并将它们全部复制到之前创建的lib目录下。复制你的可执行程序到bin目录下(将 your_executable。

qq_45903233的博客 3611

4.图像sensor的特性和驱动解析

例子:sensor驱动自己提供操作曝光时间的函数和获取曝光时间的函数,然后将这个函数注册到ISP库和3A算法库,3A算法库根据外部光照强度计算出一个Sensor曝光时间的设置值,ISP库得到这个设置值,然后通过Sensor之前注册的回调函数,把这个值设置到Sensor的硬件寄存器中去,实现整个过程。是为 ISP 配置正确的输入时序。(1)修改驱动源码(sambashar\Hi3518E_SDK_V1.0.3.0\package\mpp\component\isp\sensor\ar0130)

weixin_53762042的博客 3571

struts数据回显

数据回显,必须要用struts标签! Action中: // 进入修改页面 public String viewUpdate() { // 模拟一个对象(先获取一个id,再根据id调用service查询,把查到的结果保存到域) User userInfo = new User(); userInfo.setUserName("...

weixin_30762087的博客 185

FreeRTOS系统从入门到精通万字保姆级教程

例如,在基于ARM的硬件平台上,可能需要实现针对ARM处理器的上下文切换代码,并确保FreeRTOS能够正确地响应和处理ARM架构的中断。需要注意的是,在删除任务之前应确保任务已经完成了其所有重要的工作,并且没有其他的任务依赖于它,以避免数据丢失或系统不稳定。任务的优先级设定是其中的关键环节。在复杂的系统中,可能会有大量的任务需要同时运行,而这些任务的重要性和紧急程度各不相同。这通常包括创建初始任务(这些任务将负责系统的初始化和后续任务的调度)、设置系统时钟(以确保任务的准时调度和延时功能的正确性)等。

大模型大数据攻城狮的专栏 2074

Struts2——UI标签、数据回显、资源国际化

文章目录一、UI标签1.1 含义1.2 使用1.2.1 默认主题1.2.2 设置主题二、数据回显2.1 按照正常思路写数据回显2.2 Struts2提供的数据回显2.3 checkboxlist标签三、资源国际化3.1 Servlet和Struts资源国际化区别3.2 Struts实现资源国际化3.2.1 写资源文件3.2.2 使用常量加载资源文件3.2.3 Struts标签使用国际化 一、UI标...

且行且珍惜 245

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Struts2框架——Struts的错误回显以及struts标签

Struts的错误回显以及struts标签 ​ 本次记录一下 Struts 的错误回显以及 struts 框架前端标签的简单用法 Struts 的错误回显 ​ 在 struts.xml 中的 result 标签中,把 name 属性的值设置成 input,这样当数据出现异常时,会自动回显到后边声明的 jsp 页面 <action name="register" class="com.l...

scfor333的博客 458

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Struts2的基础UI标签

jsp页面需先引入 <%@ taglib uri="/struts-tags" prefix="s"%> 1.form标签 <body> struts2标签的表单 <s:form> <s:textfield name="name" label="用户名"/> <s:password name="password" label=...

Double____C的博客 427

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

JAVA之中fn标签的复选框回显,Struts2【UI标签、数据回显、资源国际化】

Struts2UI标签Sturts2为了简化我们的开发,也为我们提供了UI标签...也就是显示页面的标签.....但是呢,Struts2是服务端的框架,因此使用页面的标签是需要在服务器端解析然后再被浏览器解析,最后才显示在页面上的。因此,它的性能是不够HTML标签好的...HTML直接就能够被浏览器解析还有一点是:我们在写网页的时候,肯定是需要使用div+css的页面布局的。使用Struts2UI...

weixin_39729115的博客 197

【Struts2六】ui标签之form标签及数据回显

ui标签:用在jsp页面用于回显数据的标签,这些标签是由框架定义的,用来替代原生的标签! ui标签有: s:checkboxlist list= "#pList" name="pid"  listKey="pid"  listValue="pname" >s:checkboxlist> 需要回显的数据要放在valueStack中,可以放在map栈中,也可以放在对象栈中; 放对象

温故而知新 3337

Struts2标签库全解密:打造高效、动态的Web界面

Struts2框架凭借其丰富的标签库,为开发者提供了构建动态、交互式Web界面的强大工具。本文将深入介绍Struts2标签库的核心概念、常见标签及其应用场景,帮助开发者充分利用这些标签优化Web应用的性能和用户体验。从基础的表单元素到复杂的UI组件,Struts2标签库覆盖了Web开发的各个方面,让开发者能够轻松实现数据展示、表单处理和用户交互等功能。无论你是初学者还是经验丰富的开发者,本文都将为你提供宝贵的指导和启示。

蓝鲸鱼计算机软件开发工作室 1874

【Struts2笔记整理九】Struts2标签库

Struts2 中提供一组非常好用的标签库,大家可以了解一下。 Struts2 的标签库文档的位置在:struts-2.3.24/docs/docs/tag-reference.html。 使用 Struts2 的标签库需要引入:

小异常的博客 786

Struts2中的标签库

Struts2中的标签库 1、通用标签 (1)判断标签:<s:if>,<s:elseif>,<s:else> <h3>if else标签的使用</h3> <s:set var="age" value="22" scope="request" /> <s:if test="#request.age >= 18"> 成年 </s:if> <s:else> 未成年 </s:e

pipizhen_的博客 364

Struts2标签

1 struts2的UI标签 导入struts2的标签库 <%@ taglib prefix="s" uri="/struts-tags"%> <div> 用户名: <s:textfield name="uname"></s:textfield> </div> <div> 密 码: <s:password name="upwd"></s:password> </di

光何 210

struts2常用的标签介绍

一:Struts2框架的标签库可以分为以下三类:     1.用户界面标签(UI标签):主要用来生成HTML元素的标签。 (1)表单标签:主要用于生成HTML页面的FORM元素,以及普通表单元素的标签。 (2)非表单标签:主要用于生成页面上的tree,Tab页等。    2.非用户界面标签(非UI标签):主要用于数据访问,逻辑控制。 (1)数据访问标签:主要包含用于输出值栈(ValueS

smile juan的专栏 4679
上一篇: Struts2第十篇【数据校验、代码方式、XML配置方式、错误信息返回样式】
下一篇: Struts2第十二篇【模型驱动】
Java3y
Java3y 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄9年 1万+粉丝 509原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值