【Spring Boot】创建一个 Spring Boot 项目

创建一个 Spring Boot 项目

  • 1. 安装插件
  • 2. 创建 Spring Boot 项目
  • 3. 项目目录介绍和运行
  • 注意事项

1. 安装插件

IDEA 中安装 Spring Boot Helper / Spring Assistant / Spring Initializr and Assistant插件才能创建 Spring Boot 项⽬
(有时候不用安装,直接就能创建,这就要看创建项目时有没有 Spring Initializr 选项)

在这里插入图片描述

安装好之后,它的名字就变成了 Spring Initializr and Assistant

在这里插入图片描述

2. 创建 Spring Boot 项目

选择 Spring Initilaizr

在这里插入图片描述

在这里插入图片描述

点击 create 就完成 Spring Boot 的项⽬创建了。
注意:这里面选择的 Spring Boot 的版本与前面选择的 JDK 的版本要对应上,要相互支持。

注意事项:
第⼀次打开 Spring Boot 项⽬需要加载很久,因为当前 Spring Boot 框架并没有在⾃⼰的本地仓库。
为了加速 Spring Boot 项⽬的下载,在打开项⽬之前,请先确认⾃⼰的 Maven 已经配置为国内源.

3. 项目目录介绍和运行

新建的 Spring Boot 项⽬⽬录如下:

在这里插入图片描述

Spring Boot 项⽬有两个主要的⽬录:

  • src/main/java 为 Java 源代码。
  • src/main/resources 为静态资源或配置⽂件:
    /static:静态资源⽂件夹;
    /templates:模版资源⽂件夹。
    applicatioin.properties 为配置文件。

运行项目:

点击启动类的 main ⽅法就可以运⾏ Spring Boot 项⽬了,启动成功如下图所示:

在这里插入图片描述

输出 Hello world:
之前是 Spring 是⼀个普通 Java 项⽬,没办法直接和浏览器进⾏互动,接下来我们要⽤ Spring Boot 来实现和浏览器及⽤户的交互。

在创建的项⽬包路径下创建 UserController ⽂件,实现代码如下:

@RestController
@RequestMapping("/user")
public class UserController {@RequestMapping("/sayhi")public String sayHi(){return "Hi,Spring Boot.";}
}
  • @RestController = @ResponseBody + @ Controller
    @ResponseBody 表示返回的是非静态页面的数据,如果不使用的话,默认会返回该项目下的名为 “Hi, Spring Boot” 的静态页面,但其实我们没有这个页面,所以会报错。
  • 类上面的 @RequestMapping(“/user”) 表示第一级路径
  • 方法上的 @RequestMapping(“/sayhi”) 表示第二级路径, 这两级路径对应 访问时 使用 的 URL

重新启动项⽬,访问 http://localhost:8080/user/sayhi 最终效果如下:

在这里插入图片描述

注意事项

我们把要注⼊到容器中的类和启动类放到同级⽬录(或其子目录)下, 这时候 Spring Boot 项⽬才能正常的将 bean 注⼊到容器中。

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

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

相关文章

分布式事务 —— SpringCloud Alibaba Seata

文章目录 Seata 简介Seata 服务端Seata 客户端 Seata 简介 传统的单体应用中,业务操作使用同一条连接操作不同的数据表,一旦出现异常就可以整体回滚。随着公司的快速发展、业务需求的变化,单体应用被拆分成微服务应用,原来的单体…

【排序算法】冒泡排序

文章目录 一:排序算法1.1 介绍1.2 分类 二:冒泡排序2.1 基本介绍2.2 图解冒泡排序算法2.3 代码实现 三:算法性能分析3.1 时间复杂度3.2 空间复杂度 一:排序算法 1.1 介绍 排序也称排序算法(Sort Algorithm),排序是将…

SpringCloud-消息组件

1 简介 了解过RabbitMQ后,可能我们会遇到不同的系统在用不同的队列。比如系统A用的Kafka,系统B用的RabbitMQ,但是没了解过Kafka,因此可以使用Spring Stream,它能够屏蔽地产,像JDBC一样,只关心SQ…

C# 给某个方法设定执行超时时间

C# 给某个方法设定执行超时时间在某些情况下(例如通过网络访问数据),常常不希望程序卡住而占用太多时间以至于造成界面假死。 在这时、我们可以通过Thread、Thread Invoke(UI)或者是 delegate.BeginInvoke 来避免界面假死, 但是…

java ftputils 模拟测试方法 有效

前言: 最近需要开发相关ftp内进行文件的上传与下载的操作,需要使用java来实现,需要开发一个工具类进行处理; 具体代码如下: import org.apache.commons.net.ftp.FTP; import org.apache.commons.net.ftp.FTPClient; import org.slf4j.Logger; import org.slf4j.LoggerF…

el-table进阶(每条数据分行或合并)

最麻烦的还是css样式&#xff0c;表格样式自己调吧 <!-- ——————————————————————————————————根据数据拓展表格—————————————————————————————————— --> <div style"display: flex"&…

Java Spring Boot 目录结构介绍

Java Spring Boot 是一个用于简化Java应用程序开发的框架&#xff0c;它提供了一套灵活、易用的开发工具和约定&#xff0c;帮助开发者更快速地构建各种类型的Java应用程序。Spring Boot 的目录结构是一个重要的组成部分&#xff0c;它规定了如何组织和管理项目代码和资源文件。…

cpp primer笔记-010开始

下面的第5行代码可以写成第6行注释的代码#include<iostream> int main() {int v1{}, v2{};(std::cin >> v1) >> v2;//std::cin>>v1>>v2;(std::cout << v1) << " " << v2 << std::endl;return 0; }char类型在有…

oralce配置访问白名单的方法

目录 配置sqlnet.ora文件 重新加载使配置生效 注意事项 Oracle数据库安全性提升&#xff1a;IP白名单的配置方法 随着互联网的发展&#xff0c;数据库安全问题也越来越严重。Oracle是目前使用较为广泛的一款数据库管理系统&#xff0c;而IP白名单作为提升数据库安全性的有效…

深度学习——权重衰减(weight_decay)

深度学习——权重衰减&#xff08;weight_decay) 文章目录 前言一、权重衰减1.1. 范数与权重衰减1.2. 高维线性回归1.3. 从零开始实现1.3.1.初始化模型参数1.3.2. 定义L₂范数惩罚1.3.3. 定义训练代码实现1.3.4. 不管正则化直接训练1.3.5. 使用权重衰减 1.4. 简洁实现 总结 前言…

vue 项目打包性能分析插件 webpack-bundle-analyzer

webpack-bundle-analyzer 是 webpack 的插件&#xff0c;需要配合 webpack 和 webpack-cli 一起使用。这个插件可以读取输出文件夹&#xff08;通常是 dist&#xff09;中的 stats.json 文件&#xff0c;把该文件可视化展现&#xff0c;生成代码分析报告&#xff0c;可以直观地…

Leetcode901-股票价格跨度

一、前言 本题基于leetcode901股票价格趋势这道题&#xff0c;说一下通过java解决的一些方法。并且解释一下笔者写这道题之前的想法和一些自己遇到的错误。需要注意的是&#xff0c;该题最多调用 next 方法 10^4 次,一般出现该提示说明需要注意时间复杂度。 二、解决思路 ①…

神经网络中的知识蒸馏

多分类交叉熵损失函数&#xff1a;每个样本的标签已经给出&#xff0c;模型给出在三种动物上的预测概率。将全部样本都被正确预测的概率求得为0.70.50.1&#xff0c;也称为似然概率。优化的目标就是希望似然概率最大化。如果样本很多&#xff0c;概率不断连乘&#xff0c;就会造…

Qt编程中采用signal传递自定义数据类型

本文介绍Qt编程中采用signal传递自定义数据类型&#xff08;结构体类型&#xff09;。 Qt编程中可以通过signal传递标准类型&#xff0c;如常见的int,QString,bool类型&#xff0c;有时候需要传递特定的数据类型如结构体&#xff0c;Qt是不支持直接传递的&#xff0c;若将其分…

关于丢失msvcp71.dll的5个解决办法,msvcp71.dll丢失原因分析

计算机已经成为我们生活和工作中不可或缺的一部分&#xff0c;在使用计算机的过程中&#xff0c;我们经常遇到各种软件或应用程序崩溃的情况。其中&#xff0c;一个常见的错误提示是“MSVCP71.dll丢失”。这个错误通常出现在运行使用Visual C Redistributable for Visual Studi…

数据结构——多重链表的实现

//多重列表的实现 #include<stdio.h> #include<stdlib.h> struct lnode {int row,col,value; }; //没有用到down指针 //没有用到tag和next指针 typedef struct node {int tag;//区分头结点(0)和非零元素结点(1)struct node* right;struct node* down;//共用体与结…

Django基础讲解-路由控制器和视图(Django-02)

一 路由控制器 参考链接&#xff1a; Django源码阅读&#xff1a;路由&#xff08;二&#xff09; - 知乎 Route路由, 是一种映射关系&#xff01;路由是把客户端请求的 url路径与视图进行绑定 映射的一种关系。 这个/timer通过路由控制器最终匹配到myapp.views中的视图函数 …

抄写Linux源码(Day14:从 MBR 到 C main 函数 (3:研究 head.s) )

回忆我们需要做的事情&#xff1a; 为了支持 shell 程序的执行&#xff0c;我们需要提供&#xff1a; 1.缺页中断(不理解为什么要这个东西&#xff0c;只是闪客说需要&#xff0c;后边再说) 2.硬盘驱动、文件系统 (shell程序一开始是存放在磁盘里的&#xff0c;所以需要这两个东…

应用第三方ByteTrack实现目标跟踪

在上一篇博文&#xff0c;我们实现了应用官网ByteTrack实现的目标跟踪。但吹毛求疵地说&#xff0c;官网的ByteTrack有一些不足&#xff1a;1、为了通用性及科研的要求&#xff0c;代码过于冗长&#xff0c;但这不利于集成到自己的程序中&#xff1b;2、目标跟踪结果没有目标类…

MDC方式实现简单链路追踪

MDC 方式实现日志链路追踪 拦截器 package com.cdn.log.interceptor;import com.cdn.log.consts.CLogConst; import com.cdn.log.utils.IdUtil; import org.slf4j.MDC; import org.springframework.util.StringUtils; import org.springframework.web.servlet.ModelAndView; im…