SpringBoot入门之工程搭建(IDEA版)

【SpringBoot 框架】- 入门——环境搭建、工程热部署、idea快捷创建SpringBoot项目 千千万万要记得:多刷题!!多刷题!!之前算法是我的硬伤,后面硬啃了好长一段时间才补回来,算法才是程序员的灵魂!!!!篇幅有限,以下只能截图分享部分的资源!!(1)多线程(这里以多线程为代表,其实整理了一本JAVA核心架构笔记集)(2)刷的算法题(还有左神的算法笔记)(3)面经+真题解析+对应的相关笔记(很全面)(4)视频学习(部分)ps:当你觉得学不进或者累了的时候,视频是个不错的选择在这里,最后只一句话:祝大家offer拿到手软!! 阅读详情

Spring-Boot Spring的春天

在之前我们一直使用Spring、SpringMVC进行开发,的确,Spring让我们认识到了项目开发原来可以这么方便。但是大量的配置文件却是令人头痛的,即使我们想写一个简单的请求映射并在浏览器上发送Get请求测试,那么需要:1.在web.xml中配置DispatcherServlet; 2.在application.xml中配置注解扫描、注解驱动。可以看到:虽然Spring是轻量级的,但是Spring的配置却是重量级的。并且搭建每个Spring项目我们都需要考虑依赖版本是否冲突的问题…

So,SpringBoot将这一切都解决了。SpringBoot提供了一种固定的、约定优于配置风格的框架,让开发者能更快的创建基于Spring的应用程序和服务。

对应的SpringBoot整合Mybatis实现CRUD的项目和笔记请看我的Github仓库:教你优雅的入门Spring Boot框架

如果觉得不错就点击右上角star鼓励一下笔者吧(#.#)

SpringBoot有如下特性:

  1. 更高效的创建基于Spring的应用服务
  2. 无需XML配置,可以修改默认值来满足特定的需求
  3. 提供了一些大型项目中常见的非功能性特性,如嵌入式服务器、安全…
  4. Spring Boot并不是对Spring功能上的增强,而是提供了一种快速使用Spring的方式

SpringBoot项目搭建

这里我选择使用IDEA来创建SpringBoot项目:

1.选择Spring Initializr,并选择本地的JDK版本

image

2.Next,指定Group和Artifact名称,并选择本机JDK版本

image

3.选择项目所需依赖

image

解释

devtools: SpringBoot提供的热部署插件,可以避免每次修改代码都要重新启动项目。。

lomback: 使用Lomback可以减少项目中很多重复代码的书写,比如getter/setter/toString等方法的书写(虽然这些可能我们都是用的快捷键生成的代码)。具体用法可以参考博文:lomback介绍

Thymeleaf: 语法的支持

注意: 以上依赖非必选,如果仅仅想尝试一下Spring Boot-HelloWorld,只需要选择其中的web依赖即可。


SpringBoot起步

image

以上是新创建的Spring Boot项目。在SpringBoot中有一个启动器(引导类)的概念,我们首先看一下SpringbootApplication.java:

@SpringBootApplication
public class SpringbootApplication {

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

如上,仅是一个简单的main方法,其中最核心的就是@SpringBootApplication注解,它是一下三个注解的总和:

  1. @Configuration: 用于定义一个配置类。
  2. @EnableAutoConfiguration: SpringBoot会自动根据你的jar包依赖来自动配置项目。
  3. @ComponentSacn: 告诉Spring哪个packages的用注解标识的类会被Spring自动扫描并且转入Bean容器。

通过以上三个注解你就应该了解到了SpringBoot的作用:自动化配置项目。之前我们要手动进行的XML配置在这里仅需要这一个注解就完成了。且SpringBoot项目不需要单独部署到Tomcat中才能启动,通过这个启动器,SpringBoot会自动构建一个web容器,并将项目部署到其中。

So,

Run SpringBootApplication

image

发现报错,说DataSource数据源的url地址没有配置。之前我们提到了SpringBoot的特性就是自动化配置,它会根据你的依赖文件来配置项目,我们再看一下我们的pom.xml:

image

其中最上层的<parent>节点约束了整个下面所有spring-boot依赖的版本,即这里使用了SpringBoot-2.0.5。然后关注<dependencies>节点下的前四个依赖:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<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>1.3.2</version>
</dependency>

Spring Boot应用启动器

spring-boot-starter: Spring Boot的核心启动器,包含了自动配置、日志和YAML。

spring-boot-starter-jdbc: 支持JDBC数据库。

spring-boot-starter-thymeleaf: 支持Thymeleaf模板引擎,包括与Spring的集成。

spring-boot-starter-web: 支持全栈式开发,包括Tomcat和Spring-WebMVC。

mybatis-spring-boot-starter: 整合spring-mybatis依赖。

前面我们强调的一点是Spring Boot能实现自动化配置,那么项目的依赖就决定了Spring Boot将如何自动配置项目,Spring Boot的启动器就决定了项目会以什么样的配置启动项目;如此,我们会明白这个报错是为什么了。

因为我们配置配置JDBC连接的数据库,所以报错,注释掉spring-boot-starter-jdbc和mybatis-spring-boot-starter依赖,再次启动SpringBootApplication:

image

启动成功。

测试

在src/main/java/cn/tycoding/springboot/下创建controller文件夹并创建LoginController.java类:

@RestController
public class LoginController {

    @RequestMapping("/login")
    public String login(@RequestParam("username") String username, @RequestParam("password") String password) {
        System.out.println("username:" + username + ", password:" + password);
        return null;
    }
}

如上就完成了在SSM阶段一个最基本的SpringMVC Controller映射方法的书写,那么测试一下:

在浏览器上访问:

localhost:8080/login?username=tycoding&password=123

后端即可接收到username和password参数。

这时你会发现,SpringBoot内置的Web容器默认访问地址就是8080端口,如果想改变这个默认端口,修改src/main/resources/application.properties:

server.port=8088

重启SpringbootApplication,访问:localhost:8088/login?username=tycoding&password=123

读取配置文件信息

在src/main/resources/application.properties中添加配置:

url=http://www.tycoding.cn

在LoginController.java中添加映射方法:

@RestController
public class LoginController {
    @Autowired
    private Environment environment;

    @RequestMapping("/blog")
    public String login(){
        return environment.getProperty("url");
    }
}

Spring提供的Environment类用户读取配置文件中参数,访问:localhost:8088/blog即可得到。


交流

如果大家有兴趣,欢迎大家加入我的Java交流技术群:671017003 ,一起交流学习Java技术。博主目前一直在自学JAVA中,技术有限,如果可以,会尽力给大家提供一些帮助,或是一些学习方法,当然群里的大佬都会积极给新手答疑的。所以,别犹豫,快来加入我们吧!


联系

If you have some questions after you see this article, you can contact me or you can find some info by clicking these links.

Spring Boot 入门教程-入门程序,java基础入门第二版pdf百度网盘 好了闲话不多说,下面直接动手搭建第一个Spring Boot 入门程序。 项目搭建:intellj idea 2016 ,  maven 3.04  ,jdk1.7 ,搭建过程这里不再说明~~ 正式开始: 1.打开idea ,创建工程 2.选择 “Spring Initializr”,  JDK 选择 1.7,然后 Next。 3. 输入Name 其他可以默认,Next 4 《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》 【docs. 阅读详情

相关推荐

从零开始:使用IntelliJ IDEA搭建Spring Boot与MyBatis入门级工程

在Spring Boot项目中,日志级别通常在配置文件中设置。比如,可以在中设置日志级别如下:这个配置会使得Spring Web相关的日志输出级别调整为DEBUG级别。如果需要更复杂的日志配置,比如不同环境使用不同的日志配置文件,可以通过日志框架的配置文件进行自定义,如使用Logback的或Log4j2的log4j2.xml。自定义配置文件允许用户根据需要调整日志输出,包括控制台输出、文件输出、日志格式、滚动策略等。

weixin_42578963的博客 751

探索 TyCoding's Spring Boot 项目:一次高效、易用的 Java 开发之旅

探索 TyCoding's Spring Boot 项目:一次高效、易用的 Java 开发之旅 Spring Boot 是一个流行的 Java 开发框架,由 Pivotal Software 开发,旨在简化初始设置和操作。TyCoding 的 提供了一个全面的示例集合,帮助开发者更快地理解和应用 Spring Boot。 项目简介 此项目是 TyCoding 对 Spring Boot 框架的一...

gitblog_00057的博客 671

Linux环境下OpenSSH升级到 OpenSSH_9.8p1(内置保姆级教程并包含openssl升级过程)

2024年7月1日接到安全部门同事邮件通知,目前生产环境及测试环境服务器Openssh存在远程代码执行漏洞(CVE-2024-6387),漏洞等级高,且攻击者可以成功利用该漏洞获得远程root shell最高权限从而执行任意代码及命令,主要受影响版本为8.5p1

菜鸟运维升级之路 2万+

搭建SpringBoot项目三种方式(超详细版)

由于SpringBoot极大简化了Spring配置,所以只有一个application.properties配置文件,且Spring的自动配置功能使得大部分的配置都有默认配置,该文件的功能是覆盖默认配置信息,该文件不写任何信息都可以启动项目。SpringBoot项目中可以定义起步依赖,起步依赖不是以jar包为单位,而是以功能为单位,毕竟是一个约定大于配置的思想,凡是看到依赖带有stater单词的基本都不用添加依赖版本,因为这都已经在父项目parent中配置好了。然后直接点击Finish。

qq_53317005的博客 7万+

5nm制程的CV5芯片实测:用它给无人机做8K拍摄和实时避障,功耗和性能到底怎么样?

本文深度评测了5nm制程的CV5芯片在无人机8K拍摄和实时避障中的表现。通过实测数据展示了CV5的异构计算架构、8K视频编码性能和CVflow®AI引擎的加速效果,同时提供了开发中的优化技巧和散热建议,为无人机开发者提供了实用的参考。

weixin_30861797的博客 358

STM32外围电路硬件解析

复位 :让MCU回到最开始的状态。并且从头开始,重新执行程序 我们什么时候需要复位? 1.烧录的时候 2.程序跑飞了的时候 3.上电复位(上电的时候需要复位) 复位方式: 1.上电复位: --- 一定要有 MCU的Reset是复位引脚,当这个引脚为低电平时,

qq_39577221的博客 1万+

SpringBoot的搭建(两种方式)

springboot搭建

感谢阅读 1万+

海康威视摄像头CVE-2017-7921漏洞复现:从零到一的实战指南(含解密工具下载)

本文详细解析了海康威视摄像头CVE-2017-7921漏洞的技术原理与复现方法,提供从环境搭建到实战利用的完整指南。通过认证绕过漏洞,攻击者可获取敏感信息并执行高权限操作,文章还包含解密工具下载与防御建议,助力安全研究人员深入理解物联网设备安全风险。

weixin_29325515的博客 809

Spring Boot的基本概念、优缺点

Spring Boot的基本概念、优缺点

记录和分享属于我的“IT”时光。 1477

LDA模型中文文本主题提取丨可视化工具pyLDAvis的使用

主题模型LDA的实现及其可视化pyLDAvis1. 无监督提取文档主题——LDA模型1.1 准备工作1.2 调用api实现模型2. LDA的可视化交互分析——pyLDAvis2.1 安装pyLDAvis2.2 结合gensim调用api实现可视化p.s. 保存结果为独立网页p.p.s. 加快prepare速度?2.3 如何分析pyLDAvis可视化结果2.3.1. **每个主题表示什么意义?**2.3.2 每个主题有多么普遍?2.3.3 主题之间有什么关联? 1. 无监督提取文档主题——LDA模型 这个模型

qq_39496504的博客 6万+

21、使用 FastHenry 进行片上电感器的模拟与参数预测

本文介绍了使用 FastHenry 对片上电感器进行模拟和参数预测的方法。讨论了 FastHenry 的适用场景、线圈几何形状的选择与离散化方法,以及如何考虑模拟中的寄生效应。同时对比了 FastHenry 和 Magnet 在不同基板电阻率下的模拟精度,并提出了优化电感器设计的策略,为高效准确地预测电感参数提供了技术指导。

y9z0a1b的博客 292

搭建Spring Boot 项目

详细介绍搭建完整的Spring Boot项目 使用mybatis-plus链接数据库 通过swagger生成接口文档 测试接口

CQRNB的博客 1万+

【Bug已解决】Codex 切换 model_provider 后历史会话消失的解决方案

方案适用场景推荐指数切回原 provider 验证排查的第一步,确认数据是否真的丢失⭐⭐⭐⭐⭐查看本地会话文件进一步确认数据完整性⭐⭐⭐⭐⭐查阅跨 provider 恢复命令官方是否提供了对应功能⭐⭐⭐使用社区辅助工具需要频繁切换 provider 的场景⭐⭐⭐定期备份配置目录任何场景下的通用保险措施⭐⭐⭐⭐切换后历史会话"消失"的本质是客户端的会话列表展示逻辑受当前活跃 provider 状态过滤,而不是原始数据文件被真正删除。

一键难忘的博客 5999

IDEA搭建SpringBoot,MyBatis,Mysql工程项目

构建一个基于Spring Boot框架的现代化Web应用程序,以满足[公司/组织名称]对于[业务需求描述]的需求。通过利用Spring Boot简化企业级应用开发的优势,实现一个高效、可扩展且易于维护的应用系统。提高效率:通过集成微服务架构模式,减少系统的复杂度,并加速开发周期。增强用户体验:提供一个响应迅速、界面友好且功能齐全的用户交互平台。确保数据安全:实施严格的数据保护措施,保障用户信息安全。支持跨平台访问:设计RESTful API接口,确保应用程序可以在多种设备上无缝运行。

2509_93994107的博客 751

金三银四!风控建模岗面试题库大全:从理论到实战避坑指南

风控建模面试大全

阿黎逸阳的博客 767

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

SpringBoot入门之Idea工程快速搭建 02

2. SpringBoot工程环境快速搭建 2.1 创建一个Maven项目 创建好的项目, 构造是下图这个样子的~ 2.2 导入pom依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://...

啊策策大数据社区 253

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

快速搭建springboot入门案例

Idea使用2021.1.3 maven使用3.6.3 spring-boo使用2.7.0 项目名称随意 idea默认版本是maven3需要添加自己下载的maven 这里的setting.xml换成自己maven的默认使用的是C盘下的setting。若还未安装maven的请先去安装好maven 创建主程序类: 创建业务: 运行主程序类: 在地址栏输入http://localhost:8080/hello 一个简单的springboot项目就完成了 1、这是因为建包方式有问题,主程序类的位置必

qq_52387931的博客 262

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

从零开始搭建springboot项目 第一部分

本人大二双非软件工程本科生,疫情期间在家无聊搭建了几个spring-boot项目,搭建的时候也出过许多问题,也感谢百度上面的大佬,和各种群里面的大佬的耐心指点,今天我保证巩固知识,也是造福各位才开始学spring-boot的同学们的想法(大佬除外)写下这篇博客,写的不好请指出了,但是不要骂我,谢谢,话不多说,我们开始搭建spring-boot项目 搭建所需 1 idea 2 maven 3 tomcat 第一步:新建文件 首先我们需要新建一个project 点击左上角的file->new-&

weixin_43145539的博客 1115

SpringBoot入门

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发者能够快速地创建独立的、生产级别的Spring应用程序。它隐藏了许多配置细节,并提供了一套合理的默认设置,使得开发者可以专注于业务逻辑的实现。

m0_63729414的博客 905

SpringBoot-学习笔记02【SpringBoot入门】

SpringBoot-学习笔记02【SpringBoot入门】

upward 745

SpringBoot学习之搭建入门项目

基于IDEA搭建SpringBoot项目,并介绍可执行jar的创建和执行方式,简单说明启动类注解原理

CharlesYan的博客 404

视频教程-java入门之springboot实战入门-Java

java入门之springboot实战入门 多个小程序开发经验,带领大家实战...

weixin_32896685的博客 198

SpringBoot使用

SpringBoot基础 一、SpringBoot简介 二、SpringBoot快速入门 三、SpringBoot原理分析 四、SpringBoot的配置文件 五、SpringBoot与整合其他技术 一、SpringBoot简介 Spring缺点:配置繁琐;依赖管理繁琐(版本冲突); Spring2.5:半注解,半配置;Spring3.0:全注解; SpringBoot优点:基于约定优于配置,内置...

LiYingQian的博客 180

史上最详细Springboot概述

SpringBoot SpringBoot的概述 SpringBoot解决Spring的缺点 SpringBoot对Spring的缺点进行改善和优化,基于约定优于配置的思想,可以让开发人员不必在配置与逻辑业务之间进行思维的切换,可以更好地投入到逻辑业务的代码编写中,从而大大提高了开发的效率。 SpringBoot的特点 为基于Spring的开发提供更快的入门体验 开箱即用,没有代码生成,也不用...

weixin_43949154的博客 638
上一篇: SpringBoot整合Mybatis实现简单的CRUD
下一篇: 使用SSM+Solr优雅的实现电商项目中的搜索功能
TyCoding
博客等级 码龄9年 316粉丝 49原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值