SpringBoot整合web资源(2020/8/29)

1、SpringBoot整合Web资源

1.1、创建项目

1.1.1、利用工具创建项目

在这里插入图片描述

1.1.2、新建web资源目录

先增加webapp
在这里插入图片描述
在webapp中在增加WEB-INF目录
在这里插入图片描述
编辑pom.xml文件

<?xml version="1.0" encoding="UTF-8"?>


4.0.0
com.jt
springboot_jsp
0.0.1-SNAPSHOT
war
demo
Demo project for Spring Boot

<!--parent标签作用: 定义了SpringBoot中所有关联项目的版本号信息.-->
<parent>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-parent</artifactId>
	<version>2.3.3.RELEASE</version>
	<relativePath/> <!-- lookup parent from repository -->
</parent>


<properties>
	<java.version>1.8</java.version>
	<!--项目打包时,跳过测试类打包-->
	<skipTests>true</skipTests>
</properties>

<!--开箱即用:SpringBoot项目只需要引入少量的jar包及配置,即可拥有其功能.
    spring-boot-starter 拥有开箱即用的能力.
    maven项目中依赖具有传递性.
        A 依赖  B  依赖 C项目   导入A bc会自动依赖
-->
<dependencies>
	<!--直接依赖web springMVC配置-->
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<!--springBoot-start SpringBoot启动项  -->
		<artifactId>spring-boot-starter-web</artifactId>
	</dependency>

	<!--SpringBoot重构了测试方式 可以在测试类中 直接引入依赖对象-->
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-test</artifactId>
		<scope>test</scope>
		<exclusions>
			<exclusion>
				<groupId>org.junit.vintage</groupId>
				<artifactId>junit-vintage-engine</artifactId>
			</exclusion>
		</exclusions>
	</dependency>

	<!--支持热部署 -->
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-devtools</artifactId>
	</dependency>

	<!--引入插件lombok 自动的set/get/构造方法插件  -->
	<dependency>
		<groupId>org.projectlombok</groupId>
		<artifactId>lombok</artifactId>
	</dependency>

	<!--引入数据库驱动 -->
	<dependency>
		<groupId>mysql</groupId>
		<artifactId>mysql-connector-java</artifactId>
		<scope>runtime</scope>
	</dependency>

	<!--springBoot数据库连接  -->
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-jdbc</artifactId>
	</dependency>

	<!--spring整合mybatis-plus 只导入MP包,删除mybatis包 -->
	<dependency>
		<groupId>com.baomidou</groupId>
		<artifactId>mybatis-plus-boot-starter</artifactId>
		<version>3.2.0</version>
	</dependency>

	<!--springBoot整合JSP添加依赖  -->
	<!--servlet依赖 -->
	<dependency>
		<groupId>javax.servlet</groupId>
		<artifactId>javax.servlet-api</artifactId>
	</dependency>

	<!--jstl依赖 -->
	<dependency>
		<groupId>javax.servlet</groupId>
		<artifactId>jstl</artifactId>
	</dependency>

	<!--使jsp页面生效 -->
	<dependency>
		<groupId>org.apache.tomcat.embed</groupId>
		<artifactId>tomcat-embed-jasper</artifactId>
	</dependency>

</dependencies>

<!--在项目打包部署时生效,如果不添加build,则程序发布时不然会报
    项目中没有main方法.
-->
<build>
	<plugins>
		<plugin>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-maven-plugin</artifactId>
		</plugin>
	</plugins>
</build>
## 1.2 SpringBoot整合web ### 1.2.1 编辑YML配置文件 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200829180343422.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzQ3NjY5MA==,size_16,color_FFFFFF,t_70#pic_center) ## 1.3 关于IDEA页面资源加载404问题 说明:由于**IDEA**加载动态web资源时,默认的运行环境可能配置有误,则导致页面资源无法加载 ![在这里插入图片描述](https://img-blog.csdnimg.cn/2020082918092967.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzQ3NjY5MA==,size_16,color_FFFFFF,t_70#pic_center) **解决方案** 1)选择编辑按钮 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200829181031527.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzQ3NjY5MA==,size_16,color_FFFFFF,t_70#pic_center) 2)配置项目路径 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200829181119724.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzQ3NjY5MA==,size_16,color_FFFFFF,t_70#pic_center) ## 注意:HTML页面迭代可以使用ES6写法;JSP页面用普通JS语言的迭代写法,若用ES6写法可能导致导致取不到数据。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200829181843446.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzQ3NjY5MA==,size_16,color_FFFFFF,t_70#pic_center) ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200829181926795.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzQ3NjY5MA==,size_16,color_FFFFFF,t_70#pic_center)

2、分布式思想

2.1、概念

将大型项目按照特定的规则进行拆分,减少项目架构的耦合性

好处:如果作为大型项目,将所有的功能模块都写到一起(单体项目),如果将来其中一个模块出现问题,则直接影响整个项目的运行。

2.2、拆分方式

2.2.1、按功能模块拆分

在这里插入图片描述

2.2.1、按照层级拆分

在这里插入图片描述

2.3、分布式应用中的问题说明

由于引入了分布式思想,但是同时带来了一些问题,如何解决?

2.3.1、分布式系统中jar包如何管理?

2.3.2、分布式系统中工具API等如何管理?

在这里插入图片描述
依赖在springboot项目中的体现
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值