springBoot-JPA

网友投稿 262 2022-09-23

springBoot-JPA

----------JPA是什么----------

- 首先JPA的全称叫做Java Persistence API,JPA是一个基于O/R映射的标准规范。

- 在这个规范中,JPA只定义标准规则,不提供实现,使用者则需要按照规范中定义的方式来使用。

- 目前JPA的主要实现有Hibernate、EclipseLink、OpenJPA等。

- 事实上,由于Hibernate在数据访问解决技术领域的绝对霸主地位,JPA的标准基本是由Hibernate来主导的

使用流程:

1.在Spring Boot中使用JPA,我们在创建工程的时候需要选择JPA依赖,如下

2.配置基本属性

-2.1 spring.jpa.hibernate.ddl-auto=update

-2.2spring.jpa.show-sql=true

-2.3spring.jackson.serialization.indent_output=true

2.1

配置了实体类维护数据库表结构的具体行为,update表示当实体类的属性发生变化时,表结构跟着更新,

这里我们也可以取值create,这个create表示启动的时候删除上一次生成的表,并根据实体类重新生成表,

这个时候之前表中的数据就会被清空;还可以取值create-drop,这个表示启动时根据实体类生成表,

但是当sessionFactory关闭的时候表会被删除;validate表示启动时验证实体类和数据表是否一致;none表示啥都不做。

2.2

表示hibernate在操作的时候在控制台打印真实的sql语句

2.3

表示格式化输出的json字符串

3.定义映射实体类

如果2.1中设置的为update/create,那么接下来,定义相应的实体类,在Project启动时,系统会根据实体类创建相应的数据表

首先在实体类上我们使用了@Entity注解,这个表示这是一个和数据库表映射的实体类,在属性id上我们添加了@Id注解

,表示该字段是一个id,@GeneratedValue注解则表示该字段自增。@NamedQuery注解表示一个NamedQuery查询,

这里一个名称代表一个查询语句,我们一会可以在控制器中直接调用@NamedQuery中的withNameAndAddressNamedQuery方法,

该方法代表的查询语句是select p from Person p where p.name=?1 and p.address=?2。

4.定义数据访问接口

数据访问接口需要继承JpaRepository类

5.编写Controller测试

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:springcloud微服务--单体架构分析
下一篇:《狼殿下》制片人陈玉珊:王大陆是黑马李沁求变,肖战雄心打动我!
相关文章

 发表评论

暂时没有评论,来抢沙发吧~