最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java SpringBoot開(kāi)發(fā)小技巧詳解

 更新時(shí)間:2021年09月10日 10:33:47   作者:Keeling1720  
這篇文章主要介紹了淺談SpringBoot項(xiàng)目如何讓前端開(kāi)發(fā)提高效率(小技巧),主要介紹了Swagger和Nginx提高效率的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

一、SpringBoot開(kāi)發(fā)小技巧

1.1 Lombok

作用:在程序編譯的時(shí)候,自動(dòng)幫我們生成setter和getter方法以及我們的toString方法和我們的全參和無(wú)參構(gòu)造器等等。

那么,怎么用呢?很簡(jiǎn)單,用下邊這四個(gè)注解就行了:

1、@Data:自動(dòng)生成setter和getter方法。

2、@ToString:自動(dòng)生成toString方法。

3、@AllArgsConstructor:自動(dòng)生成全參構(gòu)造器

4、@NoArgsConstructor:自動(dòng)生成無(wú)參構(gòu)造器

5、@EqualsAndHashCode:自動(dòng)生成EqualsAndHashCode方法

6、@Slf4j:開(kāi)啟我們的日志記錄器

使用Lombok,首先當(dāng)然要引入他的依賴,這個(gè)在SpringBoot也裝配好了,所以我們不用寫他的版本號(hào)。

        <!--lombok依賴-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>

然后在IDEA的settings中下載Lombok的插件。(下載完記得重啟一下IDEA,讓他生效)

在這里插入圖片描述

使用這個(gè)插件后,我們以后開(kāi)發(fā)的時(shí)候的那些Bean,我們只需要在上面添加如下注解就可以生成對(duì)應(yīng)的方法了:

package com.example.bean;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;

@Data                   //setter和getter方法
@ToString               //toString方法
@AllArgsConstructor     //有參構(gòu)造器
@NoArgsConstructor      //無(wú)參構(gòu)造器
@EqualsAndHashCode		//EqualsAndHashCode方法
public class User {
    private Integer id;
    private String username;
    private String password;
}

然后我們給控制器也寫一個(gè)@Slf4j注釋

package com.example.controller;

import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;

//@RestController可以理解成是Controller加ResponseBody
@RestController
@Slf4j
public class HelloController {

    @RequestMapping("/hello")
    public String toHello(@RequestParam("name") String name){
        log.info("/hello被人訪問(wèn)啦!");
        return "Hello,World!"+name;
    }
}

在主程序中寫上:

package com.example.boot;

import com.example.bean.User;
import com.example.config.MyConfig;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext;

/**
 * 主程序類
 * @SpringBootApplication 告訴 SpringBoot這是一個(gè)SpringBoot應(yīng)用
 */
@SpringBootApplication(scanBasePackages = "com.example")
public class MainApplication {
    public static void main(String[] args) {
        //固定寫法
        ConfigurableApplicationContext run = SpringApplication.run(MainApplication.class, args);
        
        MyConfig myConfig = run.getBean(MyConfig.class);
        //通過(guò)myConfig的方法獲取Bean
        User user = myConfig.user();
//        User user1 = myConfig.user();
        //通過(guò)run獲取Bean
        User user2 = run.getBean("user",User.class);
        System.out.println(user);
        System.out.println(user2);
    }
}

運(yùn)行我們的主程序,我們來(lái)測(cè)試一下,首先Bean的創(chuàng)建沒(méi)問(wèn)題,而且他的toString方法也沒(méi)問(wèn)題。

在這里插入圖片描述

登錄http://localhost:8888/hello?name=哈哈哈

在這里插入圖片描述

控制臺(tái)輸出也沒(méi)問(wèn)題。

在這里插入圖片描述

1.2 dev-tools

作用:以前開(kāi)發(fā)頁(yè)面啥的,老要重啟一下主程序或者重啟一下Tomcat服務(wù)器,有了他就方便多啦。我們只需要按Ctrl+F9(編譯一下),就可以讓他實(shí)時(shí)生效。(第一次使用記得在成功導(dǎo)入依賴后,先重啟一次主程序)

先添加依賴:

        <!--dev-tools依賴-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>

然后我們來(lái)試一下,我們把之前設(shè)置端口號(hào)為8888的那一段刪掉,讓他變回默認(rèn)的8080。按Ctrl+F9,很快就編譯完成了,然后我們此時(shí)登錄8080端口號(hào)成功。登錄8888端口號(hào)就不行了。開(kāi)發(fā)網(wǎng)頁(yè)啥的時(shí)候也是一樣,改完代碼,直接編譯,然后回去網(wǎng)站刷新一下即可。

在這里插入圖片描述

1.3 Spring Initializr

作用:初始化我們的SpringBoot工程。

在IDEA中,我們新建我們的項(xiàng)目,可以選擇Spring Initializr,然后配置我們的工程名、路徑等等信息,大致如下:

在這里插入圖片描述

在這里插入圖片描述

完成后,他就會(huì)自動(dòng)幫我們導(dǎo)入我們的依賴

在這里插入圖片描述

在這里插入圖片描述

并且?guī)臀覀冊(cè)O(shè)計(jì)好我們的項(xiàng)目結(jié)構(gòu):

在這里插入圖片描述

主程序類也幫我們寫好了默認(rèn)的語(yǔ)句。

在這里插入圖片描述

如此,開(kāi)發(fā)者基本上就只需要寫自己的那些dao、service、controller和bean一系列的業(yè)務(wù)邏輯的東西就可以了。

總結(jié)

本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • SpringBoot如何實(shí)現(xiàn)文件下載

    SpringBoot如何實(shí)現(xiàn)文件下載

    這篇文章主要介紹了SpringBoot如何實(shí)現(xiàn)文件下載問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • springboot打成jar后無(wú)法讀取根路徑和文件的解決

    springboot打成jar后無(wú)法讀取根路徑和文件的解決

    這篇文章主要介紹了springboot打成jar后無(wú)法讀取根路徑和文件的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Sequelize 常用操作詳解及實(shí)例代碼

    Sequelize 常用操作詳解及實(shí)例代碼

    這篇文章主要介紹了Sequelize 常用操作詳解及實(shí)例代碼的相關(guān)資料,希望能幫助到大家,需要的朋友可以參考下
    2016-11-11
  • springmvc限流攔截器的示例代碼

    springmvc限流攔截器的示例代碼

    本篇文章主要介紹了springmvc限流攔截器的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-12-12
  • JDBC用法小結(jié)

    JDBC用法小結(jié)

    這篇文章主要介紹了JDBC用法,較為詳細(xì)的分析了基于JDBC進(jìn)行數(shù)據(jù)庫(kù)操作的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2014-12-12
  • SpringBoot2.x 整合 thumbnailator 圖片處理的示例代碼

    SpringBoot2.x 整合 thumbnailator 圖片處理的示例代碼

    這篇文章主要介紹了SpringBoot2.x 之整合 thumbnailator 圖片處理,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • 一文掌握J(rèn)ava中List和Set接口的基本使用

    一文掌握J(rèn)ava中List和Set接口的基本使用

    這篇文章主要為大家詳細(xì)介紹Java中List和Set接口,文中通過(guò)示例代碼讓大家能夠輕松掌握List和Set接口的基本使用,感興趣的可以跟隨小編一起學(xué)習(xí)一下
    2022-07-07
  • Java?SpringTask定時(shí)自動(dòng)化處理方法

    Java?SpringTask定時(shí)自動(dòng)化處理方法

    這篇文章主要介紹了Java?SpringTask定時(shí)自動(dòng)化處理,通過(guò)自動(dòng)化,不僅可以提高工作效率和準(zhǔn)確性,還可以釋放人力資源以專注于更高價(jià)值的工作,需要的朋友可以參考下
    2024-08-08
  • Java的HashSet源碼詳解

    Java的HashSet源碼詳解

    這篇文章主要介紹了Java的HashSet源碼詳解,HashSet底層封裝的是HashMap,所以元素添加會(huì)放到HashMap的key中,value值使用new Object對(duì)象作為value,所以HashSet和HashMap的所具有的特點(diǎn)是類似的,需要的朋友可以參考下
    2023-09-09
  • 深入理解Java責(zé)任鏈模式實(shí)現(xiàn)靈活的請(qǐng)求處理流程

    深入理解Java責(zé)任鏈模式實(shí)現(xiàn)靈活的請(qǐng)求處理流程

    本文詳細(xì)介紹了Java中的責(zé)任鏈模式,幫助您理解其工作原理,以及如何在代碼中實(shí)現(xiàn)。該模式可以將請(qǐng)求沿著處理鏈路傳遞,實(shí)現(xiàn)靈活的請(qǐng)求處理流程。通過(guò)本文的學(xué)習(xí),您將獲得在Java應(yīng)用程序中使用責(zé)任鏈模式的知識(shí)和技能
    2023-04-04

最新評(píng)論

邹城市| 杭州市| 集安市| 康保县| 汽车| 永州市| 彰武县| 兴山县| 台东市| 沙河市| 上林县| 广宁县| 平远县| 井冈山市| 乐至县| 建湖县| 长治县| 尤溪县| 格尔木市| 宝清县| 彰化市| 揭西县| 慈利县| 沭阳县| 合作市| 吉安县| 合作市| 龙胜| 泰和县| 高州市| 通化县| 敖汉旗| 鹿泉市| 霍州市| 德清县| 汽车| 丹凤县| 抚松县| 阿克陶县| 宁海县| 马公市|