linux ejb远程调用,[转载]在容器外使用EJB 3.0 Persistence

本文介绍了如何在不依赖J2EE容器的情况下,利用EJB3.0的持久化特性,通过GlassFish的参考实现进行数据库操作。作者详细讲解了从安装Java5,配置GlassFish,创建带注解的实体类,如Employee,建立persistence.xml文件,到构建业务服务类和客户端的全过程,展示了如何实现一个独立于容器的EJB3.0持久化应用。
摘要由CSDN通过智能技术生成

在容器外使用EJB 3.0 Persistence

Lucas Jellema 最近写了篇文章,名字叫:Getting Started with EJB 3.0 Persistence

out-of-container using the Reference Implementation (GlassFish)。

该文介绍了如何在J2EE Container之外使用EJB 3.0 Persistence,实现了service类和data model.

Lucas Jellema提到的步骤如下:

1.下载和安装 Java 5 (JDK 5.0/JRE 5.0)

2.下载和配置 GlassFish

3.创建Entities - POJOs with annotations that link them to database objects

比如其中的员工类:package nl.amis.ejb30.hrm;

import java.io.Serializable;

import java.sql.Timestamp;

import javax.persistence.Column;

import javax.persistence.Entity;

import javax.persistence.Id;

import javax.persistence.Table;

@Entity

@Table(name="EMP")

public class Employee implements Serializable {

private Double comm;

private Long deptno;

private Long empno;

private String ename;

private Timestamp hiredate;

private String job;

private Long mgr;

private Double sal;

public Employee() {

}

public Employee(Long empno) {

this.empno = empno;

}

@Column(name="COMM")

public Double getComm() {

return comm;

}

public void setComm(Double comm) {

this.comm = comm;

}

@Column(name="DEPTNO")

public Long getDeptno() {

return deptno;

}

public void setDeptno(Long deptno) {

this.deptno = deptno;

}

@Id

@Column(name="EMPNO", nullable=false)

public Long getEmpno() {

return empno;

}

public void setEmpno(Long empno) {

this.empno = empno;

}

@Column(name="ENAME")

public String getEname() {

return ename;

}

public void setEname(String ename) {

this.ename = ename;

}

@Column(name="HIREDATE")

public Timestamp getHiredate() {

return hiredate;

}

public void setHiredate(Timestamp hiredate) {

this.hiredate = hiredate;

}

@Column(name="JOB")

public String getJob() {

return job;

}

public void setJob(String job) {

this.job = job;

}

@Column(name="MGR")

public Long getMgr() {

return mgr;

}

public void setMgr(Long mgr) {

this.mgr = mgr;

}

@Column(name="SAL")

public Double getSal() {

return sal;

}

public void setSal(Double sal) {

this.sal = sal;

}

}4.创建 persistence.xml file 用来连接 Entities (或者 Domain Classes 和 POJOs) 和 database

oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider

nl.amis.ejb30.hrm.Department

nl.amis.ejb30.hrm.Employee

5.创建一个 Business Service class ,提供 Entitiy Services (好像一个out-of-container的Session Bean)

6.创建一个客户端

7.可以运行程序了

最后的包结构如下:

ejb30_hrmappli.jpg

你体验过EJB3吗?发表下感想吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值