1. Thymeleaf语法详解-字符串操作
(1) th:text的作用是什么?
在页面中输出值
(2) th:value的作用是什么?
可以将一个值放入input标签的value中
(3) 什么是Thymeleaf的内置对象?
模板引擎提供一组功能性内置对象,可以在模板中直接使用这些对象的功能方法
(4) 内置对象的语法是什么?
调用内置对象一定要用#
大部分的内置对象都以 s 结尾 strings、numbers、dates
2. Thymeleaf语法详解-日期转换操作
(1) 在Thymeleaf中使用哪个内置对象转换日期?
#dates
(2) 常见的处理日期函数有哪些?
format:转换时间输出格式
year:获取年
month:获取月
day:获取日
3. Thymeleaf语法详解-条件判断
(1) th:if的作用是什么?
用作条件判断
(2) th:switch的作用是什么?
用作等值条件判断
4. Thymeleaf语法详解-迭代遍历
(1) th:each的作用是什么?
用作循环,迭代遍历集合
(2) th:each中可以获取哪些状态变量?
1,index:当前迭代器的索引 从 0 开始
2,count:当前迭代对象的计数 从 1 开始
3,size:被迭代对象的长度
4,even/odd:布尔值,当前循环是否是偶数/奇数 从 0 开始
5,first:布尔值,当前循环的是否是第一条,如果是返回 true 否则返回 false
6,last:布尔值,当前循环的是否是最后一条,如果是则返回 true 否则返回 false
5. Thymeleaf语法详解-获取作用域对象中的数据
(1) 在Thymeleaf中如何获取HttpServletRequest对象中的值?
${#httpServletRequest.getAttribute(“key”)}
(2) 在Thymeleaf中如何获取HttpSession中的值?
${session.key}
(3) 在Thymeleaf中如何获取ServletContext中的值?
${application.key}
6. Thymeleaf语法详解-URL表达式
(1) URL表达式的语法是什么?
@{}
(2) 在URL表达式中可以给定几种URL格式?
th:href
th:src
(3) 如何在URL表达式中传递参数?
有两种方式,一种为@{/url(参数1=值1,参数2=值2…)}
第二种方式:@{/url/{参数1}/{参数2}/…}
(4) 如何在URL表达式中通过RESTful风格传递参数?
@{/url/{参数1}/{参数2}/…}
7. Spring Boot整合MyBatis-创建项目
(1) Spring MVC+Spring Boot+MyBatis整合需要添加哪些坐标?
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.9.RELEASE</version>
</parent>
<dependencies>
<!-- springBoot的启动器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- thymeleaf -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<!-- thymeleaf热部署 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
<scope>true</scope>
</dependency>
<!-- Mybatis 启动器 -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency>
<!-- mysql 数据库驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!-- druid 数据库连接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.10</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-autoconfigure</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>5.1.10.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot</artifactId>
</dependency>
<!--JDBC-->
<!--<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>-->
</dependencies>
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
</build>
(2) Spring Boot整合MyBatis时如何在全局配置文件中配置数据源?
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/ssm?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=root
(3) Spring Boot整合MyBatis时如何在全局配置文件中配置数据库连接池?
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
(4) Spring Boot整合MyBatis时如何在全局配置文件中配置MyBatis的包别名?
mybatis.type-aliases-package=an.cxy.pojo
8. SpringBoot整合MyBatis完成添加用户
(1) @MapperScan(" ")注解的作用是什么?
用来扫描mybatis中的mapper文件
9. SpringBoot整合MyBatis完成用户查询
(1) 在项目中编写一个查询所有用户的案例。
UserMapper.xml:
<select id="findAll" resultType="users">
select * from users
</select>
UserMapper接口:
List<Users> findAll();
UserService接口:
List<Users> findAll();
UserService实现类:
@Override
public List<Users> findAll() {
return userMapper.findAll();
}
UserController:
@RequestMapping("/findAll")
public String findAll(Model model){
List<Users> list = userService.findAll();
model.addAttribute("list",list);
return "find";
}
10. SpringBoot整合MyBatis完成用户修改-数据回显
(1) 在项目中编写一个预更新查询用户的案例。
UserMapper.xml:
<select id="findOne" resultType="users" parameterType="int">
select * from users where userid=#{0}
</select>
UserMapper接口:
Users findOne(int userid);
UserService接口:
Users findOne(int userid);
UserService实现类:
@Override
public Users findOne(int userid) {
return userMapper.findOne(userid);
}
UserController:
@RequestMapping("/findOne")
public String findOne(int userid,Model model){
Users user = userService.findOne(userid);
model.addAttribute("user",user);
return "edit";
}
11. SpringBoot整合MyBatis完成用户修改-更新用户
(1) 在项目中编写一个更新用户的案例。
UserMapper.xml:
<update id="editUser" parameterType="users">
update users set username=#{username},userage=#{userage} where userid=#{userid}
</update>
UserMapper接口:
int editUser(Users users);
UserService接口:
void editUser(Users users);
UserService实现类:
@Override
public void editUser(Users users) {
userMapper.editUser(users);
}
UserController:
@RequestMapping("/editUser")
public String editUser(Users users){
userService.editUser(users);
return "redirect:/user/findAll";
}
12. SpringBoot整合MyBatis完成用户删除
(1) 在项目中编写一个删除用户的案例。
UserMapper.xml:
<delete id="deleteUser" parameterType="int">
delete from users where userid=#{0}
</delete>
UserMapper接口:
int deleteUser(int userid);
UserService接口:
void deleteUser(int userid);
UserService实现类:
@Override
public void deleteUser(int userid) {
userMapper.deleteUser(userid);
}
UserController:
@RequestMapping("/deleteUser")
public String deleteUser(int userid){
userService.deleteUser(userid);
return "redirect:/user/findAll";
}