一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - SpringBoot集成JPA的示例代碼

SpringBoot集成JPA的示例代碼

2021-03-25 11:16千里明月 Java教程

本篇文章主要介紹了SpringBoot集成JPA的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

本文介紹了springboot集成jpa的示例代碼,分享給大家,具體如下:

1.創(chuàng)建新的maven項目

SpringBoot集成JPA的示例代碼

2. 添加必須的依賴

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<!--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啟動類

?
1
2
3
4
5
6
7
8
9
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

?
1
2
3
4
5
6
7
8
#建立/更新數(shù)據(jù)表的配置
spring.jpa.hibernate.ddl-auto=update
#數(shù)據(jù)庫地址
spring.datasource.url=jdbc:mysql://localhost:3306/qian?useunicode=true&characterencoding=utf-8
#數(shù)據(jù)庫用戶名
spring.datasource.username=root
#數(shù)據(jù)庫密碼
spring.datasource.password=123
  1. update:hibernate根據(jù)給定的entity結構改變數(shù)據(jù)庫。
  2. create: 每次都會創(chuàng)建數(shù)據(jù)庫,關閉時不會刪除
  3. none: mysql的默認設置 , 不改變數(shù)據(jù)結構
  4. create-drop: 創(chuàng)建數(shù)據(jù)庫,但是每次sessionfactory關閉后都會刪除

5. 新建實體類user

這個時候其實已經(jīng)可以啟動springboot, 但是不會生成數(shù)據(jù)表,因為還沒有配置實體類的jpa

SpringBoot集成JPA的示例代碼

先新建user.java

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
import org.hibernate.annotations.genericgenerator;
import javax.persistence.entity;
import javax.persistence.generatedvalue;
import javax.persistence.id;
/**
 * created by andy on 2018/1/20.
 */
//表明這是個需要生成數(shù)據(jù)表的類
@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數(shù)據(jù)表

SpringBoot集成JPA的示例代碼

6. 實現(xiàn)crud

crudrepository是一個提供了普通增刪改查方法的接口,由spring內部提供,我們只需調用即可

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@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

?
1
2
3
public interface userrepository extends crudrepository<user, string> {
 
}

7. 實現(xiàn)controller控制

新建usercontroller.java

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
@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;
  }
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://my.oschina.net/u/3490860/blog/1610121

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 美女被视频网站看免费入口 | 亚洲国产精久久久久久久 | 丝袜捆绑调教视频免费区 | 国产精品久久久 | 青青久久久| 男生同性啪视频在线观看 | 好爽轻点太大了太深了 | 99热精品久久 | 欧美人曾交 | 国产精品午夜剧场 | 调教全程肉动画片在线观看 | 无人区尖叫之夜美女姐姐视频 | 青草青草视频2免费观看 | 无罩看奶禁18| 人人人人看人人人做人人 | 成人国产第一区在线观看 | 国产成人一区二区三区视频免费蜜 | 国产一区在线看 | 亚洲人成激情在线播放 | 国产成人永久免费视 | 四虎永久在线精品国产 | 边摸边吃奶边做爽视频免费 | 草草视频免费看 | 满溢游泳池免费土豪全集下拉版 | 女色在线观看免费视频 | 国产午夜永久福利视频在线观看 | 耽美肉文高h | 免费视频精品一区二区三区 | 国产第一自拍 | 亚洲欧美专区精品伊人久久 | 亚洲黑人巨大videos0 | 免费草比视频 | www亚洲视频 | 亚洲欧美日韩国产综合专区 | 爽好舒服使劲添高h视频 | zol中关村在线官网 yy6080欧美三级理论 | 国产综合网站 | 美式禁忌在线 | 欧美日韩三区 | 成年无限观看onlyfans | 国产91在线精品狼人 |