首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JPA系列之对象持久化API JPA简介

的框架和接口也都非常简单, 可媲美JDBC的查询能力: JPA的查询语言是面向对象的,JPA定义独特的JPQL,而且能够支持批量更新和修改、JOIN、GROUP BY、HAVING 等通常只有 SQL...使用JPA实现持久化对象的步骤 (1)创建 persistence.xml, 在这个文件配置持久化单元 需要指定跟哪个数据库进行交互; 需要指定 JPA 使用哪个持久化的框架以及配置该框架的基本属性...(3)使用 JPA API 完成数据增加、删除、修改和查询操作 创建 EntityManagerFactory (对应 Hibernate 的 SessionFactory); 创建 EntityManager... <!...; import java.util.HashMap; import java.util.Map; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory

81030
您找到你想要的搜索结果了吗?
是的
没有找到

白话说JPA | 从开发角度看应用架构8

显然不是,因为还需要设定对数据库的链接方式、定义对数据库操作的接口。 我们需要JPA---Java Persistence API。...五、JPApersistence units 1. 持久性单元(persistence units)。 持久性单元是存储在应用程序存档的所有实体类和persistence.xml文件的集合。...persistence.xml是一个配置文件,其中包含有关实体类,数据源,事务类型和其他配置信息的信息。...七、JPA的持久性上下文( persistence context) 被EntityManager持久化到数据库的对象(也就是把java应用生成、修改的数据保存到数据库表),或者从数据库拉入内存的对象...而Hibernate相关定义的静态配置,是存放到persistence units的。 (默认模式下)entity manager是运行到EJB container,也就是中间件的。

1.1K40

使用IntelliJ IDEA开发SpringMVC网站(三)数据库配置

注:这一部分有一点过时,更新的项目中直接把数据库的配置放在mvc-dispatcher-servlet.xml,但依然要做这一步的操作,为了这一步可以使用Persistence的工具。...在这一步结束后,我们可以发现,在resources里面生成了persistence.xml配置文件,左边栏出现一个Persistence标题(若没有请点击左下角那个灰框): ?     ...再点击OK,稍后,打开model包,可以看到生成了两个Java Bean,在SpringMVC称为两个实体,它们对应数据库的两张表: ?...这个方法可以摆脱persistence.xml的困扰,但是有一个小小的问题,如果之前没有添加Java EE Persistence这个框架的,文中的Persistence工具栏将不会显示。...一个解决办法就是,先修改mvc-dispatcher-servlet,然后再添加Java EE Persistence框架,等能够看到Persistence工具栏后,删除persistence.xml

1.6K10

应用对持久数据的管理 | 从开发角度看应用架构7

Java EE企业应用程序的业务数据被定义Java对象。 这些对象保存在相应的数据库表。...三个概念听起来有点抽象,用大白话来说: 实体( entity)就是一个类,它定义与数据库表的对应关系 持久性单元(persistence units)定访问数据库的方式 持久性上下文( persistence...对于组合主键,定义主键类。 @EmbeddedId或@ IdClass注释用于指定组合主键。 五、ID的生成 每个实体实例都映射到数据库表的一行。...持久性单元是存储在应用程序存档的所有实体类和persistence.xml文件的集合。 persistence.xml是一个配置文件,其中包含有关实体类,数据源,事务类型和其他配置信息的信息。...生产者类定义一个生产者方法,它返回注入到另一个类的数据类型。

2.7K40

使用IntelliJ IDEA开发SpringMVC网站(三)数据库配置 顶

注:这一部分有一点过时,更新的项目中直接把数据库的配置放在mvc-dispatcher-servlet.xml,但依然要做这一步的操作,为了这一步可以使用Persistence的工具。...在这一步结束后,我们可以发现,在resources里面生成了persistence.xml配置文件,左边栏出现一个Persistence标题(若没有请点击左下角那个灰框): ?     ...再点击OK,稍后,打开model包,可以看到生成了两个Java Bean,在SpringMVC称为两个实体,它们对应数据库的两张表: ?...这个方法可以摆脱persistence.xml的困扰,但是有一个小小的问题,如果之前没有添加Java EE Persistence这个框架的,文中的Persistence工具栏将不会显示。...一个解决办法就是,先修改mvc-dispatcher-servlet,然后再添加Java EE Persistence框架,等能够看到Persistence工具栏后,删除persistence.xml

81420

关于Java持久化相关的资源汇集:Java Persistence API

Java Persistence API: The Good, the Bad, and the Ugly Java Persistence API:好的、坏的和一般功能 JPA:好与坏?...回答:JPA规范没有解决二级缓存问题(EntityManagerFactory-级),但是提供实现该缓存必须遵守的一些数据锁定和一致性规则,即使在启用缓存时也是如此。...它在 persistence.xml 文件作为一个条目出现。 问题:如何在WebLogic 9.2测试JPA 回答:现在可以在WebLogic 9.2使用OpenJPA或Kodo。...回答:JPA规范仅要求支持SELECT SQL语句(通过EntityManager.createNativeQuery()调用,或@NamedNativeQuery注解或named-native-query...OpenJPA提供一些方法,用于以编程的方式创建映射信息,并且该规范确实提供一种方法,用于在创建EntityManager时,将特定于供应商的重写内容传递给persistence.xml的数据。

2.5K30

Hibernate Session和Jpa EntityManager

JPA需要一个persistence.xml,文件必须是META/persistence.xml 如果整合Spring的话,就让他们随风去吧。...spring-data-jpa对应getOne(); 如果数据库没有对应的记录,抛异常。 注:这里spring-data-jpa又任性,getOne()不是对应get(),注意。...S.save() ≈ E.persist() EntityManager没有save方法。 区别: 调用前的实体对象,如果主键使用setter设置值,E.persist()会抛异常。...而S.save()不会抛异常,只是会忽略。 S.delete() ≈ E.remove() 区别:delete()可以移出持久化对象和游离对象,而remove只能移出持久化对象,否则会抛异常。...而JPA不抛异常: @Test @Transactional public void testJpa(){ User u1=entityManager.find(User.class, 1);

2K20

Hibernate框架学习之四(JPA操作)

一、JPA概述以及它和Hibernate之间的关系 1.1.Hibernate 概述   JPA Java Persistence API,是EJB3规范负责对象持久化的应用程序编程接口(ORM接口)...先在src目录下的META-INF文件下创建persistence.xml配置文件,如下图所示: ? persistence.xml配置内容如下图所示: <?...persistence.xml文件的持久化单元name一致 tl=new ThreadLocal(); } /** *...2.2.3 @Id:映射生成主键(必选) @id 定义映射到数据库表的主键的属性 , 一个实体只能有一个属性被映射为主键 。置于 getXxxx() 前 。...2.2.4 @Column:映射表格列(可选)   @Column 描述数据库表该字段的详细定义 , 这对于根据 JPA 注解生成数据库表结构的工具非常有作用 。

6.6K70
领券