`

OpenJPA-MySQL 操作

阅读更多
package com.jpa.chenhailong;

import java.util.*;
import javax.persistence.*;


/** 
 * A very simple, stand-alone program that stores a new entity in the
 * database and then performs a query to retrieve it.
 */
public class Main {

    @SuppressWarnings("unchecked")
    public static void main(String[] args) {
        // Create a new EntityManagerFactory using the System properties.
        // The "hellojpa" name will be used to configure based on the
        // corresponding name in the META-INF/persistence.xml file
        EntityManagerFactory factory = Persistence.
            createEntityManagerFactory("hellojpa", System.getProperties());

        // Create a new EntityManager from the EntityManagerFactory. The
        // EntityManager is the main object in the persistence API, and is
        // used to create, delete, and query objects, as well as access
        // the current transaction
        EntityManager em = factory.createEntityManager();

        // Begin a new local transaction so that we can persist a new entity
        em.getTransaction().begin();

        // Create and persist a new Message entity
        em.persist(new Message("Hello Persistence!"));

        // Commit the transaction, which will cause the entity to
        // be stored in the database
        em.getTransaction().commit();

        // It is always good practice to close the EntityManager so that
        // resources are conserved.
        em.close();

        // Create a fresh, new EntityManager
        EntityManager em2 = factory.createEntityManager();

        // Perform a simple query for all the Message entities
        Query q = em2.createQuery("select m from Message m");

        // Go through each of the entities and print out each of their
        // messages, as well as the date on which it was created 
        for (Message m : (List<Message>) q.getResultList()) {
            System.out.println(m.getMessage()
                + " (created on: " + m.getCreated() + ")"); 
        }

        // Again, it is always good to clean up after ourselves
        em2.close();
        factory.close();
    }
}

 

package com.jpa.chenhailong;

import java.util.*;
import javax.persistence.*;


/** 
 * A very simple persistent entity that holds a "message", has a
 * "created" field that is initialized to the time at which the
 * object was created, and an id field that is initialized to the
 * current time.
 */
@Entity
public class Message {
    @Id
    private long id = System.currentTimeMillis();

    @Basic
    private String message;

    @Basic
    private Date created = new Date();

    public Message() {
    }

    public Message(String msg) {
        message = msg;
    }

    public void setId(long val) {
        id = val;
    }

    public long getId() {
        return id;
    }

    public void setMessage(String msg) {
        message = msg;
    }

    public String getMessage() {
        return message;
    }

    public void setCreated(Date date) {
        created = date;
    }

    public Date getCreated() {
        return created;
    }
}

 

<?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" version="1.0">
	<persistence-unit name="hellojpa" transaction-type="RESOURCE_LOCAL">
		<class>com.jpa.chenhailong.Message</class>
		<properties>
			<property name="openjpa.ConnectionURL" value="jdbc:mysql://localhost/openjpa" />
			<property name="openjpa.ConnectionDriverName" value="org.gjt.mm.mysql.Driver" />
			<property name="openjpa.ConnectionUserName" value="****" />
			<property name="openjpa.ConnectionPassword" value="****" />
		</properties>
	</persistence-unit>
</persistence>

 

create database openjpa
use openjpa
CREATE TABLE `openjpa`.`Message` (
  `id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  `message` VARCHAR(45) NOT NULL,
  PRIMARY KEY (`id`)
)
ENGINE = InnoDB
COMMENT = 'test openjpa';

 

0
1
分享到:
评论

相关推荐

    apache-openjpa-2.2.1-binary

    8. **兼容性**:Apache OpenJPA与多种Java应用服务器和数据库系统兼容,包括Tomcat、WebLogic、JBOSS、Oracle、MySQL等。 在`apache-openjpa-2.2.1`这个压缩包中,很可能包含了OpenJPA的库文件、文档、示例代码以及...

    Spring和openJPA集成

    OpenJPA 是基于 JPA 规范的实现,它提供了一种标准的方式来处理数据库操作,将对象模型与关系型数据库模型进行映射。通过注解或XML配置,开发者可以定义实体类,OpenJPA 将自动处理SQL查询、持久化、事务等细节。 ...

    openjpa jar

    8. **数据库支持**:OpenJPA支持多种数据库,包括Oracle、MySQL、PostgreSQL、SQL Server等,只需配置相应的JDBC驱动即可。 9. **集成框架**:OpenJPA可与Spring、Hibernate等流行框架无缝集成,进一步丰富了开发者...

    Open JPA2 employee 简单例子

    通过这个简单的Open JPA2 employee例子,我们可以看到如何在Java应用中使用OpenJPA2来管理和操作数据库。它展示了JPA的基本概念,包括实体定义、持久化单元配置、以及CRUD操作的实现,对于理解JPA和OpenJPA2的使用...

    openJpa的应用,感觉还可以

    OpenJPA提供了诸如实体管理、事务处理、查询优化等核心ORM功能,并且与常见的Java应用服务器如Tomcat、WebLogic等兼容良好,也支持多种数据库系统,如MySQL、Oracle、PostgreSQL等。 描述中提到的“博文链接:...

    Apache OpenJPA 是 Jakarta Persistence API 3.0 规范的实现

    在实际应用中,OpenJPA 可以与各种 Java 应用服务器和数据库系统集成,如 Apache Tomcat、IBM WebSphere、Oracle、MySQL 等。使用 OpenJPA 时,开发者需要了解 JPA 规范,学习如何配置实体类、持久化单元...

    非容器环境运行OpenJPA应用

    确保正确导入了Apache OpenJPA库,例如`openjpa-all.jar`,以及对应的数据库驱动,如`mysql-connector-java.jar`。 接着,`src`目录通常包含项目的源代码。在OpenJPA应用中,你需要创建实体类(Entity)来映射...

    Apache OpenJPA.zip

    8. **兼容性**:Apache OpenJPA兼容多种JDBC驱动,可连接各种数据库系统,如Oracle、MySQL、PostgreSQL等。 9. **社区支持**:作为Apache项目,OpenJPA拥有活跃的社区和丰富的文档资源,遇到问题时可以获得广泛的...

    JPA笔记

    在OpenJPA配置中,`&lt;provider&gt;`元素指定了OpenJPA作为持久化提供者,`&lt;class&gt;`元素列举了参与持久化的实体类,`openjpa.jdbc.SynchronizeMappings`和`openjpa.ConnectionURL`等属性则是OpenJPA特有的配置,用于同步...

    springboot-多数据源配置 -mybatis-jpa

    spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect spring.jpa.open-in-view=false # Secondary Data Source for JPA spring.data.jpa.repositories.base-package=...

    JPA整理文档

    - **JPA供应商**:目前市场上有多家供应商提供了JPA的实现,例如**Hibernate**、**TopLink**和**OpenJPA**等。 ### JPA的技术组成 #### 四、JPA的核心技术组成部分 1. **ORM映射元数据**:JPA支持两种元数据形式...

    Open Store-开源

    在数据库层面,项目可能采用了关系型数据库管理系统(如MySQL),并且利用了ORM(对象关系映射)技术,将数据库操作转化为面向对象的编程方式,降低了开发复杂性,提高了开发效率。ORM允许开发人员以类和对象的方式...

    springdatajpa.pdf

    Hibernate之外,还有其他实现了JPA规范的框架,比如OpenJPA、TopLink等。开发者可以根据项目需求选择不同的JPA实现,而SpringDataJPA就是在此之上提供了一层抽象,即Repository层的实现,进一步简化了持久层的代码...

    EJB_JPA数据库持久层开发详解

    常见的JPA实现框架包括Hibernate、OpenJPA、TopLink等。其中,Hibernate是最流行的选择,它不仅提供了丰富的功能,还具有高度的灵活性和性能。 #### 对象关系映射(ORM) **对象关系映射**是一种编程技术,用于将...

    ssh+dwr坚决不冲突的jar

    1. `openjpa-0.9.7-incubating.jar`:Apache OpenJPA,是一个开源的Java持久化API,实现了JPA(Java Persistence API),用于ORM。 2. `toplink-essentials.jar`:Oracle的TopLink Essentials,也是JPA的一个实现,...

    jpa 所要的jar包

    2. **ORM框架实现**:比如Hibernate, EclipseLink, OpenJPA等,它们是JPA规范的具体实现,提供了与数据库交互的实际功能。以Hibernate为例,它会包含`hibernate-core.jar`,提供实体管理、会话管理等功能。 3. **...

    myeclipse反向生成jpa

    这一过程允许开发者从现有的数据库结构自动生成Java持久化实体类(即JPA实体类),并进一步生成基本的增删查改(CRUD)操作代码,极大地提高了开发效率和减少了手动编码的工作量。 ### 什么是JPA? Java ...

    spring3.0 + jpa 需要的jar包

    在Java开发中,Spring框架和Java ...不过,实际项目中还可能需要其他依赖,例如Spring的AOP、ORM、Web模块等,以及数据库特定的驱动和JPA的其他实现(如EclipseLink或OpenJPA),具体依赖于项目的需求和配置。

Global site tag (gtag.js) - Google Analytics