6、springboot快速使用

news2025/1/13 7:43:00

文章目录

  • 1、最佳实践
    • 1.1、引入场景依赖
    • 1.2、查看自动配置了哪些(选做)
    • 1.3、是否需要修改配置
      • 1、修改配置
      • 2、自定义加入或者替换组件
      • 3、自定义器 XXXXXCustomizer
  • 2、开发小技巧
    • 2.1、Lombok
      • 1、引入坐标
      • 2、在IDEA中安装lombok插件(新版默认安装)
      • 3、实体类
      • 4、日志
    • 2.2、Developer Tools
    • 2.3、Spring Initailizr(项目初始化向导)
      • 1、选择需要的开发场景
      • 2、自动依赖引入
      • 3、自动创建项目结构
      • 4、自动编写好主配置类


【尚硅谷】SpringBoot2零基础入门教程-讲师:雷丰阳
笔记

路还在继续,梦还在期许

1、最佳实践

1.1、引入场景依赖

查看 spring boot 官方的场景依赖

查看第三方的场景依赖。

1.2、查看自动配置了哪些(选做)

方法一:自己分析,引入场景对应的自动配置一般都生效了,在jar包中查看对应的配置类。

在这里插入图片描述

方法二:配置文件中debug=true开启自动配置报告

在这里插入图片描述

Positive(生效)| Negative(不生效)

在这里插入图片描述
在这里插入图片描述

1.3、是否需要修改配置

1、修改配置

方式一:参照文档修改配置项

方式二:自己分析

xxxxProperties绑定了配置文件的哪些前缀。

2、自定义加入或者替换组件

@Bean、@Component…用户有的,用户优先。

3、自定义器 XXXXXCustomizer

可以给容器中放一些自定义器,把springboot已有的组件默认行为改成用户需要的。

2、开发小技巧

2.1、Lombok

简化JavaBean开发,可以帮助用户写get、set方法,有参无参构造、toString等等。

1、引入坐标

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
</dependency>

2、在IDEA中安装lombok插件(新版默认安装)

在这里插入图片描述

3、实体类

//===============================简化JavaBean开发===================================
@NoArgsConstructor // 无参构造
//@AllArgsConstructor // 有参构造
@Data //get、set方法
@ToString //toString
@EqualsAndHashCode // 重写equal、hashcode
public class User {

    private String name;
    private Integer age;

    private Pet pet;
    // 定制有参构造器	
    public User(String name,Integer age){
        this.name = name;
        this.age = age;
    }

}

4、日志

//================================简化日志开发===================================
@Slf4j //日志类,相类中自动注入log属性,相当于日志记录器
@RestController
public class HelloController {
    @RequestMapping("/hello")
    public String handle01(@RequestParam("name") String name){
        // 使用日志记录器
        log.info("请求进来了....");
        
        return "Hello, Spring Boot 2!"+"你好:"+name;
    }
}

2.2、Developer Tools

Developer Tools:开发者工具,作用热更新,修改代码、页面后可以直接查看效果,不需要重新启动项目。

Maven

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <optional>true</optional>
    </dependency>
</dependencies>

项目或者页面修改以后按:Ctrl+F9,就可以实时生效。

毕竟是免费提供的热更新,本质就是重新启动,如果是静态文件就直接替换,如果想使用真正的热更新(重加在),spring推荐付费项目:JRebel

2.3、Spring Initailizr(项目初始化向导)

1、选择需要的开发场景

IDEA里面创建项目就有StringInitailizr可以帮助我们快速的创建应用。

在这里插入图片描述

在这里插入图片描述

2、自动依赖引入

<?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.7.10</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.atguigu.boot</groupId>
    <artifactId>boot-01-helloworld-2</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>boot-01-helloworld-2</name>
    <description>boot-01-helloworld-2</description>
    <properties>
        <java.version>1.8</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.3.0</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

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

</project>

3、自动创建项目结构

在这里插入图片描述

4、自动编写好主配置类

@SpringBootApplication
public class Boot01Helloworld2Application {

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

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/436000.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

趣说数据结构 —— 前言

趣说数据结构 —— 前言 一次偶然的机会&#xff0c;翻到当初自己读大学的时候教材&#xff0c;看着自己当初的勾勾画画&#xff0c;一时感触良多。 很值得一提的是&#xff0c;我在封面后第一页&#xff0c;写着自己的专业和名字的地方下面&#xff0c;写着几行这样的字&…

leetcode刷题(6)

各位朋友们大家好&#xff0c;今天是我的leetcode刷题系列的第六篇。这篇文章将与队列方面的知识相关&#xff0c;因为这些知识用C语言实现较为复杂&#xff0c;所以我们就只使用Java来实现。 文章目录 设计循环队列题目要求用例输入提示做题思路代码实现 用栈实现队列题目要求…

Vue2-黑马(七)

目录&#xff1a; &#xff08;1&#xff09;router-路由嵌套 &#xff08;2&#xff09;router-路由跳转 &#xff08;3&#xff09;router-导航菜单 &#xff08;1&#xff09;router-路由嵌套 我们有这样的需求&#xff0c;我们已经显示了主页&#xff0c;但是主页里面有&…

SpringBoot数据库换源

文章目录 前言一. baomidou提供换源注解 DS二. 手动数据源切换三. AOP自动换源 前言 笔者知道有三种方式: baomidou提供的DS自定义AOP自动换源实现AbstractRoutingDataSource手动换源 一. baomidou提供换源注解 DS 注意 1.不能使用事务&#xff0c;否则数据源不会切换&…

云原生入门

云原生入门. 云原生是一种设计和构建应用程序的方法&#xff0c;它充分利用了云计算的优势&#xff0c;如弹性、可扩展性、自动化和敏捷性。云原生应用程序不仅可以在云中运行&#xff0c;而且是为云而生的&#xff0c;它们采用了一些新式的技术和架构模式&#xff0c;使得应用…

零基础入门python好学么

python对于零基础的小伙伴算是非常友好的了~ python以简单易学著称~ Python简洁&#xff0c;高效的特点&#xff0c;大大提升了程序员的编码速度&#xff0c;极大的提高了程序员的办公效率&#xff0c;比如用其他编程语言5、6行代码才能整明白的&#xff0c;用Python可能1-2行就…

不应使用Excel进行项目资源规划的 7 个原因

项目资源规划早期仅限于基本分配和调度。因此&#xff0c;企业使用自制工具或excel表来执行这一简单功能。然而&#xff0c;随着技术和业务流程的发展&#xff0c;资源规划变得复杂&#xff0c;并包括其他组成部分&#xff0c;如预测和容量规划&#xff0c;优化等。 由于传统…

1.BootstrapTable组件

1.先在页面声明一个表格对象 <table id"table" class"table table-striped"></table> 2.生成表格JS代码如下 var url /log/;var columns [{checkbox: true,visible: true //是否显示复选框},{field: id,title: 序号,width…

若依框架—基于AmazonS3实现OSS对象存储服务

若依框架—基于AmazonS3实现OSS对象存储&#xff0c;其他也适用 文章目录 若依框架—基于AmazonS3实现OSS对象存储&#xff0c;其他也适用上一篇[若依mybatis升级mybatis-plus&#xff0c;其他也适用](https://blog.csdn.net/omnipotent_wang/article/details/128635654?spm10…

MYSQL:查询数据

一、学习目标 了解基本查询语句掌握表单查询的方法掌握如何使用几何函数的查询掌握连接查询的方法掌握如何使用子查询熟悉合并查询结果熟悉如何为表和字段取别名掌握如何使用正则表达式查询掌握数据表的查询操作技巧和方法 二、实验内容 根据不同条件对表进行查询操作&#…

Unity Game FrameWork—模块使用—对象池使用

使用对象池&#xff0c;需继承ObjectBase。首先创建一个OPGame的类&#xff0c;继承于ObjectBase&#xff0c;我们暂且把它叫做OP对象&#xff0c;如下图 OP对象有两个地方可以存储成员对象或变量&#xff0c;一个是在OP对象内部如模型ID&#xff1a;m_ModelID。另一个则是对…

【LeetCode训练营02】两个非空链表相加 详解

目录 题目 解题思路的分享 解题源码的分享 题目 给你两个 非空 的链表&#xff0c;表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的&#xff0c;并且每个节点只能存储 一位 数字。 请你将两个数相加&#xff0c;并以相同形式返回一个表示和的链表。 你可以…

Executor框架简介

Executor系统中&#xff0c;将线程任务提交和任务执行进行了解耦的设计; 线程被一对一映射为服务所在操作系统线程&#xff0c;启动时会创建一个操作系统线程&#xff1b;当该线程终止时&#xff0c;这个操作系统线程也会被回收 Executor框架包含的核心接口和主要的实现类 具体…

Linux下安装Hive

文章目录 1. 确保linux环境下mysql已安装2. 上传安装包3. 解压安装包4. 修改目录名称5. 配置环境变量6. 解压日志jar包冲突7. 拷贝mysql驱动jar包8. 配置hive的参数文件9. 增加hadoop的配置参数10.在mysql中进行相关配置11. 初始化hive的元数据库 1. 确保linux环境下mysql已安装…

【Android】之【WebView】

一、简介 WebView是一种控件&#xff0c;它基于webkit引擎&#xff0c;因此具备渲染Web页面的功能。   基于Webview的混合开发&#xff0c;就是在 Android os(安卓)/I os(苹果)原生APP里&#xff0c;通过WebView控件嵌入Web页面。 你手机里有淘宝软件吧&#xff1f; 就是外…

uniapp开发微信小程序分包处理实录

uniapp开发微信小程序上传代码时可能会遇到项目过大问题&#xff0c;今天就结合自己的实际操作简单记录下如何处理项目代码超出限制问题。 常用的操作就是将项目中的图片访问由本地访问修改为网络访问&#xff0c;微信开发者工具上传代码时勾选相关的压缩文件选项等&am…

CV开启大模型时代!谷歌发布史上最大ViT:220亿参数,视觉感知力直逼人类

ViT模型何时才能破万亿&#xff1f; Transformer无疑是促进自然语言处理领域繁荣的最大功臣&#xff0c;也是GPT-4等大规模语言模型的基础架构。 不过相比语言模型动辄成千上万亿的参数量&#xff0c;计算机视觉领域吃到Transformer的红利就没那么多了&#xff0c;目前最大的…

《华为机试》——MP3光标位置 及 洗牌

本期&#xff0c;我给大家带来以下两个题目的讲解&#xff1a; 1、《华为机试》——MP3光标位置 &#xff08;中等&#xff09;2、 2017年校招真题——洗牌 &#xff08;简单&#xff09; 以上两个题的难度属于我也给大家标注出来了&#xff0c;接下来&#xff0c;我们一起去…

利用chatgpt处理Excel数据

一 前言 以前用chatgpt主要做问答&#xff0c;这次加入星球学习到了如何用chatgpt处理Excel&#xff0c;虽然现在处理起来还不是很方便&#xff0c;用熟悉了&#xff08;主要是熟悉提示词&#xff09;&#xff0c;处理起来会越来越快的。 二 准备工作 一个可用的chatgpt账号&…

针对jar和vue的一键自动化部署工具,界面友好操作简单

easy-jenkins是一款对vue和jar的部署工具&#xff0c;操作简单&#xff0c;实行一键部署&#xff0c;内部结构采用流水线形式架构&#xff0c;每次部署&#xff0c;时时提供部署过程&#xff0c;部署记录&#xff0c;界面友好简洁&#xff0c;使用方便&#xff0c;符合用户常规…