国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Vue+SpringBoot項(xiàng)目開(kāi)發(fā):后臺(tái)登陸功能的實(shí)現(xiàn)(二)

這篇具有很好參考價(jià)值的文章主要介紹了Vue+SpringBoot項(xiàng)目開(kāi)發(fā):后臺(tái)登陸功能的實(shí)現(xiàn)(二)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

寫(xiě)在開(kāi)始:一個(gè)搬磚程序員的隨緣記錄

一、SpringBoot項(xiàng)目的搭建

項(xiàng)目搭建傳送門(mén):從零開(kāi)始,SpringBoot項(xiàng)目快速搭建

二、數(shù)據(jù)庫(kù)配置

1、新建數(shù)據(jù)庫(kù)

在本地mysql數(shù)據(jù)庫(kù)新建庫(kù),庫(kù)名:vue_demo,(數(shù)據(jù)庫(kù)名字可自行更改,更改完記得在pom.xml中也同步更改)

2、新建用戶(hù)表

CREATE TABLE `user` (
  `id` int(11) NOT NULL,
  `username` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `password` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

三、SpringBoot項(xiàng)目的配置

項(xiàng)目結(jié)構(gòu)
Vue+SpringBoot項(xiàng)目開(kāi)發(fā):后臺(tái)登陸功能的實(shí)現(xiàn)(二),Vue3+SpringBoot后臺(tái)管理系統(tǒng),vue.js,spring boot,前端
下面是具體文件的代碼
pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.5.3</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.cn</groupId>
    <artifactId>vue_demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>vue_demo</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
        <skipTests>true</skipTests>
        <druid.version>1.1.10</druid.version>
        <mysql-connector.version>8.0.16</mysql-connector.version>
        <mybatis-plus.version>3.3.2</mybatis-plus.version>
    </properties>

    <dependencies>
        <!--SpringBoot通用依賴(lài)模塊-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-aop</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <!--SpringBoot校驗(yàn)框架-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-validation</artifactId>
        </dependency>
        <!--集成druid連接池-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>${druid.version}</version>
        </dependency>
        <!--Mysql數(shù)據(jù)庫(kù)驅(qū)動(dòng)-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>${mysql-connector.version}</version>
        </dependency>
        <!--lombok依賴(lài)-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <!--SpringBoot配置處理-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-configuration-processor</artifactId>
            <optional>true</optional>
        </dependency>
        <!--MyBatis Plus 依賴(lài)-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>${mybatis-plus.version}</version>
        </dependency>

    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

返回實(shí)體類(lèi)封裝ResultBody
ResultBody.java

package com.cn.vuedemo.entity;

/**
 * 請(qǐng)求
 *
 * @author demo
 */
public class ResultBody<T> {
    /**
     * 響應(yīng)碼
     */
    private int code;
    /**
     * 消息
     */
    private String message;
    /**
     * 數(shù)據(jù)
     */
    private T data;


    public ResultBody(int code, String message, T data) {
        this.code = code;
        this.message = message;
        this.data = data;
    }

    public ResultBody(String message) {
        this.code = 200;
        this.message = message;
    }

    public ResultBody(int code, String message) {
        this.code = code;
        this.message = message;
    }

    public ResultBody(T data) {
        this.code = 200;
        this.message = "請(qǐng)求成功";
        this.data = data;
    }

    public ResultBody(int code) {
        this.code = code;
        this.message = "請(qǐng)求成功";
    }

    public int getCode() {
        return code;
    }

    public void setCode(int code) {
        this.code = code;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public T getData() {
        return data;
    }

    public void setData(T data) {
        this.data = data;
    }
}

用戶(hù)實(shí)體類(lèi)
User.java

package com.cn.vuedemo.entity;


import lombok.Data;

/**
 * @author demo
 * @date 2023/07/31 11:18
 */
@Data
public class User {
    /**
     * id
     * */
    private Integer id;
    /**
     * 賬號(hào)
     * */
    private String username;
    /**
     * 密碼
     * */
    private String password;
}

登錄方法入?yún)?br> LoginReq.java

package com.cn.vuedemo.model.request;

import lombok.Data;

/**
 * @author demo
 * @since 2023/07/31 11:18
 */
@Data
public class LoginReq {
    /**
     * 賬號(hào)
     * */
    private String username;

    /**
     * 密碼
     * */
    private String password;
}

service
UserService.java

package com.cn.vuedemo.service;

import com.cn.vuedemo.entity.User;
import com.cn.vuedemo.model.request.LoginReq;

import java.util.List;

/**
 * @author demo
 * @since 2023/07/31 11:18
 */
public interface UserService {

    /**
     * 登錄
     *
     * @param loginReq loginReq
     * @return com.cn.vuedemo.entity.User
     * @author demo
     * @since 2023/07/31 11:18
     */
    User login(LoginReq loginReq);
}

service實(shí)現(xiàn)
UserServiceImpl.java

package com.cn.vuedemo.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.cn.vuedemo.entity.User;
import com.cn.vuedemo.mapper.UserMapper;
import com.cn.vuedemo.model.request.LoginReq;
import com.cn.vuedemo.service.UserService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;

/**
 * @author demo
 * @since 2023/07/31 11:18
 */
@Service
@RequiredArgsConstructor
public class UserServiceImpl implements UserService {

    private final UserMapper userMapper;

    @Override
    public User login(LoginReq loginReq) {
        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
        queryWrapper.lambda().eq(User::getUsername, loginReq.getUsername())
                .eq(User::getPassword, loginReq.getPassword());
        User user = userMapper.selectOne(queryWrapper);
        return user;
    }
}

mapper
UserMapper.java

package com.cn.vuedemo.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.cn.vuedemo.entity.User;
import org.apache.ibatis.annotations.Mapper;

/**
 * @author demo
 * @since 2023/07/31 11:18
 */
@Mapper
public interface UserMapper extends BaseMapper<User> {
}

控制層controller
LoginController.java

package com.cn.vuedemo.controller;

import com.cn.vuedemo.entity.ResultBody;
import com.cn.vuedemo.entity.User;
import com.cn.vuedemo.model.request.LoginReq;
import com.cn.vuedemo.service.UserService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;
import java.util.Objects;

/**
 * @author demo
 * @date 2023/07/31 11:18
 */
@RestController
@Slf4j
@RequestMapping("/user")
@RequiredArgsConstructor
public class LoginController {

    private final UserService userService;

    /**
     * 登陸
     *
     * @param loginReq loginReq
     * @return com.cn.vuedemo.entity.ResultBody
     * @author demo
     * @since 2023/7/31
     */
    @PostMapping(value = "/login")
    public ResultBody login(@RequestBody LoginReq loginReq) {
        log.info("loginReq:" + loginReq);
        User user = userService.login(loginReq);
        if (Objects.isNull(user)) {
            return new ResultBody(500, "密碼不正確");
        }

        return new ResultBody(user);
    }
}

Over文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-647191.html

到了這里,關(guān)于Vue+SpringBoot項(xiàng)目開(kāi)發(fā):后臺(tái)登陸功能的實(shí)現(xiàn)(二)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 使用SpringBoot一小時(shí)快速搭建一個(gè)簡(jiǎn)單后臺(tái)管理(增刪改查)(超詳細(xì)教程)
                    
            
各大技術(shù)基礎(chǔ)教學(xué)、實(shí)戰(zhàn)項(xiàng)目開(kāi)發(fā)教學(xué)

    使用SpringBoot一小時(shí)快速搭建一個(gè)簡(jiǎn)單后臺(tái)管理(增刪改查)(超詳細(xì)教程) 各大技術(shù)基礎(chǔ)教學(xué)、實(shí)戰(zhàn)項(xiàng)目開(kāi)發(fā)教學(xué)

    ?最近也是臨近期末了,各種的期末大作業(yè),后臺(tái)管理也是很多地方需要用到的,為了方便大家能快速上手,快速搭建一個(gè)簡(jiǎn)單的后臺(tái)管理,我花了兩天時(shí)間整理了一下 我會(huì)從0開(kāi)始介紹,從數(shù)據(jù)庫(kù)的設(shè)計(jì)到前端頁(yè)面的引入最后到后端代碼的編寫(xiě),你只需要會(huì)一點(diǎn)前端的基礎(chǔ)和

    2023年04月13日
    瀏覽(31)
  • SpringBoot+Vue項(xiàng)目實(shí)例開(kāi)發(fā)及部署

    SpringBoot+Vue項(xiàng)目實(shí)例開(kāi)發(fā)及部署

    目錄 一、SpringBoot快速上手 1、SpringBoot介紹 2、SpringBoot特點(diǎn) 3、快速創(chuàng)建SpringBoot應(yīng)用 4、SpringBoot開(kāi)發(fā)熱部署 二、Web開(kāi)發(fā)基礎(chǔ) 1、Web入門(mén) 2、控制器 3、路由映射 4、參數(shù)傳遞 三、Web開(kāi)發(fā)進(jìn)階 1、靜態(tài)資源訪(fǎng)問(wèn) 2、文件上傳原理 3、攔截器 四、構(gòu)建RESTful服務(wù) 1、RESTful介紹 2、RESTf

    2024年02月06日
    瀏覽(41)
  • Vue3 - hooks 功能模塊抽離示例(項(xiàng)目開(kāi)發(fā)常用)

    在 vue3 項(xiàng)目開(kāi)發(fā)中,功能模塊或頁(yè)面 / 組件邏輯都避免不了 hooks,充分利用它會(huì)使項(xiàng)目代碼耦合較低、復(fù)用性更強(qiáng)、易維護(hù)等。 本文 提供 vue3 真實(shí)項(xiàng)目開(kāi)發(fā)中,最常見(jiàn)的 hooks 功能抽離示例, 按照此示例,可進(jìn)行更多場(chǎng)景的舉一反三。 新手小白一看就懂,秒知 hooks 的概念和

    2024年02月13日
    瀏覽(21)
  • 牛掰,Alibaba內(nèi)部《SpringBoot+vue全棧開(kāi)發(fā)實(shí)戰(zhàn)項(xiàng)目》重磅開(kāi)源

    牛掰,Alibaba內(nèi)部《SpringBoot+vue全棧開(kāi)發(fā)實(shí)戰(zhàn)項(xiàng)目》重磅開(kāi)源

    近年來(lái),隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,全棧開(kāi)發(fā)成為了一個(gè)備受矚目的技能。全棧開(kāi)發(fā)不僅可以提高開(kāi)發(fā)效率,還能夠更好地滿(mǎn)足用戶(hù)需求。在這個(gè)背景下,Alibaba內(nèi)部最新推出的《SpringBoot+vue全棧開(kāi)發(fā)實(shí)戰(zhàn)項(xiàng)目》的重磅開(kāi)源無(wú)疑是一個(gè)令人振奮的消息。 《SpringBoot+vue全棧開(kāi)發(fā)

    2024年01月19日
    瀏覽(21)
  • Vue項(xiàng)目實(shí)戰(zhàn)——【基于 Vue3.x + Vant UI】實(shí)現(xiàn)一個(gè)多功能記賬本(開(kāi)發(fā)導(dǎo)航欄及公共部分)

    Vue項(xiàng)目實(shí)戰(zhàn)——【基于 Vue3.x + Vant UI】實(shí)現(xiàn)一個(gè)多功能記賬本(開(kāi)發(fā)導(dǎo)航欄及公共部分)

    系列內(nèi)容 參考鏈接 基于 Vue3.x + Vant UI 的多功能記賬本(一) 項(xiàng)目演示,涉及知識(shí)點(diǎn) 基于 Vue3.x + Vant UI 的多功能記賬本(二) 搭建開(kāi)發(fā)環(huán)境 Vue3 + Vant UI_多功能記賬本 1、底部導(dǎo)航欄 components 文件夾下,創(chuàng)建 NavBar.vue 組件 NavBar.vue 詳細(xì)內(nèi)容請(qǐng)看代碼和注釋 van-tabbar-item 為標(biāo)簽欄

    2024年02月02日
    瀏覽(95)
  • Vue3+element-plus 后臺(tái)管理系統(tǒng)(含登陸注冊(cè)功能頁(yè)面)

    Vue3+element-plus 后臺(tái)管理系統(tǒng)(含登陸注冊(cè)功能頁(yè)面)

    最近在學(xué)習(xí)Vue3,記錄一下自己從0開(kāi)始搭建后臺(tái)框架,并獲取遠(yuǎn)程接口數(shù)據(jù)對(duì)頁(yè)面的渲染 本次功能實(shí)現(xiàn)主要包括:連接后端的遠(yuǎn)程接口數(shù)據(jù)進(jìn)行登錄注冊(cè)功能實(shí)現(xiàn) : 1.本次登陸注冊(cè)合并為了一個(gè)頁(yè)面,頁(yè)面都使用了element-plus中的組件渲染,更加美觀 2.用route路由實(shí)現(xiàn)不同頁(yè)面邏輯跳

    2023年04月26日
    瀏覽(22)
  • java springboot VUE糧食經(jīng)銷(xiāo)系統(tǒng)開(kāi)發(fā)mysql數(shù)據(jù)庫(kù)web結(jié)構(gòu)java編程計(jì)算機(jī)網(wǎng)頁(yè)源碼maven項(xiàng)目

    java springboot VUE糧食經(jīng)銷(xiāo)系統(tǒng)開(kāi)發(fā)mysql數(shù)據(jù)庫(kù)web結(jié)構(gòu)java編程計(jì)算機(jī)網(wǎng)頁(yè)源碼maven項(xiàng)目

    一、源碼特點(diǎn) ? springboot VUE 糧食經(jīng)銷(xiāo)系統(tǒng)是一套完善的完整信息管理類(lèi)型系統(tǒng),結(jié)合springboot框架和VUE完成本系統(tǒng),對(duì)理解JSP java編程開(kāi)發(fā)語(yǔ)言有幫助系統(tǒng)采用springboot框架(MVC模式開(kāi)發(fā)) ,系統(tǒng)具有完整的源代碼和數(shù)據(jù)庫(kù),系統(tǒng)主要采用B/S模式開(kāi)發(fā)。 springboot vue 糧食經(jīng)銷(xiāo)系統(tǒng)

    2024年02月05日
    瀏覽(22)
  • 搭建SpringBoot項(xiàng)目——開(kāi)發(fā)環(huán)境搭建開(kāi)發(fā)環(huán)境搭建

    搭建SpringBoot項(xiàng)目——開(kāi)發(fā)環(huán)境搭建開(kāi)發(fā)環(huán)境搭建

    簡(jiǎn)介 ? ? ? ? SpringBoot 是 Java 社區(qū)最有影響力之一的開(kāi)源的Spring后端開(kāi)發(fā)框架,也是企業(yè)級(jí)應(yīng)用開(kāi)發(fā)的首選技術(shù),Spring Boot 擁有良好的技術(shù)基因,它是伴隨著Spring 4 而產(chǎn)生的技術(shù)框架,在繼承了 Spirng 框架所有優(yōu)點(diǎn)的同時(shí)也為開(kāi)發(fā)者帶來(lái)了巨大的便利,與普通的 Spring 項(xiàng)目相比

    2024年02月03日
    瀏覽(18)
  • SpringBoot多模塊項(xiàng)目開(kāi)發(fā)(Maven多模塊項(xiàng)目)

    SpringBoot多模塊項(xiàng)目開(kāi)發(fā)(Maven多模塊項(xiàng)目)

    不論是maven還是Gradle,參考優(yōu)秀的開(kāi)源項(xiàng)目和boot官網(wǎng)的最佳實(shí)踐使用構(gòu)建工具組織代碼來(lái)構(gòu)建自己的項(xiàng)目,比如nacos、springboot,ruoyi等等; 要找到 Spring Boot 官網(wǎng)上關(guān)于 Maven 多模塊項(xiàng)目的最佳實(shí)踐,可以按照以下步驟進(jìn)行: 打開(kāi) Spring Boot 官網(wǎng)(spring.io/projects/sp… 在導(dǎo)航菜單

    2024年02月04日
    瀏覽(23)
  • SpringBoot項(xiàng)目多環(huán)境開(kāi)發(fā)

    SpringBoot項(xiàng)目多環(huán)境開(kāi)發(fā)

    說(shuō)明:舊的寫(xiě)法。 說(shuō)明:以下是最新配置。 說(shuō)明:可以創(chuàng)建不同的文件進(jìn)行區(qū)分開(kāi)發(fā)環(huán)境、測(cè)試環(huán)境、生產(chǎn)環(huán)境。在application.yml主文件配置。 ?

    2024年02月05日
    瀏覽(14)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包