电话:0731-83595998
导航

KodoEJB:符合EJB3规范的持久层框架

来源: 2017-12-22 09:18

 v百度广告

  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完成开发工作。  
关于EJB3和JDO2的更多内容请大家查看文章最后参考资源中的相关内容。 
在Kodo EJB框架中,对象和关系数据库之间的映射(对象-表,对象属性-字段等)都是使用JDK5.0中的最新特性-注释(Annotation)来提供,不再需要提供额外的配置文件。 
下载、安装Kodo 

  准备工作  
为了演示的需要,我们选择MySQL数据库作为持久化的目标数据库,请大家自己到www.mysql.com下载最新的MySQL数据库后安装。 
Kodo的最新版本是Kodo 4.0.0 Early Access 4,目前大家可以到http://www.solarmetric.com/去下载试用版本,下载时需要注册,你会得到30天的License。
Kodo EJB实例  
下面我们将用一个简单的例子来说明创建Kodo EJB应用的典型步骤,实例中我们将创建名为Book的持久化对象,该对象将被持久化到本地的MySQL数据库中。 
建立工程目录  
创建持久化类

  新创建持久化类Book,为了说明的简单,该类只有两个属性:id和name,其中id是书的编号(编号由MySQL数据库自动生成),name属性表示书的名称。持久化类的全部代码、注释和说明  
import javax.persistence.Basic;  
import javax.persistence.Entity;  
import javax.persistence.GenerationType;  
import javax.persistence.Inheritance;  
import javax.persistence.Table; 

/**  
*/  
(name = "Book")  
(name = "BOOKS")  
(strategy = InheritanceType.TABLE_PER_CLASS)  
 /* Id注释表示该字段是标识字段 */  
 /* GeneratedValue注释定义了该标识字段的产生方式,我们的演示系统中id由MySQL数据库字段自动生成,因此选择GenerationType.IDENTITY */  
 /* Column注释的name属性定义了该类属性对应的数据字段的名称,为了最大限度保持系统和数据库之前的独立性,建议使用大写字符 */  
 public int id; 

 /* Basic注释表示该属性是基本属性 */  
 /* Column注释的name属性定义了该类属性对应的数据字段的名称,为了最大限度保持系统和数据库之前的独立性,建议使用大写字符 */  
 public String name = null; 

准备数据库  
准备配置文件  
a)  
<?xml version="1.0"?>  
 <persistence-unit name="">  
  <!-- Kodo的序列号,请输入您下载或者购买Kodo时得到的License -->  
  value="093D-BF3F-C10E-0F8F-0F00" />  |||

  <!-- 以下是访问数据库时需要提供的信息 -->  
  value="JDBC:mysql://localhost/kodo" />  
  value="org.gjt.mm.mysql.Driver" />  
  <property name="kodo.ConnectionPassword" value="root" /> 

<!-- 设置Kodo运行过程中的日志级别 -->  
  value="DefaultLevel=WARN, Runtime=INFO, Tool=DEBUG" />  
 </persistence-unit>  


persistence.xml提供EJB实体管理所需要的信息,比如确定使用哪种持久化管理器和需要被管理的持久化类。  
<persistence>  
  <provider>kodo.persistence.PersistenceProviderImpl</provider>  
  <class>org.vivianj.kodo.examples.beans.Book</class>  
</persistence> 
打开一个命令行窗口,进入%KODO_HOME%/bin目录下,执行kodocmd.cmd命令,然后将MySQL的驱动文件使用set classpath=%classpath%;c:/mysql-connector-java-3.1.8-bin.jar这样的方式加入到CLASSPATH中。 
加强(Enhancer)持久化类  
我们可以使用kodoc C:KodoExamplesorgvivianjkodoxampleseans*.java这样的命令来完成持久化类的加强工作。 
KODO中提供了专门的MappingTool工具,能够自动的根据持久化类及他们之间的关系为我们生成创建数据库所需要的SQL语句或者直接创建数据表。 
测试一下  
import javax.persistence.EntityManager;  
import javax.persistence.Persistence;  

import org.vivianj.kodo.examples.beans.Book; 

public class Test { 

 public static void main(String args) {  
  EntityManagerFactory emf = Persistence.createEntityManagerFactory(null);  
  .createEntityManager(PersistenceContextType.EXTENDED);  
  em.getTransaction().begin();  
  /* 创建新的持久化对象 */  
  /* 设置Book对象的name属性 */  
  /* 持久化对象 */  

  /* 结束事务 */  
  em.close();  
 } 

  执行Test类,执行完后会发现books表中已经增加了一条新的记录。 

编辑推荐:

下载Word文档

温馨提示:因考试政策、内容不断变化与调整,长理培训网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准! (责任编辑:长理培训)

网络课程 新人注册送三重礼

已有 22658 名学员学习以下课程通过考试

网友评论(共0条评论)

请自觉遵守互联网相关政策法规,评论内容只代表网友观点!

最新评论

点击加载更多评论>>

精品课程

更多
10781人学习

免费试听更多

相关推荐
图书更多+
  • 电网书籍
  • 财会书籍
  • 其它工学书籍
拼团课程更多+
  • 电气拼团课程
  • 财会拼团课程
  • 其它工学拼团
热门排行

长理培训客户端 资讯,试题,视频一手掌握

去 App Store 免费下载 iOS 客户端