EJB拦截器

来源:互联网 发布:手机烧香软件 编辑:程序博客网 时间:2024/06/07 12:06
package remote;import javax.ejb.Remote;@Remotepublic interface Hello {String hello(String name);void crazyit();void exclude();}
package intercepter;import javax.interceptor.AroundInvoke;import javax.interceptor.InvocationContext;public class MyIntercepter {@AroundInvokepublic Object log(InvocationContext ctx) throws Exception{System.out.println("-----拦截器开始运行-----");Object ctv = ctx.proceed();if(ctv != null){ctv = "拦截器改变了返回值:" + ctv;}System.out.println("-----拦截器执行结束-----");return ctv;}}

package stateless;import intercepter.MyIntercepter;import javax.ejb.Stateless;import javax.interceptor.ExcludeClassInterceptors;import javax.interceptor.Interceptors;import remote.Hello;@Stateless@Interceptors(MyIntercepter.class)public class HelloImplRemote implements Hello{@Overridepublic String hello(String name) {System.out.println(name+",您好!现在时间是:"+new java.util.Date());return "crazy.org";}@Overridepublic void crazyit() {System.out.println("javaee 拦截器测试");System.out.println("最好的javaee测试");}@ExcludeClassInterceptors@Overridepublic void exclude() {System.out.println("被排除在拦截器方法之外");}}
</pre><pre name="code" class="html"><?xml version="1.0" encoding="UTF-8"?><ejb-jar version="3.1" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd">  <display-name>intercepter </display-name>  <enterprise-beans>            <session>                    <ejb-name>                            ejbref                        </ejb-name>          <ejb-local-ref>                            <ejb-ref-name>ejb3/Hello</ejb-ref-name>              <ejb-ref-type>Session</ejb-ref-type>              <local>local.ServiceLocal</local>                        </ejb-local-ref>                </session>        </enterprise-beans>   </ejb-jar>





1 0
原创粉丝点击