Ognl表達式(-), 前期準備

  • ㈠下載Ognl的jar包,源碼及它所依賴的jar包:

http://grepcode.com/snapshot/repo1.maven.org/maven2/ognl/ognl/2.7.3/java

在這個頁面中能夠找到它所依賴的jar包:maven

  • Maven-Central / jboss / javassist
  • Maven-Central / junit / junit
  • Maven-Central / org.easymock / easymock
    2.3
  • JDK / jdk / openjdk

下載便可.ide

 

  • ㈡創建一個java project,並加入相關的jar包(略)過
  • ㈢建立一個簡單的helloworld程序,瞭解其基本過程:

 

  
  
  
  
  1. /** 
  2.  * Copyright (C) Skywares Information Technology, LTD.  
  3.  * All Rights Reserved. 
  4.  * 
  5.  * TestOgnl.java created on 2013-1-14 下午4:39:03 by hubert.guo  
  6.  */ 
  7. package com.skywares.ognl; 
  8.  
  9. import ognl.Ognl; 
  10. import ognl.OgnlException; 
  11.  
  12. /** 
  13.  * <pre> 
  14.  * Description 
  15.  * @TODO file description here 
  16.  *  
  17.  * @author hubert.guo 
  18.  * @since 1.0 
  19.  *  
  20.  * Change History 
  21.  * Date            Modifier        DESC. 
  22.  * 2013-1-14      hubert.guo         Initial version. 
  23.  * </pre> 
  24.  */ 
  25. public class TestOgnl 
  26.  
  27.     /** 
  28.      * @param args 
  29.      */ 
  30.     public static void main(String[] args) 
  31.     { 
  32.         try 
  33.         { 
  34.             Object result = Ognl.getValue("userName", new User("zhangSan",12)); 
  35.              
  36.             System.out.println(result.toString()); 
  37.         } 
  38.         catch (OgnlException e) 
  39.         { 
  40.             // TODO Auto-generated catch block 
  41.             e.printStackTrace(); 
  42.         } 
  43.  
  44.     } 
  45.  
  46.  
  47. class User 
  48.     private String userName; 
  49.  
  50.     private Integer age; 
  51.      
  52.     /** 
  53.      *  
  54.      */ 
  55.     public User(String userName, Integer age) 
  56.     { 
  57.         // TODO Auto-generated constructor stub 
  58.         this.userName = userName; 
  59.         this.age = age; 
  60.     } 
  61.  
  62.     /** 
  63.      * @return the userName 
  64.      */ 
  65.     public String getUserName() 
  66.     { 
  67.         return userName; 
  68.     } 
  69.  
  70.     /** 
  71.      * @param userName 
  72.      *            the userName to set 
  73.      */ 
  74.     public void setUserName(String userName) 
  75.     { 
  76.         this.userName = userName; 
  77.     } 
  78.  
  79.     /** 
  80.      * @return the age 
  81.      */ 
  82.     public Integer getAge() 
  83.     { 
  84.         return age; 
  85.     } 
  86.  
  87.     /** 
  88.      * @param age 
  89.      *            the age to set 
  90.      */ 
  91.     public void setAge(Integer age) 
  92.     { 
  93.         this.age = age; 
  94.     } 
  95.  

 

並在35行設定斷點,關聯源代碼,以調試方式開始瞭解OGNL表達式的實現方式和原理.this

相關文章
相關標籤/搜索