网站首页 > 编程文章 正文
SpringBoot-4-Web开发
在这里我们不过多进行SpringBoot源码分析,主要通过实例进行讲解。
创建SpringBoot项目,代码如下:
@Controller
public class TestController {
@GetMapping("/")
@ResponseBody
public String testIndex(){
return "test index";
}
}
启动项目后结果如下:
可以看出结果没有一点修饰,就只是浏览器将结果进行了打印。
1.SpringBoot静态文件配置
但是我们现在是Web开发,既然是WEB开发就需要有静态资源:HTML、CSS、JS、图像、视频、PDF/Office等不需要服务器端处理的文件等这些不需要服务器进行处理的文件。那么这些文件放在哪里呢?
1.1 存放静态文件的位置
查看SpringBoot源码,我们发现可以存放静态资源的位置如下:
"classpath:/META-INF/resources/"
"classpath:/resources/"
"classpath:/static/"
"classpath:/public/"
“/” 自定义静态资源目录
1.1.1并且他们存在优先级顺序
/META-INF/resources>resources>static>public
我们按照上面的文件夹分别在文件夹中放入1.jgp,但是图片内容为文件夹名称的图片
然后运行http://localhost:8080/1.jpg查看结果为
其他优先级的结果,可以按照这个实验的结果进行操作完成,看看是不是我说的优先级的顺序。
1.2自定义资源配置
如果我们不想使用上面的静态资源文件夹,想自己创建静态资源文件夹进行放置静态资源可以?答案是可以的。
1.2.1 配置文件配置
我们在application.yml中进行配置
spring:
web:
resources:
static-locations: classpath:/testresources/
我们猜想一下现在的结果会是什么?
http://localhost:8080/1.jpg查看结果为:
配置了自定义文件夹以后,原有的静态资源文件夹就失效了,想要继续使用,可以把原文件夹也写入该配置中
注:在你刚修改过重新启动后,可能结果还是上次运行的结果,这是因为缓存导致的结果,你需要进行一下缓存清除(最简单的办法就是使用另一个浏览器进行访问就可以了)
1.2.2 代码配置
@Configuration
public class MyWebConfig implements WebMvcConfigurer {
/**
* addResourceHandler 这个方法是配置资源请求路径
* addResourceLocations 这个方法是配置自定义静态资源存储位置,里边用到了file:,
* 是因为资源放置位置不在classpath下边,是自定义的,也可以写为classpath:
*/
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/**").addResourceLocations("classpath:/resources/");
}
}
运行http://localhost:8080/1.jpg的结果为:
1.2.3 logo图标的修改
只需要将ico图标放置在静态文件夹下即可,如:(记得该图标的命名是 favicon.ico)可以在阿里巴巴矢量图标库寻找合适的图标地址:https://www.iconfont.cn/
运行http://localhost:8080/结果为:
1.3 WebJars的使用
WebJars能够提供是SpringBoot web开发的需要的一些库,例如jQuery、Bootstrap等等。
WENJARS包管理地址
1.3.1 添加JS和CSS库
在pom.xml添加依赖
<dependency>
<groupId>org.webjars.npm</groupId>
<artifactId>bootstrap</artifactId>
<version>5.1.3</version>
</dependency>
<dependency>
<groupId>org.webjars.npm</groupId>
<artifactId>jquery</artifactId>
<version>3.6.0</version>
</dependency>
在application.yml添加配置设置编码为UTF-8格式
spring:
http:
encoding:
charset: utf-8
force: true
enabled: true
在静态文件夹中添加test.html
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="/webjars/jquery/3.6.0/dist/jquery.min.js"></script>
<script src="/webjars/bootstrap/5.1.3/dist/js/bootstrap.min.js"></script>
<title>test</title>
<link rel="stylesheet" href="/webjars/bootstrap/5.1.3/scss/bootstrap.scss" />
</head>
<body>
<div class="container"><br/>
<div class="alert alert-success">
<a href="#" class="close" data-dismiss="alert" aria-label="close">哈哈哈</a>
Hello, <strong>WebJars!</strong>
</div>
</div>
</body>
</html>
http://localhost:8080/test.html 查看结果就行了
猜你喜欢
- 2024-10-15 如何使用Bootstrap框架进行网站开发
- 2024-10-15 是时候学习Web开发了,1小时用Python开发一个博客系统
- 2024-10-15 Bootstrap4如何动态切换主题(bootstrap主题怎么用)
- 2024-10-15 网站技术干货之Bootstrap框架实现通用版网站后台管理界面
- 2024-10-15 Bootstrap-table 使用总结(bootstraptable refreshoptions)
- 2024-10-15 网站技术干货之bootstrap框架实现网站后台管理界面
- 2024-10-15 网站前端技术干货之bootstrap环境制作手风琴效果
- 2024-10-15 Bootstrap框架入门(bootstrap框架教程)
- 2024-10-15 第24章 Django开发有便捷,模板升级改造
- 2024-10-15 Vue.js入门篇(vue.js教程)
你 发表评论:
欢迎- 05-09Spring Boot3 RESTful 接口参数校验,这篇吃透就够了!
- 05-09《Spring6》第02节:基于XML方式搭建Spring6框架开发环境
- 05-09MapStruct架构设计(mapstruct @mapping)
- 05-09分布式微服务架构组件(分布式微服务架构设计)
- 05-09Java Swing组件下的JButton实例(java swing 组件)
- 05-09java基础都在这了,小主们拿去吧(java基础是指什么)
- 05-09AOP的实现落地(拦截过滤),一切都要从Servlet说起
- 05-09【Spring Boot】WebSocket 的 6 种集成方式
- 最近发表
-
- Spring Boot3 RESTful 接口参数校验,这篇吃透就够了!
- 《Spring6》第02节:基于XML方式搭建Spring6框架开发环境
- MapStruct架构设计(mapstruct @mapping)
- 分布式微服务架构组件(分布式微服务架构设计)
- Java Swing组件下的JButton实例(java swing 组件)
- java基础都在这了,小主们拿去吧(java基础是指什么)
- AOP的实现落地(拦截过滤),一切都要从Servlet说起
- 【Spring Boot】WebSocket 的 6 种集成方式
- Java 中五种最常见加密算法:原理、应用与代码实现
- 用注解进行参数校验,spring validation介绍、使用、实现原理分析
- 标签列表
-
- spire.doc (59)
- system.data.oracleclient (61)
- 按键小精灵源码提取 (66)
- pyqt5designer教程 (65)
- 联想刷bios工具 (66)
- c#源码 (64)
- graphics.h头文件 (62)
- mysqldump下载 (66)
- sqljdbc4.jar下载 (56)
- libmp3lame (60)
- maven3.3.9 (63)
- 二调符号库 (57)
- 苹果ios字体下载 (56)
- git.exe下载 (68)
- diskgenius_winpe (72)
- pythoncrc16 (57)
- solidworks宏文件下载 (59)
- qt帮助文档中文版 (73)
- satacontroller (66)
- hgcad (64)
- bootimg.exe (69)
- android-gif-drawable (62)
- axure9元件库免费下载 (57)
- libmysqlclient.so.18 (58)
- springbootdemo (64)
本文暂时没有评论,来添加一个吧(●'◡'●)