Spring Boot 项目搭建教程及注解

发布时间 - 2026-01-11 03:13:49    点击率:

Spring Boot

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域成为领导者

特点:

1. 创建独立的Spring应用程序

2. 嵌入的Tomcat,无需部署WAR文件

3. 简化Maven配置

4. 自动配置Spring

5. 提供生产就绪型功能,如指标,健康检查和外部配置

6. 绝对没有代码生成和对XML没有要求配置

Web项目的搭建

搭建环境及工具:IDEA工具+JDK环境+Maven环境

第一步:先new 一个project,选择Spring Initializr,在选择右边的SDK,也就是你的JDK版本,默认会从官网下载Spring Boot模板,直接next

第二步:这是项目中的一些细节东西,大致说说其中的意思

Group:对应pom.xml文件中的groupId,项目组织的唯一标识,对应Java包的结构

Artifact:对应pom.xml文件的artifactId,项目唯一标识,对应项目名称

Type:我们是Maven构建的,那么选择第一个Maven Project

Language:开发语言,选择Java

Packaging:打包类型,打包成Jar文件

Java Version:JDK版本,选择1.8

Version:项目版本,对应pom文件的version

Name:项目名称

Description:项目描述,对应pom文件的description

Package:包名

大概都了解了,根据自己的需求填写,测试的话就这样默认就可以,next

第三步:这里根据自己的需求,需要什么功能添加什么,我认为这里的已经非常的齐全了,选择web,勾选web,要是想要SQL的可以点击里面有MySQL,JDBC,Mybatis等一些数据库,选择想要的直接next

第四步:也是最重要的,没啥东西就直接finsh就好

完成之后的项目结构目录:我们可以将我选中的这几个无关的文件删除,都是Maven的一些文件,没啥作用

讲解一下其中一些文件的作用

最后在这个目录下创建一个HelloController.java的类

代码:

@RestController
public class HelloController {
 @RequestMapping(value = "/")
 public String hello(){
  return "hello";
 }

}

之后运行项目吧,在你的浏览器上输入:localhost:8080就可以访问到了

这里我解释一下其中注解的意思:

注解(annotations)列表

@ResponseBody

用该注解修饰的函数,会将结果直接填充到HTTP的响应体中,一般用于构建RESTful的api;

@Controller

用于定义控制器类,在spring 项目中由控制器负责将用户发来的URL请求转发到对应的服务接口(service层)。

@RestController

@ResponseBody和@Controller的合集

@RequestMapping

提供路由信息,负责URL到Controller中的具体函数的映射。

@EnableAutoConfiguration

Spring Boot自动配置(auto-configuration):尝试根据你添加的jar依赖自动配置你的Spring应用。例如,如果你的classpath下存在HSQLDB,并且你没有手动配置任何数据库连接beans,那么我们将自动配置一个内存型(in-memory)数据库”。你可以将@EnableAutoConfiguration或者@SpringBootApplication注解添加到一个@Configuration类上来选择自动配置。如果发现应用了你不想要的特定自动配置类,你可以使用@EnableAutoConfiguration注解的排除属性来禁用它们。例子代码如下:

@ComponentScan

表示将该类自动发现(扫描)并注册为Bean,可以自动收集所有的Spring组件,包括@Configuration类。我们经常使用@ComponentScan注解搜索beans,并结合@Autowired注解导入。

@Configuration

相当于传统的xml配置文件,如果有些第三方库需要用到xml文件,建议仍然通过@Configuration类作为项目的配置主类——可以使用@ImportResource注解加载xml配置文件。

@SpringBootApplication

相当于@EnableAutoConfiguration、@ComponentScan和@Configuration的合集。

@Import

用来导入其他配置类。

@ImportResource

用来加载xml配置文件。

@Autowired

自动导入依赖的bean

@Service

一般用于修饰service层的组件

@Repository

使用@Repository注解可以确保DAO或者repositories提供异常转译,这个注解修饰的DAO或者repositories类会被ComponetScan发现并配置,同时也不需要为它们提供XML配置项。

以上这篇Spring Boot 项目搭建教程及注解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


# Spring  # Boot  # 项目搭建  # 使用IDEA搭建一个简单的SpringBoot项目超详细过程  # 快速搭建一个SpringBoot项目(纯小白搭建教程)  # SpringBoot之Helloword 快速搭建一个web项目(图文)  # IDEA快速搭建spring boot项目教程(Spring initializr)  # 搭建SpringBoot项目三种方式(图文教程)  # 一文教会你如何从0到1搭建一个SpringBoot项目  # 自己的  # 配置文件  # 你可以  # 给大家  # 合集  # 没啥  # 就可以  # 都是  # 这是  # 加载  # 在这个  # 第一个  # 是由  # 就好  # 最重要  # 你不  # 我们可以  # 我认为  # 用了  # 希望能 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 微信推文制作网站有哪些,怎么做微信推文,急?  Laravel如何与Vue.js集成_Laravel + Vue前后端分离项目搭建指南  谷歌Google入口永久地址_Google搜索引擎官网首页永久入口  想要更高端的建设网站,这些原则一定要坚持!  成都网站制作公司哪家好,四川省职工服务网是做什么用?  Laravel怎么在Blade中安全地输出原始HTML内容  Claude怎样写结构化提示词_Claude结构化提示词写法【教程】  Laravel的HTTP客户端怎么用_Laravel HTTP Client发起API请求教程  HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】  Laravel如何处理JSON字段_Eloquent原生JSON字段类型操作教程  专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?  如何快速搭建高效WAP手机网站?  Chrome浏览器标签页分组怎么用_谷歌浏览器整理标签页技巧【效率】  Laravel路由怎么定义_Laravel核心路由系统完全入门指南  为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】  Laravel如何实现密码重置功能_Laravel密码找回与重置流程  html5audio标签播放结束怎么触发事件_onended回调方法【教程】  Laravel怎么多语言本地化设置_Laravel语言包翻译与Locale动态切换【手册】  在线制作视频的网站有哪些,电脑如何制作视频短片?  Firefox Developer Edition开发者版本入口  Laravel如何使用Blade组件和插槽?(Component代码示例)  如何在 Telegram Web View(iOS)中防止键盘遮挡底部输入框  Laravel的Blade指令怎么自定义_创建你自己的Laravel Blade Directives  焦点电影公司作品,电影焦点结局是什么?  装修招标网站设计制作流程,装修招标流程?  如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?  Laravel如何获取当前登录用户信息_Laravel Auth门面使用与Session用户读取【技巧】  大学网站设计制作软件有哪些,如何将网站制作成自己app?  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  如何在建站之星绑定自定义域名?  如何快速辨别茅台真假?关键步骤解析  HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】  Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】  Laravel策略(Policy)如何控制权限_Laravel Gates与Policies实现用户授权  如何快速查询网站的真实建站时间?  Laravel如何使用Gate和Policy进行授权?(权限控制)  在centOS 7安装mysql 5.7的详细教程  php8.4header发送头信息失败怎么办_php8.4header函数问题解决【解答】  智能起名网站制作软件有哪些,制作logo的软件?  原生JS获取元素集合的子元素宽度实例  如何在HTML表单中获取用户输入并用JavaScript动态控制复利计算循环  bootstrap日历插件datetimepicker使用方法  公司门户网站制作流程,华为官网怎么做?  Laravel怎么使用Collection集合方法_Laravel数组操作高级函数pluck与map【手册】  Laravel如何实现API版本控制_Laravel版本化API设计方案  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程  如何为不同团队 ID 动态生成多个“认领值班”按钮  ,交易猫的商品怎么发布到网站上去?  Win11关机界面怎么改_Win11自定义关机画面设置【工具】