Spring Boot(一)idea创建spring boot项目的过程

南楼画角 提交于 2020-02-01 11:16:00

1、artifact不能大小写混,全部小写

在这里插入图片描述
在这里插入图片描述
·artifact改为小写springboot_demo

Type属性可以下拉选择project或者pom,Packaging属性可下拉选择jar或者war
project与pom的区别:project生成带有目录结构的,后者没有
jar与war的区别:jar包用于服务于调试,代码多,后端。war包用于部署,前端代码,样式设置css等,前端。

效果:
在这里插入图片描述

2、设置窗口services

services窗口比run窗口更好用,添加maven到services窗口配置。
在这里插入图片描述
在这里插入图片描述

3、访问页面,Whitelabel Error Page

原因:spring mvc是方法层的拦截。直接访问页面没有指向内容。
解决:代码中加入拦截处理器

类头加入
@RestController

代码块加入
@RequestMapping("/")
	String index() {
		return "hello spring boot";
	}

在这里插入图片描述

4、访问成功后,对生成的几个配置进行解读

1)mvnw:

执行mvnw clean,在别的主机上,若maven版本与预期不一致或者没有maven,那么会自动下载预期版本。

5、resourses目录下的static与template

1)static存放静态页面

HTML

2)template存放动态页面

动态页面需要先请求服务器,访问后台应用程序,然后再转向到页面,比如访问JSP。spring boot建议不要使用JSP,默认使用Thymeleaf来做动态页面。

springboot控制器默认静态跳转,引入Thymyleaf后变为动态跳转,比如在控制器中原来是return “Hello.html” 现在只需要 return “Hello” ,因为动态跳转不用后缀

6、在一个项目里创建多个模块

IntelliJ IDEA在一个项目里创建多个模块
总结一下就是,创建一个空项目,然后删除src目录,最后就可以创建模块了。

1)父项目两个重要标签

<packaging>pom</packaging>
<modules><modules>

2)子模块

pom.xml的<parent>指向父项目,继承父项目的依赖。

项目的打包类型:pom、jar、war

项目中一般使用maven进行模块管理,每个模块下对应都有一个pom文件,pom文件中维护了各模块之间的依赖和继承关系。项目模块化可以将通用的部分抽离出来,方便重用;修改一部分代码不再是build整个项目,缩短了build时间;此外各模块都有自己的pom文件,结构更清晰。

使用maven进行模块划分管理,一般都会有一个父级项目,pom文件除了GAV(groupId, artifactId,
version)是必须要配置的,另一个重要的属性就是packing打包类型,所有的父级项目的packing都为pom,packing默认是jar类型,如果不作配置,maven会将该项目打成jar包。作为父级项目,还有一个重要的属性,那就是modules,通过modules标签将项目的所有子项目引用进来,在build父级项目时,会根据子模块的相互依赖关系整理一个build顺序,然后依次build。

而对于各个子项目,需要在其对应的pom文件开头申明对父级项目的引用,通过GAV实现。对于子项目自己的GAV配置,GV如果不配置,则会从父级项目的配置继承过来。子模块可通过dependencies标签来添加自己的依赖,此外子类项目的packing值只能是war或者jar,前面已经说过,packing默认是jar类型。如果是需要部署的项目,则需要打包成war类型,如果只是内部调用或者是作服务使用,则推荐打包成jar类型。

7、系统属性修改

1)修改spring标志。

在resources目录下新建banner.txt,里边就是我们要的标志
关掉spring标志

public static void main(String[] args) {
		SpringApplication springApplication = new SpringApplication(DemoHelloApplication.class);
		springApplication.setBannerMode(Banner.Mode.OFF);
		springApplication.run(args);
	}
2)配置元数据文件
@ConfigurationProperties(prefix = "flagdied")
@Data
@Component
public class Student {
	String name;
	int age;
}

引入包

<!--springbooot引入元数据装配对象时需要引入依赖-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>

通过使用spring-boot-configuration-processor jar, 你可以从被@ConfigurationProperties注解的节点轻松的产生自己的配置元数据文件。

8、使用热部署可以避免多次重新加载

可以引入devtools依赖或其他

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!