springboot
springboot的Html页面
1.想要显示css和js必须加
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<base th:href="${#request.getContextPath()}+'/'">
2.thymeleaf语法
(1)超链接 使用th:href标签,内容格式是@{…} 如:
<a th:href=”@{http://localhost:8080/list(uid=${user.id})}”>测试</a>
<!--注意:这里list(uid=${user.id})会被替换为list?uid=8类似的格式-->
<a th:href="@{'/hotel/hotelinfo?id='+${packages.tbHotelHotelId}}">测试</a>
<!--这种传值也可以-->
(2)循环 th:each=”变量:${集合对象}”
<table> <tr th:each="emp : ${empList}"> <td th:text="${emp.id}">1</td> <td th:text="${emp.name}">张三</td> <td th:text="${emp.age}">18</td> </tr> </table>
(3)条件 th:if和th:unless,th:if是条件成立是显示标签,th:unless则相反 下面标签的效果相同,都是当user为空时显示Login超链接
<a th:href=”@{/login}” th:if=”${user==null}”>Login</a>
<a th:href=”@{/login}” th:unless=”${user!=null}”>Login</a>
(4)switch
<div th:switch="${user.role}">
<p th:case="'admin'">User is an administrator</p>
<p th:case="'manager'">User is a manager</p>
<p th:case="*">User is some other thing</p>
</div>
3.请求转发与重定向的区别
(1)语法
return "forward:url"; //请求转发
return "redirect:url"; //重定向
(2)区别
a.重定向两次请求,转发一次请求
b.重定向地址栏的地址变化,转发地址不变
c.重新定向可以访问外部网站 转发只能访问内部资源
d.转发的性能要优于重定向
4.springboot配置文件
#配置端口号
server.port=8081
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/jiudiansql?serverTimezone=GMT&useUnicode=true&characterEncoding=UTF-8
spring.datasource.username=root
spring.datasource.password=root
# 配置MyBatis
mybatis-plus.type-aliases-package=com.xiaoxu.demo.entity
mybatis-plus.mapper-locations=classpath:mapper/*Mapper.xml
5.上传文件出现的安全性错误
//新增加一个类用来添加虚拟路径映射
@Configuration
public class MyPicConfig implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/user/**").addResourceLocations("file:/home/shop/src/main/resources/static/user/");
}
}
//addResourceHandler()里配置需要映射的文件夹,此处代表映射文件夹img下的所有资源。
//addResourceLocations()配置文件夹在系统中的路径,使用绝对路径,格式为“file:你的路径”
6.在前端pagelimit.pageCount与${pagelimit.pageCount}的区别是啥
如果是thymeleaf模板,数据绑定就必须加${},这是将动态数据绑定的固定格式,不加就绑定不了,
${里面可以实现pagelimit.pageCount的基本算法},如${pagelimit.pageCount+1}
实际就是pagelimit.pageCount可以任意加值,但是必须要在${}中显示出来
7.springboot整合jsp和html
pom.xml
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<!-- 注意这里一定要换成1.4.2版本,不然上传到服务器报错-->
<version>1.4.2.RELEASE</version><!--$NO-MVN-MAN-VER$-->
</plugin>
</plugins>
<resources>
<!-- 打包时将jsp文件拷贝到META-INF目录下-->
<resource>
<!-- 指定resources插件处理哪个目录下的资源文件 -->
<directory>src/main/webapp</directory>
<!--注意此次必须要放在此目录下才能被访问到-->
<targetPath>META-INF/resources</targetPath>
<includes>
<include>**/**</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/**</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
</build>
https://www.nowcoder.com/tutorial/94/ae05554a3ad84e42b6f9fc4d52859dc4