规范 引言 期待已久的EJB3.0规范在最近发布了它的初稿.在本文中将对新的规范进行一个概要性的介绍,包括新增的元数据支持,EJBQL的修改,实体Bean模型访问bean上下文的新方法和运行时环境等等.作者还讨论了EJB在未来要作出的调整以及EJB3.0与其他开发规范之间的关系. 开始 无论如何由于EJB的复杂性使之在J2EE架构中的表现一直不是很好.EJB大概是J2EE架构中唯一一个没有兑现其能够简单开发并提高生产力的组建. EJB3.0规范正尝试在这方面作出努力以减轻其开发的复杂性.EJB3
在前面的例子中,我们演示了一对多和多对一的例子,在本章将演示多对多和一对一的关系. 学生和老师就是多对多的关系.一个学生有多个老师,一个老师教多个学生. 学生和档案就是一对一的关系(不知道国外的学生有没有档案?). 为了实现多对多的关系,数据库中需要关联表,用以在两个实体间建立关联.JBoss可以自动生成关联表,你也可以@AssociationTable来指定关联表的信息. 如: @ManyToMany(cascade = {CascadeType.CREATE, CascadeType.MER
在EJB3.0中,实体Bean可以实现继承关系. 比如有个Person的实体bean,它有姓名和性别两个属性. 上帝和女娲造人的时候,造出两种人:Man和Woman.Man和Woman都是实体Bean,而且他们都继承Person. 单一表策略就是副实体和子实体的数据都存放在一张表中,同时指定一列用来区别这些实体. 如: @Entity @Inheritance(strategy = InheritanceType.SINGLE_TABLE, discriminatorType = Discrim
EJB 在前面的例子中,我们演示了一对多和多对一的例子,在本章将演示多对多和一对一的关系. 学生和老师就是多对多的关系.一个学生有多个老师,一个老师教多个学生. 学生和档案就是一对一的关系(不知道国外的学生有没有档案?). 为了实现多对多的关系,数据库中需要关联表,用以在两个实体间建立关联.JBoss可以自动生成关联表,你也可以@AssociationTable来指定关联表的信息. 如: @ManyToMany(cascade = {CascadeType.CREATE, CascadeType
EJB 在EJB3.0中,实体Bean可以实现继承关系. 比如有个Person的实体bean,它有姓名和性别两个属性. 上帝和女娲造人的时候,造出两种人:Man和Woman.Man和Woman都是实体Bean,而且他们都继承Person. 单一表策略就是副实体和子实体的数据都存放在一张表中,同时指定一列用来区别这些实体. 如: @Entity @Inheritance(strategy = InheritanceType.SINGLE_TABLE, discriminatorType = Dis
Order.java package org.jboss.tutorial.entity.bean; import javax.persistence.CascadeType; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.GeneratorType; import javax.persistence.Id; import javax.persi
规范 Kodo是BEA公司收购SolarMetric公司后获得的持久层框架项目,以前只是支持JDO标准,2006年2月13日,BEA公司宣布发布Kodo项目的最新版本--Kodo 4.0.0 Early Access 4,Kodo 4.0.0 EA4支持EJB3和JDO2两个标准,本文中,我们将首先学习和了解KODO EJB,了解如何使用Kodo EJB完成开发工作. 我们将按照两种不同的情况讲述如何使用Kodo EJB进行开发,一种是通过命令行工具,另外一种是在Eclipse中使用Ant任务.
Calculator.java package org.jboss.tutorial.security.bean; import javax.ejb.Remote; @Remote public interface Calculator { int add(int x, int y); int subtract(int x, int y); int divide(int x, int y); } CalculatorBean.java package o
我们先看看在servlet中怎么调用ejb3:public class HelloServlet extends GenericServlet { private Hello _hello; public void setHello(Hello hello) { _hello = hello; } public void service(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletExce