提示:本文適用于初學(xué)者,資深玩家仁者見仁智者見智
前言
在家閑來(lái)無(wú)事,想起最基礎(chǔ)的spring boot項(xiàng)目,但整合jdbc,鏈接數(shù)據(jù)庫(kù)一整個(gè)操作對(duì)于初學(xué)者來(lái)說(shuō)還是有些困難,我順帶記錄一下。之后把springboot整合Mybatis和整合redis以及一些案例也寫一下,期待成品給大家。。。。
提示:以下是本篇文章正文內(nèi)容,下面案例可供參考
一、spring boot的helloworld
首先打開idea
創(chuàng)建新項(xiàng)目,例如創(chuàng)建一個(gè)demo0305項(xiàng)目工程
之后選擇springboot項(xiàng)目的web功能就可以了
點(diǎn)擊Finish生成項(xiàng)目,注意:初始加載可能會(huì)有很多文件,比較緩慢,耐性等待右下角無(wú)加載項(xiàng)就可以了
(1)·有同學(xué)可能要問不是鏈接MySQL嗎?不用把MySQL功能也選上嗎???
我的回答是:這個(gè)后面在pom.xml文件里增加相關(guān)的依賴就行,暫時(shí)不用選擇,也是可以運(yùn)行的。
之后在src下創(chuàng)建一個(gè)Controller的包,為了代碼規(guī)范,建議把所有的Controller放在一個(gè)包里,方便查看
再新建一個(gè)helloController的Java文件,用于編寫hello請(qǐng)求的響應(yīng)方法
生成文件格式如下圖所示即可
此時(shí)就已經(jīng)有了主啟動(dòng)文件Demo0305Application和控制文件helloController
接下來(lái)就開始編輯helloController文件
具體代碼如下
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
class helloController {
@GetMapping("/hello")
public String hello(){
return "hello Spring Boot";
}
}
(2)此時(shí)同學(xué)們要問,@GetMapping這個(gè)方法是怎么寫的,內(nèi)在邏輯是什么?
其實(shí)只是寫了個(gè)@GetMapping的注解,但要在@RestController之后,再寫一個(gè)類,返回hello Spring Boot字樣,具體的底層代碼可以按著Ctrl點(diǎn)擊注釋本身,你就能跳轉(zhuǎn)到底層的實(shí)現(xiàn)邏輯
到此,保存一下就可以啟動(dòng)項(xiàng)目了(右上角綠色按鈕啟動(dòng))
成功啟動(dòng)后,在瀏覽器訪問localhost:8080/hello顯示成功hello spring boot
hello world調(diào)試成功,我的有位老師說(shuō)過,只要hello world調(diào)試成功,就應(yīng)該把項(xiàng)目全部都運(yùn)行出來(lái),只是時(shí)間的問題。后面點(diǎn)擊右上角紅色關(guān)閉服務(wù)器
二、spring boot整合jdbc,實(shí)現(xiàn)MySQL的查詢和顯示
實(shí)現(xiàn)了helloworld,現(xiàn)在鏈接MySQL就需要在pom.xml文件里增加相關(guān)的依賴了,需要增加的依賴在spring官網(wǎng)也能查到,下面我給出所需的依賴
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!--Spring boot 核心-->
<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>
<!-- druid數(shù)據(jù)源驅(qū)動(dòng) -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.6</version>
</dependency>
<dependency>
<groupId>org.lionsoul</groupId>
<artifactId>ip2region</artifactId>
<version>1.7.2</version>
</dependency>
</dependencies>
原始的依賴只有兩個(gè)一個(gè)是spring-boot-starter-web這個(gè)依賴,另外一個(gè)是spring-boot-starter-test這個(gè)依賴,這兩個(gè)一個(gè)是web項(xiàng)目所用的,一個(gè)是用來(lái)測(cè)試的,也是最基本的兩個(gè)。==這個(gè)pom文件要看得懂。==而且 <dependencies和
<dependency的這兩者關(guān)系也要看清楚
為了方便操作,我上面給的這些依賴就是所有的依賴,已經(jīng)包含了基本的那兩個(gè)依賴,直接覆蓋dependencies里面就行了,之后點(diǎn)擊右上角的加載項(xiàng),把依賴加載完,也是直至右下角加載完成。
現(xiàn)在MySQL的相關(guān)依賴已經(jīng)加入,但是對(duì)于端口和MySQL的賬號(hào)密碼還沒設(shè)置,所以現(xiàn)在開始設(shè)置MySQL
(1)配置資源,要在resource文件下配置
(1)有兩種創(chuàng)建配置文件的方法,要用哪一種呢?
一種創(chuàng)建文件的方法是直接在application.properties里面配置
配置文件如下
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/blog?useUnicode=true&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=123456
這個(gè)文件前面都帶有spring.datasource的前綴并且管理起來(lái)也不方便
所以另外一種創(chuàng)建配置類的方法是,創(chuàng)建一個(gè)application.yml的yml文件,使得結(jié)構(gòu)清晰,方便管理
并且yml文件的書寫方法方便快捷,如下
spring:
datasource:
url: jdbc:mysql://localhost:3306/blog? useUnicode=true&characterEncoding=utf8
username: root
password: 123456
driver-class-name: com.mysql.cj.jdbc.Driver
注意:yml文件的頂格和空格代表了上下級(jí)關(guān)系,所以這個(gè)頂格不能去掉。
這里創(chuàng)建yml文件的方法
需要再設(shè)置File---->Settings
Editor---->File And Code Templates
手動(dòng)輸入ym File 后面輸入yml,點(diǎn)擊右下角apply即可
這樣,在resource右鍵new的時(shí)候,就看見yml文件了,輸入application即可生成application.yml文件,就可以配置MySQL的賬戶密碼了
生成如圖
注意:3306/后面這個(gè)是你的數(shù)據(jù)庫(kù)名字,我這里數(shù)據(jù)庫(kù)里有個(gè)blog的表,待會(huì)我會(huì)進(jìn)行查詢,你們也可以在數(shù)據(jù)庫(kù)里設(shè)置自己的數(shù)據(jù)庫(kù),并把名字復(fù)制到這里就行了。我的數(shù)據(jù)庫(kù)里有這些記錄,待會(huì)要查到,并顯示。
這時(shí),MySQL就鏈接好了,開始建立查詢,我們重新寫一個(gè)Controller,就命名為jdbcController,創(chuàng)建方法和helloController的方法一樣,如下圖所示
在里面編寫文件
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Map;
import java.util.List;
@RestController
public class jdbcController {
@Autowired
JdbcTemplate jdbcTemplate;
//寫一個(gè)list請(qǐng)求,查詢數(shù)據(jù)庫(kù)信息
@GetMapping("/list")
public List<Map<String,Object>> list(){
String sql="select * from commentlikes";
List<Map<String,Object>> list_map=jdbcTemplate.queryForList(sql);
return list_map;
}
}
有一個(gè) @Autowired的注解,這里也是自動(dòng)注入的注解,還有一條我們熟悉的 @GetMapping注解,list里面包含了一條sql語(yǔ)句,具體語(yǔ)句是寫在雙引號(hào)里面并進(jìn)行賦值的,使用List<Map<String,Object>> list_map=jdbcTemplate.queryForList(sql);方法將查詢到的信息羅列出來(lái),并進(jìn)行返回到主頁(yè)的操作。
注意:這里的select * from commentlikes是根據(jù)你的數(shù)據(jù)庫(kù)里面的表名進(jìn)行查詢的,在頁(yè)面里只有羅列,沒有固定格式,在做大型數(shù)據(jù)項(xiàng)目時(shí),就可以在需要查詢的項(xiàng)目里編寫這樣的方法,這也是底層查詢邏輯。
(2)至此編寫結(jié)束,啟動(dòng)項(xiàng)目
成功啟動(dòng)
訪問localhost:8080/list
我們的庫(kù)表信息已成功顯示。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-775467.html
總結(jié)
本次文章主要是對(duì)springboot的項(xiàng)目進(jìn)行MySQL的整合,可以進(jìn)行簡(jiǎn)單的練習(xí),在拿到成品的HTML網(wǎng)頁(yè)時(shí),只需要把查詢到的語(yǔ)句返回到指定的接口中,查詢?nèi)蝿?wù)就完成。
感謝大家看到這里,期待您的點(diǎn)贊和關(guān)注。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-775467.html
到了這里,關(guān)于詳細(xì)springboot實(shí)現(xiàn)MySQL數(shù)據(jù)庫(kù)的整合步驟的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!