struts2的OGNL表达式(三)
生活随笔
收集整理的這篇文章主要介紹了
struts2的OGNL表达式(三)
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1,訪問action基本屬性和實(shí)體對象,
2,訪問action集合/數(shù)組、訪問Map、訪問時(shí)運(yùn)算、訪問時(shí)調(diào)用方法、創(chuàng)建集合
3,訪問action的靜態(tài)屬性和方法
4,訪問其他5個(gè)就不說了,要加個(gè)#號引用即可
OGNLAction.java
package com.OGNL;import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map;import com.opensymphony.xwork2.ActionSupport;public class OGNLAction extends ActionSupport {private Integer id=1000; //基本類型 private String name="tuke"; private User user=new User(); //實(shí)體對象 private List<String> employeeList=new ArrayList<String>(); //Listprivate Map<String, String> employeeMap=new HashMap<String, String>(); //Map public static String str="this is static attribute"; //靜態(tài)屬性public String execute(){ //初始化實(shí)體對象 user.setName("tuke"); user.setSex("nan"); user.setAge("18");//初始化集合數(shù)據(jù) employeeList.add("胡東"); employeeList.add("李成"); employeeList.add("張宇"); //初始化Map數(shù)據(jù) employeeMap.put("黃藥師", "工資5000"); employeeMap.put("劉寒", "工資8000"); employeeMap.put("江山", "工資7000"); return "success"; } //靜態(tài)方法public static String getstatic(){return "this is action static result";}public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public User getUser() { return user; } public void setUser(User user) { this.user = user; }public List<String> getEmployeeList() {return employeeList;}public void setEmployeeList(List<String> employeeList) {this.employeeList = employeeList;}public Map<String, String> getEmployeeMap() {return employeeMap;}public void setEmployeeMap(Map<String, String> employeeMap) {this.employeeMap = employeeMap;} }
showresult.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ taglib prefix="s" uri="/struts-tags"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><title>演示結(jié)果</title></head> <body><h1>OGNL訪問演示</h1><h2>1,基本屬性</h2><h3>ID:<s:property value="id"/></h3><h3>姓名:<s:property value="name"/></h3><h2>2,Action中的對象</h2><h3>user的姓名:<s:property value="user.name"/></h3><h3>user的性別:<s:property value="user.sex"/></h3><h3>user的年齡:<s:property value="user.getAge()"/></h3><h2>3,list</h2> <h3>集合中的員工:<s:property value="employeeList[1]"/></h3><h2>4,Map</h2> <h3>Map中的員工工資:<s:property value="employeeMap.黃藥師"/></h3> <h2>5,訪問時(shí)運(yùn)算</h2> <h3>My Name:<s:property value="'My name is '+name"/></h3> <h2>6,訪問時(shí)調(diào)用方法</h2> <h3>MY NAME:<s:property value="name.toUpperCase()"/></h3> <h2>7,創(chuàng)建集合</h2> <h3>創(chuàng)建集合:<s:property value="{'a','b','c'}"/></h3> <h3>集合類型:<s:property value="{'a','b','c'}.getClass().getName()"/></h3> <h2>8,創(chuàng)建Map</h2> <h3>創(chuàng)建Map:<s:property value="#{'mm':'MM','nn':'NN'}"/></h3> <h3>Map類型:<s:property value="#{'mm':'MM','nn':'NN'}.getClass().getName()"/></h3><h2>9,靜態(tài)方法和屬性</h2> <h3>靜態(tài)方法:<s:property value="@com.OGNL.OGNLAction@getstatic()"/></h3><h3>靜態(tài)屬性:<s:property value="@com.OGNL.OGNLAction@str"/></h3></body> </html>
struts.xml
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd"> <struts><!-- 訪問action的靜態(tài)方法和屬性,一定要加上這兩句常量 --><constant name="struts.devMode" value="true"/><constant name="struts.ognl.allowStaticMethodAccess" value="true"></constant><package name="pp" extends="struts-default"><action name="ognlaction" class="com.OGNL.OGNLAction"><result name="success">/showresult.jsp</result></action></package> </struts>
總結(jié)
以上是生活随笔為你收集整理的struts2的OGNL表达式(三)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: struts2的OGNL表达式(二)
- 下一篇: 自定义拦截器和提供的拦截器