SpringBoot集成JPA


声明:本文转载自https://my.oschina.net/u/3490860/blog/1610121,转载目的在于传递更多信息,仅供学习交流之用。如有侵权行为,请联系我,我会及时删除。

1.创建新的maven项目

2. 添加必须的依赖

    <!--springboot的必须依赖-->     <parent>         <groupId>org.springframework.boot</groupId>         <artifactId>spring-boot-starter-parent</artifactId>         <version>1.5.9.RELEASE</version>     </parent>      <dependencies>         <!--启动springmvc的相关配置,springboot的自动配置-->         <dependency>             <groupId>org.springframework.boot</groupId>             <artifactId>spring-boot-starter-web</artifactId>         </dependency>         <!--jpa-->         <dependency>             <groupId>org.springframework.boot</groupId>             <artifactId>spring-boot-starter-data-jpa</artifactId>         </dependency>         <!--mysql驱动-->         <dependency>             <groupId>mysql</groupId>             <artifactId>mysql-connector-java</artifactId>         </dependency>     </dependencies> 

3. 新建springboot启动类

import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;  @SpringBootApplication public class Application {     public static void main(String[] args) {         SpringApplication.run(Application.class,args);     } }

4. 在resources跟目录下新建application.properties

#建立/更新数据表的配置 spring.jpa.hibernate.ddl-auto=update #数据库地址 spring.datasource.url=jdbc:mysql://localhost:3306/qian?useUnicode=true&characterEncoding=utf-8 #数据库用户名 spring.datasource.username=root #数据库密码 spring.datasource.password=123
  • update:Hibernate根据给定的Entity结构改变数据库。
  • create: 每次都会创建数据库,关闭时不会删除
  • none: mysql的默认设置 , 不改变数据结构
  • create-drop: 创建数据库,但是每次sessionFactory关闭后都会删除

5. 新建实体类User

这个时候其实已经可以启动springboot, 但是不会生成数据表,因为还没有配置实体类的jpa

先新建user.java

 import org.hibernate.annotations.GenericGenerator; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id;  /**  * Created by Andy on 2018/1/20.  */ //表明这是个需要生成数据表的类 @Entity public class User { //    定义主键id     @Id //    声明一个策略通用生成器,name为”system-uuid”,策略strategy为”uuid”。     @GenericGenerator(name = "system-uuid", strategy ="uuid") //    用generator属性指定要使用的策略生成器。     @GeneratedValue(generator = "system-uuid")     private String id;     private String name;     private Integer age;     private Boolean sex;      public String getId() {         return id;     }      public void setId(String id) {         this.id = id;     }      public String getName() {         return name;     }      public void setName(String name) {         this.name = name;     }      public Integer getAge() {         return age;     }      public void setAge(Integer age) {         this.age = age;     }      public Boolean getSex() {         return sex;     }      public void setSex(Boolean sex) {         this.sex = sex;     } }

这时候启动项目,就会在指定位置下生成一个user数据表

6. 实现CRUD

CrudRepository是一个提供了普通增删改查方法的接口,由spring内部提供,我们只需调用即可

@NoRepositoryBean public interface CrudRepository<T, ID extends Serializable> extends Repository<T, ID> {     <S extends T> S save(S var1);      <S extends T> Iterable<S> save(Iterable<S> var1);      T findOne(ID var1);      boolean exists(ID var1);      Iterable<T> findAll();      Iterable<T> findAll(Iterable<ID> var1);      long count();      void delete(ID var1);      void delete(T var1);      void delete(Iterable<? extends T> var1);      void deleteAll(); } 

新建UserRepository.java

public  interface UserRepository extends CrudRepository<User, String> {  }

7. 实现controller控制

新建UserController.java

@RestController public class UserController {     @Autowired     private UserRepository userRepository;      @RequestMapping("/add")     public User add(String name){         User user = new User();         user.setName(name);         return userRepository.save(user);     }      @RequestMapping("/list")     public Iterable<User> list(){         Iterable<User> all = userRepository.findAll();         return all;     } }

本文发表于2018年01月21日 08:32
(c)注:本文转载自https://my.oschina.net/u/3490860/blog/1610121,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除.

阅读 1765 讨论 0 喜欢 0

抢先体验

扫码体验
趣味小程序
文字表情生成器

闪念胶囊

你要过得好哇,这样我才能恨你啊,你要是过得不好,我都不知道该恨你还是拥抱你啊。

直抵黄龙府,与诸君痛饮尔。

那时陪伴我的人啊,你们如今在何方。

不出意外的话,我们再也不会见了,祝你前程似锦。

这世界真好,吃野东西也要留出这条命来看看

快捷链接
网站地图
提交友链
Copyright © 2016 - 2021 Cion.
All Rights Reserved.
京ICP备2021004668号-1