Java springboot接口迅速上手,帶你半小時極速入門

如何通過springboot來寫一個簡單的接口?

想要知道怎麼寫可能隻需要幾步,半小時足矣

本篇文章隻是教大傢如何快速地使用

但是具體是為什麼這樣用?以及背後的原理,請大傢先認真學習javaweb-servlet-ssm框架等等,這裡就不做過多的講解。

前期準備:

首先在idea中新建項目:

new project-spring initializr一路next(如有需要修改的信息,也可以自己修改,不重要)

在這裡插入圖片描述

在這裡插入圖片描述

註意,這裡要記得選上,作用是在初始化的時候,需要那些東西idea就幫你初始化進去(當然,後期也能自己手動加,但是這裡為瞭方便學習,還是該選的都選上)

  • developer tools —spring boot devtools

在這裡插入圖片描述

  • web —spring web

在這裡插入圖片描述

  • SQL—jdbc api—mysql driver —mybatis framework

在這裡插入圖片描述

最後選完瞭,確保,右邊欄selected dependencies為如下:

在這裡插入圖片描述

再一路next。。等待加載完成

再在MySQL數據庫中準備一個student表:

在這裡插入圖片描述

接著,把src\main\resources中的application.properties文件改名成application.yml,這是因為yml文件的結構比較清晰,好看易懂

application.yml文件是一個配置文件,作用是可以配置一些數據庫信息,他來告訴springboot我們的數據庫賬號密碼呀,表名是啥等等。

在這裡插入圖片描述

在這裡插入圖片描述

以下是我的application.yml,你們可以根據自己的實際情況修改對應的信息:

server:
  port: 8081
spring:
  #數據庫連接配置
  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的相關配置
mybatis:
  #mapper配置文件
  mapper-locations: classpath:mapper/*.xml

驗證先前配置是否成功:點開src\main\java\com\wzy\demo\DemoApplication.java

點擊箭頭所指的運行按鈕:

在這裡插入圖片描述

若控制臺出現:

在這裡插入圖片描述

並且在瀏覽器中輸入http://localhost:8081/會出現:

在這裡插入圖片描述

則代表配置成功

步驟一:建立實體類,需要跟數據庫表字段保持一致

在src\main\java\com\wzy\demo目錄下新建一個名為entity包

在這裡插入圖片描述

再在entity包下,新建一個名為Student的class,這個Student即為實體類,該實體類即對應數據庫中的表,類中的屬性與數據庫字段保持一致,並且加上構造函數以及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接口,定義要操作的數據庫的動作

操作的數據庫的動作比如:查詢、更新、刪除等等

這些動作就是mapper

在src\main\java\com\wzy\demo目錄下新建一個名為mapper包

在這裡插入圖片描述

再在mapper包下,新建一個接口StudentMapper

又因為,數據庫中的一行數據就對應著一個對象

在這裡插入圖片描述

這裡假設,我們想要找到所有的學生信息。

@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相對應

在這裡插入圖片描述

步驟四:建立service類,處理業務邏輯

步驟三已經得到瞭數據瞭,但是展示給前端時,需要根據自己的業務邏輯對數據進行進一步的加工,所以這裡在src\main\java\com\wzy\demo下建立service包,並且在service包中,新建一個StudentService類,此類的作用是處理相應的業務邏輯

//@Service的意思是將其實例化,
//之前如果有一個class,是不是需要new一個對象才可以用,
//這裡就可以理解成會自動幫你new,new完瞭之後,將實例加到瞭spring容器當中
@Service
public class StudentService {
    //引進StudentMapper,@Autowired的意思就是將其實例化,通過autowired從spring容器中拿出來,供我們使用
    @Autowired
    private StudentMapper studentMapper;
    //處理業務邏輯,這裡由於業務過於簡單,就空著,查詢出什麼我就返回什麼
    public List<Student> findAllStudent() {
        return studentMapper.findAllStudent();
    }
}

步驟五:在controller類中展示處理結果

在src\main\java\com\wzy\demo下建立controller包,並且在controller包中,新建一個StudentController類,此類的作用是將信息傳到前端,就是負責給瀏覽器返回相應的數據。

//@RestController會自動幫一個對象轉換成json的格式
@RestController
public class StudentController {
    @Autowired
    private StudentService studentService;
    //@RequestMapping("/getstudent")的意思告訴前端相應的地址訪問
    @RequestMapping("/getstudent")
    public List<Student> getStudent(){
        return studentService.findAllStudent();
    }
}

驗證

瀏覽器輸入:http://localhost:8081/getstudent

出現數據庫相關信息,試驗成功

在這裡插入圖片描述

總結

本篇文章就到這裡瞭,希望能夠給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容!

推薦閱讀: