`
suhuanzheng7784877
  • 浏览: 702735 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
Ff8d036b-05a9-33b5-828a-2633bb68b7e6
读金庸故事,品程序人生
浏览量:47713
社区版块
存档分类
最新评论

JavaEE5学习笔记08-JPA与EJB集成总结(1)

阅读更多

JPAJavaEE5提出的一套标准接口,不同的应用服务器对其实现采用不同的框架。JBoss不用说底层采用的肯定就是HibernateHibernateJBoos社区的开源产品),一提到Hibernate就不用多说了,ORM思想的推广与盛行,可以说大部分都是Hibernate的功劳。面向对象数据库没稳定前,笔者觉得它还是OR-Mapping的霸主(当然ibatis也有它的适用场景,因项目而定)。到EJB3.0的标准抛弃了以前的实体Bean的概念,吸收了ORM思想的优势,推出了JPA的标准。至于JPA的笔记在笔者前面的Blog()中已经单独作为一个技术做了学习笔记。这里只是对EJB+JPA集成起来作为总结。

1.       JPA配置元文件persistence.xml

在项目src/META-INF/增加persistence.xml文件,内容如下:

<?xml version="1.0" encoding="UTF-8"?>

<persistence xmlns="http://java.sun.com/xml/ns/persistence"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence

    http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"

    version="1.0">

    <persistence-unit name="JavaEE4JbossPU"

       transaction-type="JTA">

       <jta-data-source>java:/jbossdemo</jta-data-source>

       <class>jpa.vo.Person</class>

    </persistence-unit>

</persistence>

注意:因为考虑到项目运行时环境移植的问题,虽然在此时知道JBoss底层使用了Hibernate框架作为JPA的实现,但是这个配置文件也没写出一些Hibernate特殊属性的配置,比如:hibernate.show_sqlhibernate.dialecthibernate.format_sql等等。在此处,指定了持久化单元名JavaEE4JbossPU,事务类型采用JTA(至于是容器级JTA还是代码级JTA之后看SessionBean的时候再说),制定一个数据源,此处是用JNDI名指代一个数据源名称。

2.       根据数据库表建立实体对象

数据库表结构DDL如下:

CREATE TABLE `person` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `name` varchar(255) DEFAULT NULL,

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=24 DEFAULT CHARSET=utf8;

根据此表实体对象代码如下:

package jpa.vo;

 

@Entity

@Table(name = "person")

public class Person implements java.io.Serializable {

    // Fields

    /**

     *

     */

    private static final long serialVersionUID = 7441495112741073549L;

    private Integer id;

    private String name;

 

    // Constructors

    /** default constructor */

    public Person() {

    }

 

    /** full constructor */

    public Person(String name) {

       this.name = name;

    }

 

    // Property accessors

    @Id

    @GeneratedValue(strategy = IDENTITY)

    @Column(name = "id", unique = true, nullable = false)

    public Integer getId() {

       return this.id;

    }

 

    public void setId(Integer id) {

       this.id = id;

    }

 

    @Column(name = "name")

    public String getName() {

       return this.name;

    }

 

    public void setName(String name) {

       this.name = name;

    }

}

具体的注解在此就不做解释了。

分享到:
评论

相关推荐

    JavaEE5学习笔记01-JTA和数据库事务

    ### JavaEE5学习笔记01-JTA和数据库事务:深入解析与应用 #### 一、JavaEE5概览与核心组件 JavaEE5是Java Enterprise Edition的第五个版本,标志着企业级Java应用的一个重要里程碑。它引入了一系列重要的新特性,...

    javaee思维导图版笔记-吉林大学

    "javaee思维导图版笔记-吉林大学" 本笔记主要涵盖了Java EE的基础知识,包括Servlet、JSP、JNDI、JPA等方面的内容。 一、Servlet概述 Servlet是Java EE中的一种服务器端组件,用于处理HTTP请求并返回响应。...

    javaEE学习笔记

    以上就是JavaEE学习笔记中可能涵盖的关键知识点,它们构成了JavaEE开发的基础,并且每个部分都有深入研究的价值。通过学习和实践这些技术,开发者能够构建出高效、稳定和可扩展的企业级Web应用。

    JavaEE学习笔记

    ### JavaEE 学习笔记概览 #### 一、JavaEE 概念及发展历程 JavaEE(Java Platform, Enterprise Edition)是Sun Microsystems公司为简化企业级应用开发而提出的一套标准化平台,它提供了构建分布式系统的基本框架和...

    JavaEE2017最新版基础班学习笔记

    本"JavaEE2017最新版基础班学习笔记"涵盖了JavaEE入门所需的基本概念和技术,是新手学习JavaEE的良好参考资料。以下将详细介绍其中可能涉及的关键知识点: 1. **Servlet与JSP**:Servlet是JavaEE中处理HTTP请求的...

    Java/JavaEE 学习笔记

    Java/JavaEE 学习笔记 作者在杰普学习时的学习笔记,是J2ee初学者必备手册,是大家学习J2EE开发的很好的参考笔记。 Java/JavaEE 学习笔记 内容目录: Unix 学习笔记..........7 一、Unix前言............7 二、...

    JavaEE5实战笔记04JSF的一些补充

    JSF的优点包括强大的MVC架构、内置的事件处理机制、丰富的UI组件库以及与EJB和JPA等JavaEE组件的紧密集成。然而,它的学习曲线相对较陡峭,配置相对复杂,尤其是早期版本。此外,尽管JSF提供了数据验证和转换功能,...

    Javaee课堂笔记精华总结就业必备

    这个"Javaee课堂笔记精华总结就业必备"显然是一份针对求职者或初入职场的开发者准备的学习材料,旨在帮助他们掌握JavaEE的核心概念和技术,以提升就业竞争力。 JavaEE平台包括一组服务、APIs和协议,用于构建分布式...

    达内javaSE,javaEE个人学习所有基础笔记

    "达内javaSE,javaEE个人学习所有基础笔记"是一个针对初学者的全面学习资源,涵盖了从Java Standard Edition (Java SE)的基础知识到Java Enterprise Edition (Java EE)的高级概念。 Java SE是Java的核心部分,它...

    JavaEE基础笔记.zip

    6. **JPA(Java Persistence API)**:JPA是JavaEE提供的ORM(Object-Relational Mapping)规范,简化了Java应用与数据库之间的对象关系映射,替代了传统的EJB实体Bean。 7. **JSF(JavaServer Faces)**:JSF是一...

    《IT学习资料3》-Java 学习笔记.zip

    "javaee"目录下的内容将引导你学习Servlet、JSP、JavaMail、JPA、EJB等技术,以及如何在实际项目中进行企业级应用的开发和部署。 【理论基础】 "理论基础"部分涵盖了计算机科学的基本概念,如数据结构、算法分析、...

    北京圣思园java课堂笔记 (javaSE和javaee)

    【标题】:“北京圣思园java课堂笔记 (javaSE和javaee)” 提供了全面的Java学习资源,涵盖了从基础的Java Standard Edition (javaSE)到进阶的Java Enterprise Edition (javaEE)的相关知识。 【描述】:“北京圣思园...

    学习JavaEE的day26

    在JavaEE的环境中,这通常包括Servlet、JSP、EJB(Enterprise JavaBeans)、JPA(Java Persistence API)或者Spring框架的使用。这些代码可能是用来处理HTTP请求、渲染动态网页、管理数据库交互或者实现业务逻辑的。...

    《IT学习资料2》-Java 学习笔记.zip

    - `javaee` 文件夹可能包含Java企业版的相关教程,涵盖了Servlet、JSP、JavaMail、EJB、JMS、JNDI、JPA、Spring框架、Hibernate等企业级应用开发技术。 4. **Web前端资源**: - `index.html` 和 `README.md` 可能...

Global site tag (gtag.js) - Google Analytics