SpringBoot連接配接Mysql
第一個SpringBoot的練習就是連接配接資料庫,使用的是就是基礎的元件,沒有使用web和mybatis。也是作為一個基礎的demo。開始。
因為之前的java項目是通過導入jar包來實作,非常的繁瑣并且jar包不容易管理。後來産生了maven,通過maven來管理jar包。本次項目也是通過pom檔案來管理依賴,同時,因為SpringBoot設定了預設的依賴版本,這裡也不再叙述導入依賴的版本。
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIn5GcsQXYtJ3bm9CXldWYtlWPzNXZj9mcw1ycz9WL49zdaVnQuxUMRRVT00EVNlXVU10dNRlT3FkaNdXSUxEbkdVW0xmMMpGbHVVM5MlY25UbMpnTtJWMshVYzZUbM5WNXFWcsdlWpFTaipWM5Nme50GTykFRPdXRq1UeZRVT4hTeMZTTINGMShUYvwlbj5yZtlmbkN3YuQnclZnbvN2Ztl2Lc9CX6MHc0RHaiojIsJye.jpg)
導入的依賴如下:下面的代碼就是全部的依賴,有些最開始建立項目的時候已經導入了,這裡仍然放在下面了。記得添加依賴後要更新一下,要不然很多東西IDE無法做配置。
<!-- SpringBoot基礎依賴 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<!-- JDBC依賴 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!-- MySQL依賴 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!-- 測試依賴 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
maven更新的圖檔如下,這樣更新後就可以使用依賴中的類。
導入依賴後,需要在SpringBoot配置檔案中進行資料庫的基礎配置。這裡配置檔案是application.properties。不是現在常見的yml格式,這裡是spring預設的格式。其他格式的資料庫配置需要查詢一下,後面也會換成其他格式,這種格式不好區分各個中間件配置,但是現在暫時使用這個格式。配置如下:
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test
spring.datasource.username=root
spring.datasource.password=12345678
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
建立測試類就可以了,下面就可以寫代碼了。代碼如下:
package com.psq.train.mysql;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
/**
* ConnectMySQLTrain.java
* Description: 使用基礎的元件連接配接MySQL
*
* @author Peng Shiquan
* @date 2020/5/30345
*/
@Component
public class ConnectMySQLTrain {
@Resource
private JdbcTemplate jdbcTemplate;
/**
* Description: 測試MySQL資料讀取
*
* @param
* @return void
* @Author: Peng Shiquan
* @Date: 2020/5/31
*/
@PostConstruct
public void testMySQL() {
String sql = "SELECT id,name,password FROM `user`";
List<TestUser> testUserList = jdbcTemplate.query(sql, new RowMapper<TestUser>() {
@Override
public TestUser mapRow(ResultSet resultSet, int i) throws SQLException {
TestUser testUser = new TestUser();
testUser.setId(resultSet.getInt("id"));
testUser.setName(resultSet.getString("name"));
testUser.setPassword(resultSet.getString("password"));
return testUser;
}
});
System.err.println("查詢成功,查詢結果如下:" + testUserList.toString());
}
}
需要注意的是:這裡沒有使用SPringBoot的web子產品,隻是簡單的一個demo,是以就單獨寫了一個類,在項目啟動的時候運作一下就可以了
@Component
注解是為了把普通pojo執行個體化到spring容器中,相當于配置檔案中的
<bean id="" class=""/>
,
@PostConstruct
注解的意思是:被@PostConstruct修飾的方法會在伺服器加載Servlet的時候運作,并且隻會被伺服器執行一次。實體類的代碼因為沒有什麼可以講的,這裡就不再占面積了。
運作項目這裡也沒有什麼可以講的地方。就是SpringBoot内置了Tomcat,但是因為我這個項目沒有web子產品,是以沒有内嵌tomcat,關于這些可以放到後面來說。本次就是打成了jar包,通過jvm運作。結果如下:
上面說的可能有些地方不對,大家可以指導一下。就這樣吧,結束。