【EJB基础】Persistence Bean(持久化Bean)
来源:互联网 发布:网络教育网站 编辑:程序博客网 时间:2024/05/22 05:16
持久化Bean跟普通Java Bean无异,区别在于它们用ejb的注解进行了标记。
持久化Bean有下列基本要求:
- 一个实体类(即普通的POJO),并将其标识为@Entity
- 实体类必须要有主键,一般用@Id将其标识
- 在/META-INF/目录下,有persistence.xml文件,其主要作用是定义实体类映射的相关配置信息,比如指定数据源、都有哪些实体类、以及跟持久化相关的其它的一些属性
下面讲解一下怎么创建一个持久化Bean和它的调用。
第一步:配置JBOSS数据源(基于JBOSS4.2.3进行开发,JBOSS6.0以上有所变化)
- 拷贝数据库驱动到JBOSS_HOME/server/default/lib下
- 拷贝docs/examples/jca/mysql-ds.xml到/server/default/deploy目录下,并修改数据库用户名及密码
- Mysql-ds.xml文件的内容类似下面所示:
<datasources> <local-tx-datasource> <jndi-name>MySqlDS</jndi-name> <connection-url>jdbc:mysql://localhost/ejb3</connection-url> <driver-class>com.mysql.jdbc.Driver</driver-class> <user-name>root</user-name> <password>root</password>…….
第二步:创建EJB项目,支持EntityBean
点击next,到下一个界面。
说明:Persistence Unit Name:我们在后面会用这个名称来跟它所指定的数据库打交道(现在可以随便起个)
JNDI Data Source:输入我们刚才配置的数据源名称,并加上前缀
java:/取消Specify JPA Datasource details的复选框
在创建完成之后,自动在META-INF目录下添加了persistence.xml文件,
其内容如下:
第三步:编写实体类,并注解映射规则 @Entity
public class Person {@Idprivate int id;private String name;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}}
第四步:创建实体类对应的数据库表
在JBOSS应用服务器中,JPA是由Hibernate来作为底层的实现,因此,我们可以在persitence.xml中配置一些与Hibernate相关的属性,比如下面的配置:部署EJB项目之后,即可以看到JBOSS自动导出了数据库表
第五步:编写业务逻辑类,操作持久化数据
@Stateless@Remotepublic class PersonManagerBean implements PersonManager {//注入实体管理器对象@PersistenceContext(unitName="test") //加上注解unitName从persistence.xml中获得private EntityManager em;public void addPerson(String name) {//给实体赋值Person person=new Person();person.setId(10);person.setName(name);//使用EntityManager的persist方法,将数据持久化到数据库em.persist(person);}}
第六步:编写Client端进行测试数据持久化操作
/** * 持久化测试方法 * @param @param args <span style="font-family: 宋体; font-size: 14pt;">*/</span>
public static void main(String[] args)throws Exception {InitialContext ctx = new InitialContext();PersonManager personManager= (PersonManager)ctx.lookup("PersonManagerBean/remote");personManager.addPerson("smile");}测试结果:
ITOO中的EJB使用原来是从这儿来的啊,除了前面的数据源配置操作不一样,其他都一样。对ITOO的框架越来越熟悉了。不过,JBOSS4.2跟JBOSS6.2差距还是蛮大的,好好研究一下。
1 0
- 【EJB基础】Persistence Bean(持久化Bean)
- EJB---->实体Bean(Entity Bean) 持久化 和 persistence.xml 配置文件
- Ejb-开发持久化Bean
- EJB-持久化Bean开发
- 【EJB基础】session bean
- 【EJB基础】Message Driven Bean
- bean ejb
- 持久化(persistence)
- Java持久化bean原理(一)
- 精通EJB(3) 无状态会话bean基础
- 精通EJB(4) 状态会话Bean基础
- EJB系列(一)——Session Bean基础介绍
- Bean Object Persistence
- 什么是持久化(Persistence)
- redis 持久化(persistence)
- Redis 持久化(persistence)
- Redis持久化(persistence)
- EJB(三)细说message-driven bean
- 11gRAC删除节点
- [刷题]Maximum Subarray II
- Widgets之RadioButton、RadioGroup和CheckBox
- mysql主从搭建
- [转]Html 点击文字选中checkbox
- 【EJB基础】Persistence Bean(持久化Bean)
- Spring AOP 实现原理
- Oracle命令(一):Oracle登录命令
- Web开发者不容错过的10个HTML5工具
- 加快SSH的登录速度
- C文件流I/O操作:FILE类型
- 【试验设计的问答】
- 单例模式懒汉式与饿汉式java讲解
- 重写OC中的init方法