说明
上周实验室学习了数据库设计相关的内容,其中涉及到将数据库实体化的问题,JPA是一个很好的实现工具,便开始着手于JPA的学习。因为JPA涉及到的知识还是挺多的,需要学习许多新的知识,所以对于JPA的学习花了我很多的时间,遇到了很多的挫折,不过过程还是挺有意义的。
本博文只对JPA在eclipse中的使用做讲解。
知识准备
a.postgresql 数据库
b.数据库设计
c.JDBC
使用JPA的前提是掌握数据库设计的知识,本博文是针对postgresql数据库下JPA在eclipse中的使用。postgresql数据库与数据库设计的相关知识自行补充。
JPA是什么
JPA,Java Persistence API,中文释义java持久层API;
作用:描述对象–关系表的映射关系,将运行期的实体对象持久化到数据库中。
我的个人理解就是将数据库中的数据表映射为我们熟悉的Java类,我的理解就是这么简单,可以参考百度文库里的这句话自行理解:在JPA框架下创建实体和创建Java 类一样简单,没有任何的约束和限制,只需要使用 javax.persistence.Entity进行注释。
另:JPA在eclipse中其实就是一个插件。
下载JPA插件
方法一
网络下载,比如Spring的官网。这种方法自行体验,我使用的是方法二。
方法二
直接在eclipse的插件库里下载,具体步骤如下:
菜单“help”–>“Eclipse Marketplace”–>搜索关键字“JPA Diagram”–>选择“Install”即可,插件较大,需耐心等待。
参考下图:
创建JPA Project
1.new JPA Project
a.选择new JPA-JPA Project;
b.给项目命名,添加服务器(添加服务器需要加载一段时间,需耐心等待);
参考下面的组图:
c.添加postgresql的驱动;
d.Test Connection,测试连接,如果连接失败,继续修改相关信息;
e.最后finish即可。
2.JPA Entities from tables将数据表实例化
a.右键new–>JPA Entities from tables;
b.勾选需要实例化的数据表;
c.下图的相关设置;
Associations fetch设为”lazy”,Collection properties type设为”java.util.Set”;
d.key generator设为”sequence”。
e.finish即可。
3.最终效果图
如下图:
总结反思
待提高
如何使用maven管理JPA待学习。
JPA涉及到的东西还有EJB方面的知识,鉴于本人学到的有限,便只能做简单的底层工作了,后续会继续学习分享EJB的知识。