首页 > 其他分享 >ejb3 小结3

ejb3 小结3

时间:2022-12-05 10:06:16浏览次数:42  
标签:getName ctx System ejb3 println 小结 public man


  这次小结下拦截器

 

接口

import javax.ejb.Remote;
@Remote
public interface IMan {
String getName();
void qq();
void mm();
String sayHelp();
}

实现:

import javax.ejb.Stateful;
import javax.interceptor.Interceptors;/**
* 具有聊QQ和泡MM以及求救三个行为的人对象,还有一个用户名属性。
* @author BeanSoft
*/
@Stateful
@Interceptors({FBI.class})
public class Man implements IMan {
private String name = "BeanSoft";

public void qq() {
System.out.println("我在聊QQ");
}

public void mm() {
System.out.println("我在泡MM");
}

public String sayHelp() {
return "救我,我是" + getName();
} public String getName() {
return name;
}
}public class FBI {
@AroundInvoke
public Object before(InvocationContext ctx) throws Exception {
Man man = (Man)ctx.getTarget();
System.err.println("FBI 发现" + man.getName() + "即将正在进行 " +
ctx.getMethod().getName() + " 活动。");
// 禁止张三泡MM
if(ctx.getMethod().getName().equals("mm")) {
System.err.println("FBI 将阻止 " + man.getName() + " 泡MM。");
} else if(ctx.getMethod().getName().equals("sayHelp")) {
System.err.println("FBI 将欺骗 " + man.getName() + " 的朋友告诉他们他很好。");
return "我是 " + man.getName() + " ,我现在过的很好。";
} else {
// proceed() 方法将使原来的方法能够继续执行
Object object = ctx.proceed();
System.err.println("FBI 发现" + man.getName() + "已经完成了 " +
ctx.getMethod().getName() + " 活动。");

return object;
}
return null;
}

JSP页面的拦截测试:

<%
javax.naming.InitialContext ctx = new javax.naming.InitialContext();
interceptor.IMan man = (interceptor.IMan) ctx.lookup("Man/remote");
man.qq();
man.mm();
System.out.println(man.sayHelp());
%>

 

标签:getName,ctx,System,ejb3,println,小结,public,man
From: https://blog.51cto.com/u_14230175/5911323

相关文章

  • spring学习小结之:hibernatetemplate,过度封装?
    边学spring,突然发现之前spring与hibernate结合的方式可以更厉害地封装,那就是用hibernateTemplate了,只需要改边userdao.java如下importorg.springfr......
  • spring mvc3及mvc 3.2中的异常处理小结
    在springmvc3中,处理异常的是试用exceptionresolver去做异常,先来个简单DEMO看下:1)自定义异常类publicclassSpringExceptionextendsRuntime......
  • JSP 2.0中函数式标签库小结
     一直十分喜欢jsp2.0的,其中自觉对jsp2.0的标签库认识不够,故学习之,在学习中,发现在标签库中,有一类可以被称为函数式标签库的标签,其功能主要是通过EL(表达式语言)对静态函数方......
  • spring 3 jdbc常用小结
    spring3的jdbc跟springmvc搭配起来挺好用的,本文试着小结其主要使用方法,并举出spring3.3.2中的一些信变化进行解析1)在dao中注入jdbctemplate,然后......
  • spring mvc中的拦截器小结
    在springmvc中,拦截器其实比较简单了,下面简单小结并demo下。preHandle:预处理回调方法,实现处理器的预处理(如登录检查),第三个参数为响应的处理器(如我们......
  • CompletionService 使用小结
    本文为博主原创,转载请注明出处:实现异步任务时,经常使用 FutureTask来实现;一个简单的示例代码如下:publicstaticvoidmain(String[]args)throwsExecutionExcept......
  • 2022.11.18 模拟赛小结
    2022.11.18模拟赛小结目录2022.11.18模拟赛小结更好的阅读体验戳此进入赛时思路T1CodeT2CodeT3CodeT4Code正解T1CodeCodeT2CodeT3T4UPD成天写ODT,然后T2想了半天怎么维......
  • 2022.11.22 模拟赛小结
    2022.11.22模拟赛小结目录2022.11.22模拟赛小结更好的阅读体验戳此进入赛时思路T1CodeT2CodeT3CodeT4Code正解T2CodeT3CodeT4CodeUPD更好的阅读体验戳此进入赛时思路......
  • 2022.11.10 模拟赛小结
    2022.11.10模拟赛小结目录2022.11.10模拟赛小结更好的阅读体验戳此进入赛时思路T1CodeT2T3T4Code正解T2T3T4CodeUPD更好的阅读体验戳此进入赛时思路T1原题LG-P3970......
  • 2022.10.28 模拟赛小结
    2022.10.28模拟赛小结目录2022.10.28模拟赛小结更好的阅读体验戳此进入赛时思路T1CodeT2T3T4正解T1CodeT2T3T4UPD最惨的一场,基本所有题都挂了,最终得分$20\texttt{pts......