国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

SpringCloud(第 040 篇)鏈接Mysql數(shù)據(jù)庫,通過CrudRepository編寫數(shù)

cjie / 2735人閱讀

摘要:添加一個使用接收請求添加用戶微服務(wù)啟動類鏈接數(shù)據(jù)庫通過編寫數(shù)據(jù)庫訪問。

SpringCloud(第 040 篇)鏈接Mysql數(shù)據(jù)庫,通過CrudRepository編寫數(shù)據(jù)庫訪問

-

一、大致介紹

</>復(fù)制代碼

  1. 1、前面章節(jié)提到了用JpaRepository訪問數(shù)據(jù)庫,而本章節(jié)則是用CrudRepository訪問數(shù)據(jù),那么他們之間都可以訪問數(shù)據(jù)庫,有啥聯(lián)系呢?
  2. 2、從源碼我可知JpaRepository繼承PagingAndSortingRepository,而PagingAndSortingRepository又繼承CrudRepository,從這方面講他們是子類與父類之間的關(guān)系;
  3. 3、而CrudRepository僅僅只是提供了最基本的數(shù)據(jù)庫訪問操作的方法,而JpaRepository在這些基礎(chǔ)上還提供了一些更豐富的操作接口,但是在實(shí)際應(yīng)用中大多數(shù)業(yè)務(wù)場景比較少用,但是還是有用的;
  4. 4、因此兩者到底如何抉擇的問題就來了,如果要我來選,我本人傾向于用CrudRepository,因?yàn)镃rudRepository已經(jīng)提供了基本的增刪改查操作,而且這些基本滿足我們絕大多數(shù)業(yè)務(wù)場景,我們不需要再增加額外的方法來操作數(shù)據(jù)庫了;
  5. 5、另外配置文件中的mysql數(shù)據(jù)庫配置,那么就得大家自己用自己的了哈;
二、實(shí)現(xiàn)步驟 2.1 添加 maven 引用包

</>復(fù)制代碼

  1. 4.0.0
  2. springms-provider-user-mysql-crudrepository
  3. 1.0-SNAPSHOT
  4. jar
  5. com.springms.cloud
  6. springms-spring-cloud
  7. 1.0-SNAPSHOT
  8. org.springframework.boot
  9. spring-boot-starter-data-jpa
  10. org.springframework.boot
  11. spring-boot-starter-web
  12. mysql
  13. mysql-connector-java
2.2 添加應(yīng)用配置文件(springms-provider-user-mysql-crudrepositorysrcmainresourcesapplication.yml)

</>復(fù)制代碼

  1. server:
  2. port: 8320
  3. spring:
  4. application:
  5. name: springms-provider-user-mysql-crudrepository #全部小寫
  6. #####################################################################################################
  7. # mysql 屬性配置
  8. datasource:
  9. driver-class-name: com.mysql.jdbc.Driver
  10. url: jdbc:mysql://ip:3306/hmilyylimh
  11. username: username
  12. password: password
  13. jpa:
  14. hibernate:
  15. #ddl-auto: create #ddl-auto:設(shè)為create表示每次都重新建表
  16. ddl-auto: update #ddl-auto:設(shè)為update表示每次都不會重新建表
  17. show-sql: true
  18. #####################################################################################################
  19. #####################################################################################################
  20. # 打印日志
  21. logging:
  22. level:
  23. root: INFO
  24. org.hibernate: INFO
  25. org.hibernate.type.descriptor.sql.BasicBinder: TRACE
  26. org.hibernate.type.descriptor.sql.BasicExtractor: TRACE
  27. com.springms: DEBUG
  28. #####################################################################################################
2.3 添加訪問底層數(shù)據(jù)模型的DAO接口(springms-provider-user-mysql-crudrepository/src/main/java/com/springms/cloud/repository/UserRepository.java)

</>復(fù)制代碼

  1. package com.springms.cloud.repository;
  2. import org.springframework.data.repository.CrudRepository;
  3. import org.springframework.stereotype.Repository;
  4. import com.springms.cloud.entity.User;
  5. @Repository
  6. public interface UserRepository extends CrudRepository {
  7. }
2.4 添加實(shí)體用戶類User(springms-provider-user-mysql-crudrepository/src/main/java/com/springms/cloud/entity/User.java)

</>復(fù)制代碼

  1. package com.springms.cloud.entity;
  2. import javax.persistence.Column;
  3. import javax.persistence.Entity;
  4. import javax.persistence.GeneratedValue;
  5. import javax.persistence.GenerationType;
  6. import javax.persistence.Id;
  7. @Entity
  8. public class User {
  9. @Id
  10. @GeneratedValue(strategy = GenerationType.AUTO)
  11. private Long id;
  12. @Column
  13. private String username;
  14. @Column
  15. private String name;
  16. @Column
  17. private Integer age;
  18. @Column
  19. private String balance;
  20. public Long getId() {
  21. return this.id;
  22. }
  23. public void setId(Long id) {
  24. this.id = id;
  25. }
  26. public String getUsername() {
  27. return this.username;
  28. }
  29. public void setUsername(String username) {
  30. this.username = username;
  31. }
  32. public String getName() {
  33. return this.name;
  34. }
  35. public void setName(String name) {
  36. this.name = name;
  37. }
  38. public Integer getAge() {
  39. return this.age;
  40. }
  41. public void setAge(Integer age) {
  42. this.age = age;
  43. }
  44. public String getBalance() {
  45. return this.balance;
  46. }
  47. public void setBalance(String balance) {
  48. this.balance = balance;
  49. }
  50. }
2.5 添加用戶Web訪問層Controller(springms-provider-user-mysql-crudrepository/src/main/java/com/springms/cloud/controller/ProviderUserMysqlCrudRepoController.java)

</>復(fù)制代碼

  1. package com.springms.cloud.controller;
  2. import com.springms.cloud.repository.UserRepository;
  3. import org.springframework.beans.factory.annotation.Autowired;
  4. import org.springframework.web.bind.annotation.*;
  5. import com.springms.cloud.entity.User;
  6. /**
  7. * 用戶微服務(wù)Controller。
  8. *
  9. * @author hmilyylimh
  10. *
  11. * @version 0.0.1
  12. *
  13. * @date 17/10/18
  14. *
  15. */
  16. @RestController
  17. public class ProviderUserMysqlCrudRepoController {
  18. @Autowired
  19. private UserRepository userRepository;
  20. @GetMapping("/simple/{id}")
  21. public User findUserById(@PathVariable Long id) {
  22. return this.userRepository.findOne(id);
  23. }
  24. @GetMapping("/simple/list")
  25. public Iterable findUserList() {
  26. return this.userRepository.findAll();
  27. }
  28. /**
  29. * 添加一個student,使用postMapping接收post請求
  30. *
  31. * http://localhost:8320/simple/addUser?username=user11&age=11&balance=11
  32. *
  33. * @return
  34. */
  35. @PostMapping("/simple/addUser")
  36. public User addUser(@RequestParam(value = "username", required=false) String username, @RequestParam(value = "age", required=false) Integer age, @RequestParam(value = "balance", required=false) String balance){
  37. User user=new User();
  38. user.setUsername(username);
  39. user.setName(username);
  40. user.setAge(age);
  41. user.setBalance(balance);
  42. return userRepository.save(user);
  43. }
  44. }
2.6 添加用戶微服務(wù)啟動類(springms-provider-user-mysql-crudrepository/src/main/java/com/springms/cloud/MsProviderUserMysqlCrudRepoApplication.java)

</>復(fù)制代碼

  1. package com.springms.cloud;
  2. import org.springframework.boot.SpringApplication;
  3. import org.springframework.boot.autoconfigure.SpringBootApplication;
  4. /**
  5. * 鏈接Mysql數(shù)據(jù)庫,通過CrudRepository編寫數(shù)據(jù)庫訪問。
  6. *
  7. * @author hmilyylimh
  8. *
  9. * @version 0.0.1
  10. *
  11. * @date 17/10/18
  12. *
  13. */
  14. @SpringBootApplication
  15. public class MsProviderUserMysqlCrudRepoApplication {
  16. public static void main(String[] args) {
  17. SpringApplication.run(MsProviderUserMysqlCrudRepoApplication.class, args);
  18. System.out.println("【【【【【【 鏈接MysqlJpaCrud數(shù)據(jù)庫微服務(wù) 】】】】】】已啟動.");
  19. }
  20. }
三、測試

</>復(fù)制代碼

  1. /****************************************************************************************
  2. 一、鏈接Mysql數(shù)據(jù)庫,通過CrudRepository編寫數(shù)據(jù)庫訪問:
  3. 1、啟動 springms-provider-user-mysql-crudrepository 模塊服務(wù),啟動1個端口;
  4. 2、在瀏覽器輸入地址 http://localhost:8320/simple/10 可以看到用戶ID=10的信息成功的被打印出來;
  5. 3、使用 IDEA 自帶工具 Test Restful WebService 發(fā)送 HTTP POST 請求,并添加 username、age、balance三個參數(shù),然后執(zhí)行請求,并去 mysql 數(shù)據(jù)庫查看數(shù)據(jù)是否存在,正常情況下 mysql 數(shù)據(jù)庫剛剛插入的數(shù)據(jù)成功了:
  6. 4、使用 REST Client 執(zhí)行 "/simple/list" 接口,也正常將 mysql 數(shù)據(jù)庫中所有的用戶信息打印出來了;
  7. ****************************************************************************************/
四、下載地址

https://gitee.com/ylimhhmily/SpringCloudTutorial.git

SpringCloudTutorial交流QQ群: 235322432

SpringCloudTutorial交流微信群: 微信溝通群二維碼圖片鏈接

歡迎關(guān)注,您的肯定是對我最大的支持!!!

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/67822.html

相關(guān)文章

  • SpringCloud 039 鏈接Mysql數(shù)據(jù)庫,通過JpaRepository編寫數(shù)據(jù)

    摘要:添加一個使用接收請求添加用戶微服務(wù)啟動類鏈接數(shù)據(jù)庫通過編寫數(shù)據(jù)庫訪問。 SpringCloud(第 039 篇)鏈接Mysql數(shù)據(jù)庫,通過JpaRepository編寫數(shù)據(jù)庫訪問 - 一、大致介紹 1、本章節(jié)開始講解一下訪問數(shù)據(jù)庫的操作,不過其實(shí)這還不算是SpringCloud的范疇,應(yīng)該說是SpringBoot的操作范疇,這些就先拋開了,我們就還是講解數(shù)據(jù)庫的操作; 2、JpaRep...

    ethernet 評論0 收藏0
  • SpringCloud 041 鏈接Mysql數(shù)據(jù)庫,通過JdbcTemplate編寫數(shù)據(jù)庫

    摘要:通過注解引入對象。添加一個使用接收請求添加賬號訪問層添加微服務(wù)啟動類鏈接數(shù)據(jù)庫通過編寫數(shù)據(jù)庫訪問。 SpringCloud(第 041 篇)鏈接Mysql數(shù)據(jù)庫,通過JdbcTemplate編寫數(shù)據(jù)庫訪問 - 一、大致介紹 1、前面章節(jié)提到了JPA操作訪問數(shù)據(jù)庫,本章節(jié)我們講解一下如何用JdbcTemplate操作訪問數(shù)據(jù)庫; 2、使用JdbcTemplate是一個相對更底層的操作,可...

    Eirunye 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<