这几天学习eclipselink,发现真的和hibernate一样一样的,它唯一的优势可能就是它是J2EE推荐的规范。缺点可能就是它的文档比较少(大多是英文的),不像hibernate那样丰富而且还有很多人使用吧,毕竟众人拾柴火焰高,用大家都用的,肯定会获得更多前人的经验。但是上边给了任务,所以怎么也得简单了解一下Eclipselink,把我最近看官网的例子和看大神的博客,总结下来的东西写一下,留个纪念,万一eclipselink后边被大家用起来,甚至用得比hibernate好呢!你说对不??(*^__^*)嘻嘻……
下面咱们就来讲讲eclipseLink的那些事儿:
eclipseLink是一个开源的实体映射框架,可以用在Java环境中,包括j2se j2ee
eclipseLink完全实现了以下这些规范:
JPA(Java Persistence API):
JPA是Java API实现ORM的实体对象关系映射的,它的目的是在Java应用程序中管理关系数据
JPA包括Java固有的查询语言(JPQL);Java的固有标准API;以及定义了Java api和xml的实体关系映射的格式。
eclipseLink是参考jpa来实现完成的。通常把eclipseLink来代替jpa的实现。
它的映射关系有:
@OneToOne
@OneToMany
@ManyToOne
@ManyToMany
它最常用的注解有:
@Id
Identifies the unique ID of the database entry(主键)
@GeneratedValue
Together with ID defines that this value is generated automatically.(自增)
@Transient
Field will not be saved in database(不会保存到数据库)
它支持SQL和NOSQL
我感觉可讲的也就是它映射关系了,毕竟学习hibernate和Mybatis的时候都是从这个学起的,那么eclipselink咱们也从这个开始吧。(PS:感觉学完这个,也就没啥了)
先看看咱们只用上面3个注解,别的什么都不用,eclipselink生成数据库是什么样子的:
先建立一个project,引入下面三个包: