JPA的理解
我对JPA的理解:
JPA是Java Persistens API的缩写,简单的说就是Java的持久化接口。Java是一种面向对象编程语言,而在程序开发中与数据库的交互是必须的,但是数据库的操作语言却不是面向对象语言的,因此在Java数据库程序开发过程中就会出现要去操作非面向对象变成的语言,并且程序的需求发生改变时,相应的需要修改这些数据库的操作代码,这是JPA出现的前提。它的规范是我们之用去操作一个对象就完成了对数据库的操作。但是它只是一种规范,而Hibernate,TopLink,JDO等这些ORM框架就是实现了这种归法,它使这些ORM框架避免了各自为营的局面,统一了持久化的规范,减少了在使用不同ORM框架时可能出现的问题。JPA主要包括三方面的内容:
*ORM映射元数据
JPA支持XML和JDK5.0注释(也可释作注解)两种元数据的形式,元数据描述对象和表之间的映射关系,框架据此将实体对象持久化到数据库表中。
*JAVA持久化API查询
用来操作实体对象,执行CRUD操作,框架在后台替我们完成所有的事情,开发者可以从繁琐的JDBC和SQL代码中解脱出来。
*查询语言
这是持久化操作中很重要的一个方面,通过面向对象而非面向数据库的查询语言查询数据,避免程序的SQL语句紧密耦合。
JPA是JavaEE的规范之一。