博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Struts2--标签
阅读量:6344 次
发布时间:2019-06-22

本文共 3875 字,大约阅读时间需要 12 分钟。

通用标签:property, set, bean,include,param,debug

控制标签: if elseif else, iterator, subset

UI标签:theme, 默认simple xhtml, css_xhtml, ajax

AJAX标签:补充

$#%的区别

$用于i18n, struts配置文件

#取得actionContext的值

%将原本文本属性解析为ognl, 

index.jsp:

<%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%><%String contextPath = request.getContextPath(); %>
Insert title here 访问属性 tags

tagsAction:

package com.bjsxt.struts2.tags;import com.opensymphony.xwork2.ActionSupport;public class TagsAction extends ActionSupport {	private String password;	private String username;	public TagsAction() {	}	public String execute() {		this.addFieldError("fielderror.test", "wrong!");		return SUCCESS;	}		public String getPassword() {		return password;	}	public String getUsername() {		return username;	}	public void setPassword(String password) {		this.password = password;	}		public void setUsername(String username) {		this.username = username;	}	}

struts.xml:

/tags.jsp

tags.jsp:

	
  1. property:
  2. property 取值为字符串:
  3. property 设定默认值:
  4. property 设定HTML:

变量名称太长等换名时使用 set的变量 ,如果默认scope是request的话,会放在actionContext里, 不用使用#parameters 可以使用#或者#request. 的方式取出
不写scope, 就说默认action和request, 如果指定其他scope, 就不能用action取值
  •  set 设定adminName值(默认为request 和 ActionContext):
  • set 从request取值:
  • set 从ActionContext取值:
  • set 设定范围: page
  • set 从相应范围取值: <%=pageContext.getAttribute("adminPassword") %>
  • set 设定var,范围为session:
  • set 使用#取值:
  • set 从相应范围取值:

  • 如果set标签指定scope的话, 除了默认request, 其他的都要从指定范围里取值.不会放入actionContext

    request的话, actionContext里有, 通过request也可以取. 

     
  • bean 定义bean,并使用param来设定新的属性值:
  • bean 查看debug情况:
        
    拿出值:

  •   尽量不用 <%@ include> 静态包含
    动态包含
  • include _include1.html 包含静态英文文件
  • include _include2.html 包含静态中文文件
  • include _include1.html 包含静态英文文件,说明%用法
          

  • $,#,%区别:

    $: 用于i18n和struts配置文件

    #:取得actionContext的值

    %:将原本文本属性解析为ognl, 对于本来就是ognl的不起作用 

     
  •   url里加入 &age=9&age=20, 会写入parameters里, 但是是个数组 因为可以传入多个age的值.

    <li>if elseif else:

      age = <s:property value="#parameters.age[0]" /> <br />
      <s:set var="age" value="#parameters.age[0]" />
      <s:if test="#age < 0">wrong age!</s:if>
      <s:elseif test="#age < 20">too young!</s:elseif>
      <s:else>yeah!</s:else><br />
      <s:if test="#parameters.aaa == null">null</s:if>
    </li>
    <hr />

    可以遍历collections, map, enumeration, iterator, array 遍历集合:
  • 遍历集合:
    |
  • 自定义变量:

  • 自定义变量:
    |    
  • 使用status属性:

  • 使用status:
    |
  •   遍历过的元素总数:<s:property value="#status.count"/> |

      遍历过的元素索引:<s:property value="#status.index"/> |
      当前是偶数?:<s:property value="#status.even"/> |
      当前是奇数?:<s:property value="#status.odd"/> |
      是第一个元素吗?:<s:property value="#status.first"/> |
      是最后一个元素吗?:<s:property value="#status.last"/>
      <br />
    </s:iterator>
    </li>

    map:

  •   
    |
      
  • map var:

  •   
    |
      
  •  

     

     

     theme, 默认是xhtml, 配置文件是default.properties

    可以在struts.xml里面j加一句话改配置: 可以改成 simple, css_html, ajax

    fielderror字符前面会显示一个圆圈,解决方法:

    1. 在src下新建文件夹template->simple->fielderror.ftl

    内容copy jar文件里的lib,core,template,simple下的fielderror.ftl, 然后删掉里面的<ul></ul>, <li>,</li>

    2. 自定义一个主题,并在struts.xml里配置  value="自定义主题"

    3, 最简单的方法:

    在jsp里写入css样式:

    .formFieldError ul li{	list-style-type: none   }用CSS控制显示	

      

    链接:http://pan.baidu.com/s/1ntoldjV 密码:y5zo

     

      

     

    转载于:https://www.cnblogs.com/wujixing/p/5175732.html

    你可能感兴趣的文章
    以自动化测试撬动遗留系统
    查看>>
    网络安全初创公司存活之道
    查看>>
    《图解CSS3:核心技术与案例实战》——1.2节浏览器对CSS3的支持状况
    查看>>
    《Android应用开发》——2.4节应用类
    查看>>
    继 One Step 后,锤子科技 Big Bang 正式开源
    查看>>
    《淘宝店铺经营管理一册通》一一1.4 商品发布
    查看>>
    《数据科学:R语言实现》——2.5 使用Excel文件
    查看>>
    《NTFS文件系统扇区存储探秘》——1.6 数据区DATA
    查看>>
    《第一桶金怎么赚——淘宝开店创业致富一册通》一一1.3 选择创业的行业
    查看>>
    《淘宝店铺设计装修一册通》一2.5 抠图工具的简单运用
    查看>>
    《Docker技术入门与实战》——1.2 为什么要使用Docker
    查看>>
    《音乐达人秀:Adobe Audition实战200例》——实例4 收音机音乐节目转录到电脑里...
    查看>>
    《JavaScript应用程序设计》一一3.1 过时的类继承
    查看>>
    Android ADT+SDK查看是否成功、如何卸载
    查看>>
    千万PV是什么意思?
    查看>>
    Amazon 推出 API 网关使用计划
    查看>>
    互联网流量超出路由器上限 或致全球断网
    查看>>
    《基于ArcGIS的Python编程秘笈(第2版)》——2.5 限制图层列表
    查看>>
    GNOME 地图 3.20 加入更多新特性 可用性得到加强
    查看>>
    《代码整洁之道:程序员的职业素养》导读
    查看>>