<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>O!Hacker Blog &#187; ioc</title>
	<atom:link href="http://ohacker.com/tag/ioc/feed/" rel="self" type="application/rss+xml" />
	<link>http://ohacker.com</link>
	<description>anything to hack</description>
	<lastBuildDate>Thu, 12 Aug 2010 05:17:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Spring Annotation(AOP篇)</title>
		<link>http://ohacker.com/2009/07/28/spring-annotation/</link>
		<comments>http://ohacker.com/2009/07/28/spring-annotation/#comments</comments>
		<pubDate>Tue, 28 Jul 2009 16:59:24 +0000</pubDate>
		<dc:creator>Tony</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[annotation]]></category>
		<category><![CDATA[ioc]]></category>
		<category><![CDATA[spring]]></category>

		<guid isPermaLink="false">http://localhost/blog/?p=24</guid>
		<description><![CDATA[本文主要简单了解一下使用Java annotation的情况下，先介绍一下比较主流和简单的用法，Spring对AspectJ的支持。在ApplicationContext中加入关于AOP的命名空间，具体内容见Spring 使用AspectJ来配置AOP.首先明确一点，用作通知（Advice）的类也应该受到ApplicationContext的管理，之后再使用AspectJ的标签来管理通知动作，见代码： //import ... @Component @Aspect public class Alert &#123; @Before&#40;&#34;execution(* get*(..))&#34;&#41;//方法运行前通知 public void show&#40;&#41; &#123; System.out.println&#40;&#34;before&#34;&#41;; &#125; @After&#40;&#34;execution(* get*(..))&#34;&#41;//最终通知 public void show2&#40;&#41; &#123; System.out.println&#40;&#34;after&#34;&#41;; &#125; @Pointcut&#40;&#34;execution(* get*(..))&#34;&#41; public void afterReturn&#40;&#41;&#123;&#125; //方法返回值通知，注意这个通知需要与@Pointcut配合使用 @AfterReturning&#40;pointcut=&#34;afterReturn()&#34;,returning=&#34;value&#34;&#41; public void returning&#40;Object value&#41;&#123; System.out.println&#40;&#34;returning&#34;&#41;; &#125; @AfterThrowing&#40;pointcut=&#34;afterReturn()&#34;,throwing=&#34;ex&#34;&#41; //异常通知，这个通知复用了afterReturn的pointcut。当然你也可以使用新的pointcut public void doRecoveryActions&#40;Exception ex&#41;&#123; //... &#125; @Around&#40;&#34;afterReturn()&#34;&#41; //环绕通知。真正的方法实际上是joinPoint.proceed(); public Object doSomeForAround&#40;ProceedingJoinPoint joinPoint&#41; throws [...]]]></description>
		<wfw:commentRss>http://ohacker.com/2009/07/28/spring-annotation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
