springboot基本框架搭建零基礎教程,對新手極爲友好!

Idea建立spring boot項目(使用MySQL數據庫)

打開Idea軟件。

點擊New Project建立一個新的項目
選擇Spring Initializr建立spring boot項目,其中須要選擇jdk(Java Development ToolKit,是Java語言開發工具包)的版本,其他的選項默認。
點擊next。
前端

點擊next會出現這個界面,Group爲項目域,Artifact爲項目名。java

例如,圖示中,com.example,爲example示例的域名,demo爲示範項目名稱。
因爲個人jdk版本爲1.8,因此java version(java版本)選擇8。其餘的默認便可。
點擊next
mysql

選擇依賴。

  • springboot版本選擇2.4.4
  • 選擇Developer Tools下的Spring Boot DevTools
  • 選擇Web下的Spring Web
  • 選擇 SQL下的MyBatis Framework和MySQL Driver
  • 點擊next

選擇項目存儲目錄,點擊Finish。
web

簡單的springboot項目(基於SSM框架:Spring+SpringMVC+MyBatis)

配置application.properties

//MySQL驅動
spring.datasource.driverClassName=com.mysql.jdbc.Driver
//MySQL地址,其中須要填寫ip地址,如如果本地則填寫localhost,如若爲服務器,則填寫服務器的ip地址。
//MySQL端口爲3306
//填寫數據庫名稱。
spring.datasource.url=jdbc:mysql://ip地址:3306/數據庫名?characterEncoding=utf8&serverTimezone=UTC&rewriteBatchedStatements=true
//數據庫的登陸用戶名
spring.datasource.username=root
//登陸密碼
spring.datasource.password=root
//springboot運行端口爲8888,默認通常爲8080,能夠本身選擇。
server.port=8888

建立包名

在項目名稱下新建四個包。面試

  • bean 放實體類,對應數據庫中的關鍵字段
  • dao 放mapper文件,數據訪問層,與數據庫進行交互。
  • service 業務層,實現業務邏輯功能。其下還有一個Impl包,實現service的具體實現類。
  • controller 業務控制層,前端所須要的接口就在這一層實現。(爲了便於理解,咱們在新建web包下在新建一個包controller)

(三)、建立對應的代碼spring

在實際開發者,controller是進行先後端交互的,後端給前端提供相對應的接口,controller層調用service層,service調用dao層對數據庫進行查詢,把數據儲存到bean包下的user對象中。例如:
UserController——>UserService——>UserServiceImpl實現UserService中的方法——>UserMapper查詢數據
最後將查詢到的數據,new一個User來存放數據。
sql

對應的代碼以下:

bean

package com.example.demo.bean;
/**
 * @author tth
 * @date 2021/4/4
 */

//對應數據庫中的id、name、age、gender。
public class User {
    private Long id;
    private String name;
    private Integer age;
    private String gender;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public String getGender() {
        return gender;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }
}

dao

package com.example.demo.dao;

import com.example.demo.bean.User;
import org.apache.ibatis.annotations.Select;

import java.util.List;


/**
 * @author tth
 * @date 2021/4/4
 */
//使用註解方式進行數據庫數據的查詢,注意看是否引入org.apache.ibatis.annotations.Select包
public interface UserMapper {
    @Select("select  * from test_user")
    List<User> query();
}

service

package com.example.demo.service;

import com.example.demo.bean.User;

import java.util.List;

/**
 * @author tth
 * @date 2021/4/4
 */


public interface UserService {
    //業務方法聲明
    List<User> query();
}

serviceImpl

package com.example.demo.service.Impl;

import com.example.demo.bean.User;
import com.example.demo.dao.UserMapper;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;
/**
 * @author tth
 * @date 2021/4/4
 */

//UserService的具體實現類,記得加上@Service註解,不然會報錯。
@Service
public class UserServiceImpl implements UserService {
    //調用UserMapper查詢數據
    //@Resource或者@Autowired註解均可
    @Resource
    @Autowired
    private UserMapper userMapper;

    @Override
    public List<User> query() {
        //調用UserMapper中的query方法,返回一個List,類型爲User,爲了代碼簡潔,就不須要定義中間變量。
        //如:List<User> user = userMapper.query();
        //    return user;
        return userMapper.query();
    }
}

controller

package com.example.demo.web.controller;

import com.example.demo.bean.User;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;
/**
 * @author tth
 * @date 2021/4/4
 */
@RestController
@RequestMapping("/User")
public class UserController {
    @Autowired
    private UserService userService;
    //代表這是一個get類型的請求,其他的還有post、delete等。
    @GetMapping("query")
    public List<User> query(){
        return userService.query();
    }
}

注意!注意!注意!
咱們還須要在DemoApplication加上一個註解@MapperScan,不然項目仍是會報錯。或者使用一個mybatis註解類。數據庫

package com.example.demo;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
//這個註解很是重要,須要讓springboot知道你的mapper文件存放在哪一個目錄下
@MapperScan("com.example.demo.dao")
@SpringBootApplication
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }

}

項目運行

右擊DemoApplication文件,點擊Run 「DemoApplication」 以運行項目。
apache

運行成功後,打開瀏覽器,輸入http://localhost:8888/User/query 其中
http爲協議,
localhost爲本地ip,
8888爲運行端口,
User爲controller層的@RequestMapping括號後的字符串,就至關於根目錄同樣,
query爲controller層的@GetMapping括號後的字符串,至關於根目錄下的query方法
後端

最後

在文章的最後做者爲你們整理了不少資料!包括java核心知識點+全套架構師學習資料和視頻+一線大廠面試寶典+面試簡歷模板+阿里美團網易騰訊小米愛奇藝快手嗶哩嗶哩面試題+Spring源碼合集+Java架構實戰電子書等等!有須要的朋友歡迎關注公衆號:前程有光,領取

相關文章
相關標籤/搜索