`
xiaocong1001
  • 浏览: 5669 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

Ejb3.0--2

阅读更多
今天继续昨天的学习,session bean 的生命周期和拦截器(interceptor)
package com.chenzhq.ejb;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.ejb.Init;
import javax.ejb.Local;
import javax.ejb.PostActivate;
import javax.ejb.PrePassivate;
import javax.ejb.Remote;
import javax.ejb.Remove;
import javax.ejb.Stateful;
import javax.interceptor.AroundInvoke;
import javax.interceptor.InvocationContext;

@Stateful
@Remote ({HelloWorldRemote.class})
@Local ({HelloWorldLocal.class})
//@Interceptors ({HelloWorldInterceptor.class})
public class HelloWorld implements HelloWorldLocal, HelloWorldRemote {

	@Init
	public void init(){
		System.out.println("init 方法是最早调用的方法!");
	}
	@PostConstruct
	public void construct(){
		System.out.println("PostConstruct 方法是在init方法调用之后调用的方法!");
	}
	@PrePassivate
	public void passivate(){
		System.out.println("PrePassivate 方法是专门对于stateful session bean 的方法,他将在钝化bean之前调用!");
	}
	@PostActivate
	public void activate(){
		System.out.println("activate 方法是专门对于stateful session bean 的方法,他将在钝化bean之后,然后访问钝化的bean,容器将重新实例化bean之后调用。");
	}
	@PreDestroy
	public void destroy(){
		System.out.println("PreDestroy 方法是在session bean 被对象池销毁前调用的。");
	}
	@Remove
	public void remove(){
		System.out.println("Remove 方法是通过存根对象调用的,这样容器就知道什么时候将对象从对象池中移走这个对象了。");
	}
	@AroundInvoke
	public Object log(InvocationContext ic) throws Exception{
		if(ic.getMethod().getName().equals("say"))
			System.out.println("say method is implemented!!!");
		return ic.proceed();
	}
    public String say(String name){
    	return name;
    }
}

0
0
分享到:
评论
2 楼 xiaocong1001 2008-10-17  
@AroundInvoke所注释的方法是在@Init,@PostConstruct之后say方法之后调用的;
13:19:44,866 INFO  [STDOUT] init 方法是最早调用的方法!
13:19:44,866 INFO  [STDOUT] PostConstruct 方法是在init方法调用之后调用的方法!
13:19:44,866 INFO  [STDOUT] say
13:19:44,866 INFO  [STDOUT] say method is implemented!!!
13:28:18,763 INFO  [STDOUT] PrePassivate 方法是专门对于stateful session bean 的方法,他将在钝化bean之前调用!
1 楼 zzx0421 2008-10-16  
请问下AroundInvoke注解的方法什么时候调用?

相关推荐

    ejb-api-3.0-sources

    ejb-api-3.0-sources ejb3.0资源文件,源代码文件

    EJB3.0入门经典(PDF)

    《EJB3.0入门经典》是关于EJB 3.0的专业技术教程,从实用的角度出发,理论联系实际,用9章的篇幅详细讲解了EJB 3.0开发的方法和技巧。《EJB3.0入门经典》内容丰富,讲解由浅入深,全面系统,在讲解EJB 3.0最新开发...

    EJB3.0规范-EJB3.0 SPECIFICATION

    2. **持久化框架(JPA)**:EJB3.0引入了Java Persistence API(JPA),这是对JDO(Java Data Objects)的替代,提供了统一的ORM(Object-Relational Mapping)解决方案。开发者可以通过`@Entity`、`@Table`、`@Id`...

    agent-ejb-3.0-beta-1.jar

    标签:agent-ejb-3.0-beta-1.jar,agent,ejb,3.0,beta,1,jar包下载,依赖包

    agent-ejb-3.0-beta-1-javadoc.jar

    标签:agent-ejb-3.0-beta-1-javadoc.jar,agent,ejb,3.0,beta,1,javadoc,jar包下载,依赖包

    agent-ejb-3.0-beta-1-sources.jar

    标签:agent-ejb-3.0-beta-1-sources.jar,agent,ejb,3.0,beta,1,sources,jar包下载,依赖包

    agent-car-ejb-3.0-beta-1-sources.jar

    标签:agent-car-ejb-3.0-beta-1-sources.jar,agent,car,ejb,3.0,beta,1,sources,jar包下载,依赖包

    Ejb3.0--4

    NULL 博文链接:https://xiaocong1001.iteye.com/blog/258852

    EJB3.0规范和API文档

    2. **简化的EJB模型**: ejb-3_0-pfd-spec-simplified.pdf可能涵盖了EJB 3.0的简化特性,如无接口的session beans,注解驱动的配置,以及默认的事务和安全策略。这些改变降低了EJB的学习曲线,使得开发者能更快地适应...

    ejb3.0开发规范PDF

    EJB(Enterprise JavaBeans)3.0是Java企业级应用开发的一个重要标准,它定义了如何在Java EE(Java Platform, Enterprise Edition)环境中构建可复用的、组件化的服务器端应用程序。EJB 3.0的发布极大地简化了EJB的...

    ejb3.0开发实例(java工程)

    在这个"ejb3.0开发实例(java工程)"中,我们将深入探讨EJB 3.0的主要特性和开发实践。 1. **注解驱动**:EJB 3.0最大的变革之一就是大量使用注解(Annotation),减少了XML配置文件的使用。例如,@Stateless、@...

    EJB 3.0规范官方文档

    2. **示例代码**:提供了许多实际示例,帮助读者更好地理解如何在实践中应用EJB 3.0规范。 3. **最佳实践**:可能包含了一些设计和实现EJB 3.0应用的最佳实践指导。 总结来说,EJB 3.0规范为Java EE平台带来了一次...

    EJB3.0 - 学习笔记

    EJB(Enterprise JavaBeans)3.0 是一种用于构建分布式企业级应用程序的组件模型,它在Java平台上提供了标准的服务端组件。EJB架构确保了应用的可伸缩性、事务性和多用户安全性,使得开发者能够构建可靠且强大的业务...

    传智播客ejb3.0教学ppt

    - **书籍推荐**:《EJB3.0入门经典》,该书详细介绍了EJB 3.0的核心概念和技术要点,适合初学者入门。 - **电子资源**:《EJB3.0实例教程》免费电子版,提供了大量的实战案例和示例代码,有助于加深理解。 #### 九...

    EJB3.0API.rar_ejb_ejb3.0a_ejb3.0api

    2. **实体bean的POJO化(Plain Old Java Objects)**:EJB 3.0引入了基于Java Persistence API(JPA)的实体bean,允许使用普通的Java类作为数据库对象,无需继承特定的EJB基类或实现接口,提高了代码的可重用性。...

    ejb2.0与ejb3.0的区别

    ### EJB2.0与EJB3.0的主要区别 #### 一、简介 企业Java Beans(EJB)是Java平台为企业级应用提供的一种组件模型。随着技术的发展,EJB经历了多个版本的迭代,其中EJB 2.0和EJB 3.0是两个重要的里程碑版本。本文将...

Global site tag (gtag.js) - Google Analytics