栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

第一个Spring Boot项目 (详细)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

第一个Spring Boot项目 (详细)

该博客主要借鉴了狂神发在微信的博客,按照他上课的步骤细化的

什么是Springboot

一个javaweb的开发框架,和SpringMVC类似,对比其他javaweb框架的好处,官方说是简化开发,约定大于配置, you can “just run”,能迅速的开发web应用,几行代码开发一个http接口

所有的技术框架的发展似乎都遵循了一条主线规律:从一个复杂应用场景 衍生 一种规范框架,人们只需要进行各种配置而不需要自己去实现它,这时候强大的配置功能成了优点;发展到一定程度之后,人们根据实际生产应用情况,选取其中实用功能和设计精华,重构出一些轻量级的框架;之后为了提高开发效率,嫌弃原先的各类配置过于麻烦,于是开始提倡“约定大于配置”,进而衍生出一些一站式的解决方案。

是的这就是Java企业级应用->J2EE->spring->springboot的过程。

Spring Boot 基于 Spring 开发,Spirng Boot 本身并不提供 Spring 框架的核心特性以及扩展功能,只是用于快速、敏捷地开发新一代基于 Spring 框架的应用程序。也就是说,它并不是用来替代 Spring 的解决方案,而是和 Spring 框架紧密结合用于提升 Spring 开发者体验的工具。Spring Boot 以约定大于配置的核心思想,默认帮我们进行了很多设置,多数 Spring Boot 应用只需要很少的 Spring 配置。同时它集成了大量常用的第三方库配置(例如 Redis、MongoDB、Jpa、RabbitMQ、Quartz 等等),Spring Boot 应用中这些第三方库几乎可以零配置的开箱即用

简单来说就是SpringBoot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架

Spring Boot的主要优点:

  • 为所有Spring开发者更快的入门
  • 开箱即用,提供各种默认配置来简化项目配置
  • 内嵌式容器简化Web项目
  • 没有冗余代码生成和XML配置的要求
第一个Springboot程序 项目结构分析

程序主入口:java / BuildFromIdeaApplication (运行它就是启动项目)

核心配置文件:resources / application.properties

单元测试:test / BuildFromIdeaApplicationTests

分析 :pom.xml


    
    
        org.springframework.boot
        spring-boot-starter-web
    
	
    
        org.springframework.boot
        spring-boot-starter-test
        test
        
            
                org.junit.vintage
                junit-vintage-engine
            
        
    



    
        
            org.springframework.boot
            spring-boot-dependencies
            ${spring-boot.version}
            pom
            import
        
    



    
        
            org.apache.maven.plugins
            maven-compiler-plugin
            3.8.1
            
                1.8
                1.8
                UTF-8
            
        
              
        
            org.springframework.boot
            spring-boot-maven-plugin
            2.3.7.RELEASE
            
                com.tesla.BuildFromIdeaApplication
            
            
                
                    repackage
                    
                        repackage
                    
                
            
        
    

  • 所有springboot 依赖 都使用的开头:spring-boot-starter
方式一:利用官网创建项目

1、springboot 首页底部 选择 spring initialzr

  • 选择springboot 版本 带有GA( 通用稳定)
  • springboot 标签带有snapshot (快照 )不建议使用

2、配置创建项目

  • java版本:我的jdk是1.8 所以选择 8
  • 打包方式 : 默认jar包

  • 添加依赖:spring web

  • 选择generate 下载

3、下载到自定义的路径 —》解压

4、打开IDEA,File —》 close project —》 回到欢迎首页 —》选择 import project

5、等待依赖下载完成,并删除删除 help.md 、 .gitignore 、 mvnw 、 mvnw.cmd 文件(在项目名文件下)让他看起来更像一个maven项目,其实不删也可以

6、找到程序主入口,并在其同级目录下建包

7、编写controller 测试代码运行

@RestController
public class MyController {
    @RequestMapping("/hello")
    public String firstFromWebsite(){
        return "hello,spring boot!";
    }
}
方式二:使用IDEA 创建项目

IDEA 实际上集成了官网

准备工作
  • JDK :1.8.0_192
  • Maven:3.8.2
  • Springboots:2.6.1 (带有GA 的最新版)

开发工具:

IDEA

开始创建

1、打开IDEA file —》 new project —》 Spring Initialzr —》custom:https://start.aliyun.com/ (这里选择阿里的镜像,否则直接连官网会下载得很慢!!!)

2、自定义 artifact 和 name 、description等,package的值最好就设置为二级包名即可 (狂神的建议)

我的JDK是1.8 的,所以java version选择 8

注意:

artifact 只能用小写字母表示,出现大写字母会报错

3、添加 spring web 依赖

  • 也可以后期在 pom. xml 中导入 spring-boot-starter-web 依赖

4、删除 help.md 、 .gitignore 、 mvnw 、 mvnw.cmd 文件(在项目名文件下)让他看起来更像一个maven项目,其实不删也可以

5、创建controller 并编写

@Controller
@RequestMapping("/h")
public class MyController {
    @GetMapping("/hello")
    @ResponseBody
    public String buildFromIdea(){
        return "hello! springboot";
    }
}

6、启动 BuildFromIdeaApplication,并成功运行

在浏览器输入localhost:8080/h/hello ,得到输出

修改Tomcat 端口
  • 在 resources 下 application.properties
#修改端口号
server.port=8081

启动项目,在控制台查看修改成功

自定义Banner
  • 在 resources 目录下新建 banner.txt(注意查看 txt 文件上有标志:表示已被识别到)

  • 加入之后重启

  • 运行项目,在控制台查看修改成功

将项目打成 jar 包
  • maven projects:lifecycle -》 package
  • 进入jar 包所在的文件夹,cmd 运行
  • 执行jar 包 java -jar 项目包名(java -jar bulidFromWebsite-0.0.1-SNAPSHOT.jar)

项目照样可以运行,在浏览器也能看到输出的结果

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/643931.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号