Java springboot接口迅速上手,帶你半小時極速入門
如何通過springboot來寫一個簡單的接口?
想要知道怎么寫可能只需要幾步,半小時足矣
本篇文章只是教大家如何快速地使用。
但是具體是為什么這樣用?以及背后的原理,請大家先認(rèn)真學(xué)習(xí)javaweb-servlet-ssm框架等等,這里就不做過多的講解。
前期準(zhǔn)備:
首先在idea中新建項目:
new project-spring initializr一路next(如有需要修改的信息,也可以自己修改,不重要)


注意,這里要記得選上,作用是在初始化的時候,需要那些東西idea就幫你初始化進(jìn)去(當(dāng)然,后期也能自己手動加,但是這里為了方便學(xué)習(xí),還是該選的都選上)
- developer tools —spring boot devtools

- web —spring web

- SQL—jdbc api—mysql driver —mybatis framework

最后選完了,確保,右邊欄selected dependencies為如下:

再一路next。。等待加載完成
再在MySQL數(shù)據(jù)庫中準(zhǔn)備一個student表:

接著,把src\main\resources中的application.properties文件改名成application.yml,這是因為yml文件的結(jié)構(gòu)比較清晰,好看易懂
application.yml文件是一個配置文件,作用是可以配置一些數(shù)據(jù)庫信息,他來告訴springboot我們的數(shù)據(jù)庫賬號密碼呀,表名是啥等等。


以下是我的application.yml,你們可以根據(jù)自己的實際情況修改對應(yīng)的信息:
server:
port: 8081
spring:
#數(shù)據(jù)庫連接配置
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/dt55?characterEncoding=utf-8&useSSL=false&serverTimezone=UTC
username: root
password: 888888
#mybatis的相關(guān)配置
mybatis:
#mapper配置文件
mapper-locations: classpath:mapper/*.xml
驗證先前配置是否成功:點開src\main\java\com\wzy\demo\DemoApplication.java
點擊箭頭所指的運(yùn)行按鈕:

若控制臺出現(xiàn):

并且在瀏覽器中輸入http://localhost:8081/會出現(xiàn):

則代表配置成功
步驟一:建立實體類,需要跟數(shù)據(jù)庫表字段保持一致
在src\main\java\com\wzy\demo目錄下新建一個名為entity包

再在entity包下,新建一個名為Student的class,這個Student即為實體類,該實體類即對應(yīng)數(shù)據(jù)庫中的表,類中的屬性與數(shù)據(jù)庫字段保持一致,并且加上構(gòu)造函數(shù)以及get、set方法:
public class Student {
private int id;
private String name;
private int age;
private String hobby;
private String address;
public Student(int id, String name, int age, String hobby, String address) {
this.id = id;
this.name = name;
this.age = age;
this.hobby = hobby;
this.address = address;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getHobby() {
return hobby;
}
public void setHobby(String hobby) {
this.hobby = hobby;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
}
步驟二:建立mapper接口,定義要操作的數(shù)據(jù)庫的動作
操作的數(shù)據(jù)庫的動作比如:查詢、更新、刪除等等
這些動作就是mapper
在src\main\java\com\wzy\demo目錄下新建一個名為mapper包

再在mapper包下,新建一個接口StudentMapper
又因為,數(shù)據(jù)庫中的一行數(shù)據(jù)就對應(yīng)著一個對象

這里假設(shè),我們想要找到所有的學(xué)生信息。
@Mapper
public interface StudentMapper {
List<Student> findAllStudent();
}
步驟三:建立mapper的xml文件,寫具體的sql語句
再在resources目錄下建立一個名為mapper的包,并且在mapper的包下新建一個名為StudentMapper.xml的文件。這個文件就是告訴java具體要寫哪些sql語句。

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.wzy.demo.mapper.StudentMapper">
<select id="findAllStudent" resultType="com.wzy.demo.entity.Student">
SELECT * FROM student
</select>
</mapper>
注意,這里的namespace就是指向哪一個mapper
id是mapper里面的方法名,resultType就是返回的類型
這里與前文中application.yml的mapper-locations相對應(yīng)

步驟四:建立service類,處理業(yè)務(wù)邏輯
步驟三已經(jīng)得到了數(shù)據(jù)了,但是展示給前端時,需要根據(jù)自己的業(yè)務(wù)邏輯對數(shù)據(jù)進(jìn)行進(jìn)一步的加工,所以這里在src\main\java\com\wzy\demo下建立service包,并且在service包中,新建一個StudentService類,此類的作用是處理相應(yīng)的業(yè)務(wù)邏輯
//@Service的意思是將其實例化,
//之前如果有一個class,是不是需要new一個對象才可以用,
//這里就可以理解成會自動幫你new,new完了之后,將實例加到了spring容器當(dāng)中
@Service
public class StudentService {
//引進(jìn)StudentMapper,@Autowired的意思就是將其實例化,通過autowired從spring容器中拿出來,供我們使用
@Autowired
private StudentMapper studentMapper;
//處理業(yè)務(wù)邏輯,這里由于業(yè)務(wù)過于簡單,就空著,查詢出什么我就返回什么
public List<Student> findAllStudent() {
return studentMapper.findAllStudent();
}
}
步驟五:在controller類中展示處理結(jié)果
在src\main\java\com\wzy\demo下建立controller包,并且在controller包中,新建一個StudentController類,此類的作用是將信息傳到前端,就是負(fù)責(zé)給瀏覽器返回相應(yīng)的數(shù)據(jù)。
//@RestController會自動幫一個對象轉(zhuǎn)換成json的格式
@RestController
public class StudentController {
@Autowired
private StudentService studentService;
//@RequestMapping("/getstudent")的意思告訴前端相應(yīng)的地址訪問
@RequestMapping("/getstudent")
public List<Student> getStudent(){
return studentService.findAllStudent();
}
}
驗證
瀏覽器輸入:http://localhost:8081/getstudent
出現(xiàn)數(shù)據(jù)庫相關(guān)信息,試驗成功

總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
MyBatis中如何接收String類型的參數(shù)實現(xiàn)
這篇文章主要介紹了MyBatis中如何接收String類型的參數(shù)實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02
Java中的包(Package)與導(dǎo)入(Import)示例詳解
這篇文章主要詳細(xì)介紹了Java中的包(Package)和導(dǎo)入(Import)概念,包括包的定義、作用、JDK中主要的包、導(dǎo)入的目的與用法、特殊情況的導(dǎo)入、靜態(tài)導(dǎo)入、包的訪問權(quán)限和命名規(guī)范,文章通過豐富的解釋和代碼示例,幫助讀者深入理解這些概念的實際應(yīng)用,需要的朋友可以參考下2024-11-11
java 查找list中重復(fù)數(shù)據(jù)實例詳解
這篇文章主要介紹了java 查找list中重復(fù)數(shù)據(jù)實例詳解的相關(guān)資料,需要的朋友可以參考下2017-01-01
SpringBoot整合JWT(JSON?Web?Token)生成token與驗證的流程及示例
JSON Web Token(JWT)是一種開放的標(biāo)準(zhǔn)(RFC 7519),定義了一種緊湊的、自包含的方式來安全地在各方之間傳輸信息作為JSON對象,這篇文章主要給大家介紹了關(guān)于SpringBoot整合JWT(JSON?Web?Token)生成token與驗證的相關(guān)資料,需要的朋友可以參考下2024-07-07
SpringBoot服務(wù)端數(shù)據(jù)校驗過程詳解
這篇文章主要介紹了SpringBoot服務(wù)端數(shù)據(jù)校驗過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-02-02

