本文详细介绍EJB 3.0 开发指南之依赖值对象
在上面的章节我们提到,实体bean的属性可以是java基本对象、Date等,事实上,实体Bean的属性也可以是其他的java对象。这些Java对象不能直接从持久化上下文中读取,它依赖于主实体bean。不象关联实体Bean,在EJB3.0中不支持依赖值对象的集合。
依赖值对象不支持继承,这将在EJB3.1中在讨论。
依赖类需要使用◎DependentObject来注释:
@Target({TYPE}) @Retention(RUNTIME)
public @interface DependentObject {
AccessType access() default PROPERTY;
}这个注释可以指定容器访问这个类的方法,是通过属性还是直接通过字段来访问。
在实体Bean的一个属性需要使用依赖值对象,那么这个属性的get方法需要使用@Dependent注释:
@Target({METHOD, FIELD}) @Retention(RUNTIME)
public @interface Dependent {
DependentAttribute[] value() default {};
}这个注释可以指定依赖的属性DependentAttribute:
@Target({}) @Retention(RUNTIME)
public @interface DependentAttribute {
String name();
Column[] column() default {};
}可以指定属性名称和映射的列名。这里,一个主实体Bean的属性可以映射到数据表中的多列。
如果你还不太明白,看下面的例子。
这个例子主要有以下几个文件,这个例子主要实现了管理学生的功能。Student是一个实体Bean,这个Bean的name属性是一个类,也就是Name类,这个Name类就是一个依赖值对象。StudentDAOBean是一个无状态的会话Bean,用来调用实体Bean。和前面的例子一样,我们还是使用Client测试。
·Student.java:实体Bean。
责编:豆豆技术应用
正在加载评论...
- Java新闻
- Java入门教程
- Java开发工具
- J2EE
- J2SE
- J2ME
- EJB/Spring
- Applet/Swing
- Servlet/JSP
- Struts/Hibernate
- JDBC/JDO
- Ajax
- 认证考试
- JAVA对象比较器Comparator
- Java 6 RowSet 使用完全剖析
- 深入了解"Java"中的“异常机制”
- 讨论5种跟踪Java执行的方法
- Java专业术语标准化规范
- java中线程概念描述
- JAVA中的反射机制详解
- Java语言灵巧指针与垃圾回收
- 讲述java语言中内部类的研究
- Java对于Cookie的操作详解