成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Spring AOP使用心得

開發(fā) 后端
本文介紹Spring AOP使用心得,以及在Spring的xml配置文件中加入新的schema。

畢竟是***次使用Spring AOP,按照Reference中的介紹,準備使用Annotation來完成對AOP的配置。來看一下我做的步驟:

一、需要使用Spring2.0的jar包,現(xiàn)在已經(jīng)發(fā)布正式版的2.0了,可以從http://www.springframework.org/上下載到***的2.0版本。加入到項目的classpath中去。

二、需要在配置文件中啟用新的spring2.0的schema或者是dtd。  

1、在Spring的xml配置文件中加入新的schema:

  1. <beans xmlns="http://www.springframework.org/schema/beans" 
  2.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  3.     xmlns:aop="http://www.springframework.org/schema/aop" 
  4.     xmlns:tx="http://www.springframework.org/schema/tx" 
  5.     xsi:schemaLocation="http://www.springframework.org/schema/beans  http://www.springframework.org/schema/beans/spring-beans-2.0.xsd  
  6.            http://www.springframework.org/schema/aop                           http://www.springframework.org/schema/aop/spring-aop-2.0.xsd  
  7.            http://www.springframework.org/schema/tx                                
  8.     default-autowire="byName" default-lazy-init="true"> 

2、“如果使用Java 5的話,推薦使用Spring提供的@AspectJ切面支持,通過這種方式聲明Spring AOP中使用的切面。 "@AspectJ"使用了Java 5的注解,可以將切面聲明為普通的Java類。”——Spring reference

3、為了使用Spring AOP的Annotation,在配置文件中加入<aop:aspectj-autoproxy />。

4、編寫切面類:

  1. public class ArticleRemoteAccountsService {  
  2.    
  3.     /** *//**  
  4.      * 在發(fā)帖成功之后,給用戶銀幣賬戶沖值  
  5.      *   
  6.      * @param arg  
  7.      * @throws AccountsException  
  8.      * @throws InstantiationException  
  9.      * @throws IllegalAccessException  
  10.      */  
  11.     @After("execution(* com.company.ArticleManager.saveArticle(..))"  
  12.             + " && args(arg)")  
  13.     public void exSilByPost(Article arg) throws AccountsException,  
  14.             InstantiationException, IllegalAccessException {  
  15.         if (arg.getLastUpdateTime() == null  
  16.                 && arg.getArticleByParentId() == null  
  17.                 && arg.getArticleByRootId() == null) {  
  18.             // TODO 主題帖  
  19.         } else if (arg.getLastUpdateTime() == null  
  20.                 && (arg.getArticleByParentId() != null || arg  
  21.                         .getArticleByRootId() != null)) {  
  22.             // TODO  回帖  
  23.         }  
  24.     }  
  25. }  

這里需要注意的是使用Annotation的Poincut語法,execution(modifiers-pattern? ret-type-pattern declaring-type-pattern? name-pattern(param-pattern) throws-pattern?)這里就不累訴了。同時要注意的如何得到參數(shù)的問題,寫法參考如上。

 

【編輯推薦】

  1. Spring Batch 2.0的新特性
  2. 簡單介紹Spring osgi
  3. Spring OSGi的整合
  4. 在Spring中配置Glassfish JPA
  5. 解決Spring2.0向spring2.5遷移的問題
責任編輯:佚名 來源: blogjava
相關推薦

2011-01-19 14:57:09

Thunderbird

2011-01-07 11:14:17

Nginx負載均衡負載均衡

2011-09-01 10:16:43

JQuery Mobi

2010-02-01 10:15:07

C++ TinyXML

2010-03-02 17:33:49

Android 2.0

2009-08-28 10:08:15

C# using語句

2009-06-26 16:12:08

ThickboxjQuery

2009-08-11 11:42:50

Ruby使用心得

2009-08-31 10:00:07

C#靜態(tài)變量

2011-03-15 11:05:03

2010-08-06 11:12:38

FlexCairngorm框架

2009-08-26 13:31:21

JavaScript使

2011-04-20 13:59:28

愛普生V100掃描儀

2010-06-01 13:42:37

TortoiseSVN

2016-10-07 15:45:59

2022-06-27 19:16:53

Obsidian工具

2020-03-16 08:13:58

SQL性能問題

2009-07-31 18:37:45

ASP.NET MVC

2011-04-28 16:20:18

全能一體機使用心得

2011-07-12 14:38:35

XenServer 5
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩av免费看| 欧美激情精品久久久久 | 久久久久久免费精品一区二区三区 | 日韩五月天 | 欧美精品一区二区三区在线播放 | 久久久国产一区 | 一区二区三区四区国产 | 久久综合av| 天天夜夜操 | 欧美一级片在线看 | 久久国产精99精产国高潮 | 一区二区三区免费观看 | 在线观看中文字幕 | 精产国产伦理一二三区 | 国产麻豆乱码精品一区二区三区 | 国产色 | 97国产精品视频人人做人人爱 | 极品粉嫩国产48尤物在线播放 | 国产欧美精品一区二区色综合朱莉 | 黑人巨大精品欧美一区二区一视频 | 中文二区 | 亚洲一区二区三区在线免费观看 | 亚洲精品在线国产 | 日韩久久精品电影 | 黄色成人在线网站 | 国产激情精品 | 激情五月婷婷丁香 | 成人免费视频网站在线看 | 国产成人精品一区二区三区 | 色综合一区二区 | 日韩免费1区二区电影 | av网站在线免费观看 | 91精品国模一区二区三区 | 亚洲福利一区二区 | www.日本精品 | 国产在线观看 | 五月婷婷丁香婷婷 | 国产精品一区免费 | 亚洲精品在线免费播放 | www国产精品 | 日韩电影一区 |