struts2标签

一、通用标签
1、数据标签

<h3>set</h3>
    <!-- 在ognl上下文的根对象中取result值,赋给test1 -->
    <s:set var="test1" value="result"/>
     ${test1 },${requestScope.test1 }
     
    <h3>property</h3>
    <!-- 取栈顶,取cal1(modle) -->
    <s:property />,
          
    <!-- 取根对象最上面的对象的属性 -->
    <s:property value="num1"/>,<!-- 根对象的属性 -->
          
    <!-- 取根对象的cal2对象的num1属性 -->
    <s:property value="cal2.num1"/>,
          
    <!-- 取非根对象cal2对象的num1属性值 -->
    <s:property value="#request.cal2.num1"/>
          
    <h3>push</h3>
    <!-- pushj就是将你需要的值放在栈顶,便于页面获取 -->
    <s:property />
    <s:push value="result">
    <s:property/>
    </s:push>
    <s:property/>
          
    <h3>action</h3>
    <!-- action通常用来请求后台,获取初始化数据的 -->
    <s:action name="tagAction" namespace="/sy" var="test2"></s:action>
    <s:property value="#test2.cal2"/>
       	  
    <h3>url</h3>
    <!-- url标签是为了地址所用, 注意与a标签区分-->
    <s:url namespace="/sy" action="tagAction" var="test3"></s:url>
    <s:property value="#test3"/>
    <a href='<s:property value="#test3"/>'>xxx</a>
    <s:a href="%{#test3}"></s:a>
          
    <h3>param</h3>
    <!-- 两种赋值方式:ongl表达式,字符串 -->
    <s:url namespace="/sy" action="tagAction" var="test4">
    	<s:param name="test5">aaa</s:param><!-- 字符串 -->
   	    <s:param name="test6" value="num1"></s:param><!-- 表达式 -->
    </s:url>
    <s:property value="#test4"/>
          
    <h3>date</h3>
    <%
          request.setAttribute("currentDate", new Date());
          request.setAttribute("currentDate", new Integer(70));
          request.setAttribute("currentDate", new String[]{"gay","ls","ww"});
   	%>
    <s:date name="#request.currentDate" format="yyy-MM-dd"/>
          
    <h3>debug</h3>
    <s:debug/>

输出结果:
在这里插入图片描述

2、控制标签

<h3>iterator/if/elseif/else</h3>
        <ul>
        	<s:iterator var="v" value="#request.names">
        		<li>
        			<s:property value="#v"/>
        		</li>
        	</s:iterator>
        </ul>
		<s:if test="#request.score >80">A
		</s:if>
		<s:elseif test="#request.score > 60">B</s:elseif>
		<s:else>C</s:else>

输出结果:
在这里插入图片描述

二、表单标签

<h3>form</h3>
          <h3>textfield</h3>
          <h3>radio</h3>
          <h3>select</h3>
          <h3>textarea</h3>
          <h3>hidden</h3>
          <h3>submit</h3>
          
        <s:form namespace="" action="">
        	<s:textfield label="姓名" name="uname"/>
        	<%-- <s:radio list="{'男','女'}" label="性别" name="sex" value="'男'"/> --%>
        	<s:radio list="#{1:'男',2:'女'}" label="性别" name="sex" value="2"/>
        	<s:select label="部门选择" name="deptName" list="#{1:'财务部',2:'公关部',3:'人事部' }"/>
        	<!-- 单选复选框,往后台传值是传布尔类型的 -->
        	<s:checkbox label="是否已婚" name="married"/>
        	<s:checkboxlist label="爱好" name="hobby" list="#{1:'篮球',2:'gay国',3:'蹲坑'"/>
        	<s:textarea label="个人简介" name="remark"/>
        	<s:hidden name="xxx" value=""/><!-- 相当于隐藏域 -->
        </s:form>

输出结果:
在这里插入图片描述

三、标签的属性类型说明
String 字符串
Boolean true|false
Object
Object/String 传过去字符串,但会被认为是一个OGNL表达式进行计算
%{str}:str会被强制转换成OGNL表达式计算
<s:a href="%{#url1}">bbb</s:a>

标签的公共属性
var 将值保存到上下文(ActionContext)中的一个key

小结:
1、value表达式讲解(与c标签作比较)
2、set中var没有放到值栈中
3、action 再发一次请求 是为了调后台模块代码,拿数据
4、url 没有发请求,只为了生成url链接地址
%{str}:str会被强制转换成OGNL表达式计算
以上最最重要的是通过debug标签去拿值

资源下载链接为: https://pan.quark.cn/s/22ca96b7bd39 在当今的软件开发领域,自动化构建与发布是提升开发效率和项目质量的关键环节。Jenkins Pipeline作为一种强大的自动化工具,能够有效助力Java项目的快速构建、测试及部署。本文将详细介绍如何利用Jenkins Pipeline实现Java项目的自动化构建与发布。 Jenkins Pipeline简介 Jenkins Pipeline是运行在Jenkins上的一套工作流框架,它将原本分散在单个或多个节点上独立运行的任务串联起来,实现复杂流程的编排与可视化。它是Jenkins 2.X的核心特性之一,推动了Jenkins从持续集成(CI)向持续交付(CD)及DevOps的转变。 创建Pipeline项目 要使用Jenkins Pipeline自动化构建发布Java项目,首先需要创建Pipeline项目。具体步骤如下: 登录Jenkins,点击“新建项”,选择“Pipeline”。 输入项目名称和描述,点击“确定”。 在Pipeline脚本中定义项目字典、发版脚本和预发布脚本。 编写Pipeline脚本 Pipeline脚本是Jenkins Pipeline的核心,用于定义自动化构建和发布的流程。以下是一个简单的Pipeline脚本示例: 在上述脚本中,定义了四个阶段:Checkout、Build、Push package和Deploy/Rollback。每个阶段都可以根据实际需求进行配置和调整。 通过Jenkins Pipeline自动化构建发布Java项目,可以显著提升开发效率和项目质量。借助Pipeline,我们能够轻松实现自动化构建、测试和部署,从而提高项目的整体质量和可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值