内容回顾 | 来!来!来!手动创建spring boot项目了解下?

云中志

共 4172字,需浏览 9分钟

 ·

2021-07-22 08:32

最近想再系统地回顾下spring boot相关知识,主要还是想补一些spring boot的进阶知识。今天就暂时不更新新的内容了,大家先回顾下之前的一篇spring boot创建教程,从明天我们开始再系统地复习spring boot相关知识。
随着web应用开发需求的不断变化,敏捷开发变成一种趋势,作为应用开发者,我们迫切需要一款应用服务框架来满足我们的各种开发需求,同时也希望能够简化开发流程,提高开发效率,当然也要很好地兼容其他框架。spring boot就是在这样的背景下诞生的,从她诞生的那一刻起,她就倍受青睐,当然最主要的原因还是因为她确实很优秀。
她通过main方法运行,不仅便捷了开发流程,更省去了环境搭建的烦恼,同时也简化了测试流程。好了,废话少说,代码撸起来!

1、创建Maven项目

  • 这里没有选spring Initializr,因为我们这里说的是手动创建,如果用这种自动构建的方式,那岂不就失去了修bug的乐趣 ^_^
  •  这里设置项目的包信息
  •  这里设置项目的maven配置 
  • 设置项目名称


  • 项目创建完成后的目录结构 

2、 参照Spring boot官方文档修改pom.xml

  • 修改 maven编译的jdk版本

  • 将spring boot设置为 parent

  • 修改后的pom.xml


<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>io.github.syske</groupId> <artifactId>firstspringbootdome</artifactId> <version>1.0-SNAPSHOT</version> <packaging>jar</packaging> <!-- 这里将spring boot设置为父类 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.3.RELEASE</version> </parent> <name>firstspringbootdome Maven Webapp</name> <!-- FIXME change it to the project's website --> <url>http://www.example.com</url><!-- 这里要讲maven的编译的版本改为和我们环境对应的1.8 --> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency> <!-- 这里配置spring的jar包 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> <build> <finalName>firstspringbootdome</finalName> <!-- 这里设置Spring boot的插件 --> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build></project>

3、 创建Application

  • 创建java文件夹,并设置为resource root

  • 创建服务启动入口(就是前面提到的main方法启动)
package io.github.syske;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplicationpublic class FirstSpringBootDome { public static void main(String[] args) { SpringApplication.run(FirstSpringBootDome.class, args); }}
4、创建Controller
  • 这里需要留意的是controller和Application的相对路径


package io.github.syske.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;@Controllerpublic class HelloController { @RequestMapping("/hello") @ResponseBody public String hello() { return "hello Spring boot"; }}
  • 创建完后的项目结构 



5、运行测试

  • 这里启动就是运行前面FirstSpringBootDome 的main方法

6、打包

  • 打包用的是maven插件,直接双击packag就行  

总结

  • 我在踩坑的过程中发现,setting的设置可能会导致找不到类的错误,具体错误如下


java.lang.NoClassDefFoundError: ch/qos/logback/core/joran/spi/JoranException
网上的解决方法是添加如下依赖:
<dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.1.3</version> <exclusions> <exclusion> <artifactId>slf4j-api</artifactId> <groupId>org.slf4j</groupId> </exclusion> </exclusions> <scope>provided</scope></dependency>


推荐阅读


1.  java后端学习流程










浏览 22
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报