最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot整合JDBC的實現(xiàn)

 更新時間:2021年01月18日 10:14:41   作者:劉信晨  
這篇文章主要介紹了SpringBoot整合JDBC的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

簡介

JDBC是最原基本的連接數(shù)據(jù)源的方式,在springboot中所有和數(shù)據(jù)源有關(guān)系的都在Spring Data家族中,所以我們看看springboot中如何使用JDBC來實現(xiàn)對數(shù)據(jù)庫的增刪改查操作。

簡單使用

引入依賴

這里我們只引入基本的依賴就好,創(chuàng)建一個springboot項目(這里版本是2.1.6),然后添加以下依賴:

  <dependencies>
    <!--jdbc-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-jdbc</artifactId>
    </dependency>

    <!--mysql驅(qū)動-->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <scope>runtimen</scope>
    </dependency>

    <!--web-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <!--test-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
    </dependency>

    <dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
    </dependency>
  </dependencies>

編寫配置文件

這里我們需要把數(shù)據(jù)庫的基本連接信息配置好

spring:
 datasource:
  driver-class-name: com.mysql.cj.jdbc.Driver
  ## 這里如果不配置時區(qū)可能會報錯,所以配置時區(qū):serverTimezone=UT
  url: jdbc:mysql://localhost:3306/study_springboot?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
  username: root
  password: root

編寫測試類

@RunWith(SpringRunner.class)
@SpringBootTest
public class BaseTest {

  @Autowired
  private DataSource dataSource;


  @Test
  public void load(){
    // 打印出:class com.zaxxer.hikari.HikariDataSource
    System.out.println(dataSource.getClass());
  }
}

實現(xiàn)增刪改查

spring boot中有很多的xxxTemplate,也就是給我們默認配置了 很多的模板,方便我們進行開發(fā),比如上面測試中的 JdbcTemplate,spring boot已經(jīng)給我們封裝好方法了,我們只要調(diào)用就好,下面是增刪改查的案例:

@RestController
public class TestController {


  @Autowired
  private JdbcTemplate jdbcTemplate;

  @GetMapping("/userList")
  public List<Map<String, Object>> getUserList(){
    String sql = "select * from study_springboot.user";
    List<Map<String, Object>> maps = jdbcTemplate.queryForList(sql);
    return maps;
  }
  @GetMapping("/addUser")
  public String addUser(){

    String sql = "insert into study_springboot.user(id, name, password) values('1', 'zhangsan', 'qqqq')";
    jdbcTemplate.update(sql);

    return "add success";
  }

  /**
   * 可以通過占位符實現(xiàn)入?yún)?
   * @param id
   * @return
   */
  @GetMapping("/updateUser/{id}")
  public String updateUser(@PathVariable("id") int id){
    String sql = "update study_springboot.user set name =?, password = ? where id = "+id;

    // 封裝占位符
    Object[] objects = new Object[2];
    objects[0] = "李四";
    objects[1] = "pppppp";

    jdbcTemplate.update(sql, objects);
    return "update success";
  }

  @GetMapping("/deleteUser/{id}")
  public String deleteUser(@PathVariable("id") int id){
    String sql = "delete from study_springboot.user where id = ?";
    // int 類型也是一個object,所以這樣傳參也是可以的
    jdbcTemplate.update(sql, id);

    return "delete success";
  }

}

上面的案例只是展示基本的操作,但是真實項目中是不會這樣寫的,一般還是整合MyBatis或者JPA來實現(xiàn)操作數(shù)據(jù)源。

到此這篇關(guān)于SpringBoot整合JDBC的實現(xiàn)的文章就介紹到這了,更多相關(guān)SpringBoot整合JDBC內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

西和县| 河北省| 潍坊市| 犍为县| 青阳县| 京山县| 奉节县| 泊头市| 芜湖县| 塔河县| 内江市| 盐津县| 故城县| 社会| 图们市| 平果县| 南宫市| 托克托县| 汝南县| 开化县| 阿勒泰市| 修水县| 安庆市| 东乌珠穆沁旗| 察哈| 金平| 错那县| 天水市| 务川| 海伦市| 庆城县| 葫芦岛市| 南溪县| 涿州市| 渝北区| 平潭县| 曲水县| 贡觉县| 桦甸市| 平江县| 仁寿县|