JPA到底是神马 没用过jpa,但是网上说jpa是hibernate的接口我不明白了接口?那怎么哪来的方法能拿来使用,没有实现怎么使用?怎么都搞不明白jpa到底是个神马玩意 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 直接就是使开发者从繁琐的JDBC和SQL代码中解脱出来。具体的百度百科就可以知道 注意jpa结尾是api,会不会帮助楼主加深理解。 愿意是java持久化api,和hibernate作用一样,用来做对象和数据之久化的,一般ejb用的比较多 Java持久化API,实际是一套规范。这么理解应该比较容易一点:JPA类似于Java接口,Hibernate是该接口的实现类,还有另一个实现类叫TopLink。当然,这么说可能不准确,但是容易理解。 JAVA EE中sun(oracle)提供的好多都是接口,即他们设计了一套规范,但是没有实现,交给具体的厂商去实现比如hibernate就实现了JPA的接口 JPA是sun公司为了使持久化结束百家争难,天下归一而出来的规范,所以只有接口没有实现,已经是J2EE5最新标准。因为只有接口,这样就把实现的任务交给了各家公司,Hibernate有其实现,TopLink也有。因为Hibernate用的比较多,所以基于Hibernate实现的JPA也用的最多(Hibernate-Jpa).以后JPA会用的越来越多。类似的道理还有JSF(表现层规范) JDBC也是一套接口,sun自己也不做实现,好像sun都是做定义规范,具体的实现交给厂商。 纯“注解式”持久层 省去在hibernate配置文件中配置大量的映射文件 简单的一些注解就可以实现实体和数据库的映射关系 就是 JPA 嘛,Hibernate 是 JPA 的参考实现之一。JPA 主要有三种不同的实现 EclipseLink, OpenJPA, Hibernate。个人认为 Hibernate 的实现在性能上比较差。 jpa是java persisterence api,java持久化接口,注意,此接口不是我们写Interface接口的接口,两个不一样。JPA是sun官方提供的共持久化对象使用的api,其他第三方orm工具必须使用它,去实现它,才能提供相应orm功能。 我还是有一点点不明白意思是不是说jpa是sun官方的东西,向JDBC一样?而其他orm工具内部就是调用的jpa? 楼主要开发中是否有自己写过一些DAO的接口和实现类?如果有的话,咱可以这么比喻:定义了一个接口:public interface BaseDao{ public void save(.....); public Object find(int id); public void delete(int id); . . . .}然后又比如因为项目一些特殊原因,有些情况下需要Hibernate,有些情况下需要直接JDBC,于是又写了二个不同的实现类:public class BaseDaoHibernateImpl implements BaseDao{ . . . .}public class BaseDaoJdbcImpl implements BaseDao{ . . . .}如此这般,这个BaseDao就相当于JPA了,它只定义了一套规范,具体这套规范怎么实现,那是BaseDaoHibernateImpl和BaseDaoJdbcImpl的事情。 MySql中插入中文报错:incorrect string value J2EE有中文文档么,找了好久找不到 我自己做个一个JAVA网上考试系统的后台, 请问LINUX下Mysql的JDBC驱动该如何设置 ? tomcat的配置问题,急 各位高手帮帮忙!!!基于struts的程序在浏览器中的显示问题,急! 精通ejb里bmp实体bean的基础问题 JBoss下JMS的问题?高分 想在Javaweb中定义一个变量,让整个项目都能访问到 我在myeclipse中创建一个html文件,我想要连接我自己的数据库,怎样链接 JSP纠结问题,高手指点呀! 有没有可以简单明白的解释一下序列化的作用
具体的百度百科就可以知道
这么理解应该比较容易一点:
JPA类似于Java接口,Hibernate是该接口的实现类,还有另一个实现类叫TopLink。
当然,这么说可能不准确,但是容易理解。
比如hibernate就实现了JPA的接口
因为只有接口,这样就把实现的任务交给了各家公司,Hibernate有其实现,TopLink也有。
因为Hibernate用的比较多,所以基于Hibernate实现的JPA也用的最多(Hibernate-Jpa).
以后JPA会用的越来越多。类似的道理还有JSF(表现层规范)
意思是不是说jpa是sun官方的东西,向JDBC一样?
而其他orm工具内部就是调用的jpa?
定义了一个接口:
public interface BaseDao{
public void save(.....);
public Object find(int id);
public void delete(int id);
.
.
.
.
}
然后又比如因为项目一些特殊原因,有些情况下需要Hibernate,有些情况下需要直接JDBC,于是又写了二个不同的实现类:
public class BaseDaoHibernateImpl implements BaseDao{
.
.
.
.
}public class BaseDaoJdbcImpl implements BaseDao{
.
.
.
.
}如此这般,这个BaseDao就相当于JPA了,它只定义了一套规范,具体这套规范怎么实现,那是BaseDaoHibernateImpl和BaseDaoJdbcImpl的事情。