springboot+mybatis+Thymeleaf整合
1.新建一个springboot项目 需要选择上面的模块(也可以自己添加相关依赖).
2.新建目录结构 3.编写代码 properties文件(有些自带的不用写,缺啥写啥)
# 应用名称 spring.application.name=demo # 应用服务 WEB 访问端口 server.port=8080 #数据库配置 spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://localhost:3306/testaaa spring.datasource.username=root spring.datasource.password=123456 #下面这些内容是为了让MyBatis映射 #指定Mybatis的Mapper文件 mybatis.mapper-locations=classpath*:mapper/*.xml #指定Mybatis的实体目录 mybatis.type-aliases-package=com.example.demo.mybatis.entity # THYMELEAF (ThymeleafAutoConfiguration) # 开启模板缓存(默认值: true ) spring.thymeleaf.cache=true # 检查模板是否存在,然后再呈现 spring.thymeleaf.check-template=true # 检查模板位置是否正确(默认值 :true ) spring.thymeleaf.check-template-location=true #Content-Type 的值(默认值: text/html ) spring.thymeleaf.content-type=text/html # 开启 MVC Thymeleaf 视图解析(默认值: true ) spring.thymeleaf.enabled=true # 模板编码 spring.thymeleaf.encoding=UTF-8 # 要被排除在解析之外的视图名称列表,⽤逗号分隔 spring.thymeleaf.excluded-view-names= # 要运⽤于模板之上的模板模式。另⻅ StandardTemplate-ModeHandlers( 默认值: HTML5) spring.thymeleaf.mode=HTML5 # 在构建 URL 时添加到视图名称前的前缀(默认值: classpath:/templates/ ) spring.thymeleaf.prefix=classpath:/templates/ # 在构建 URL 时添加到视图名称后的后缀(默认值: .html ) spring.thymeleaf.suffix=.html
show.html
<!DOCTYPE html> <html xmlns:th="http://www.themeleaf.org"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <table border="1px"> <tr> <th >编号</th> <th>姓名</th> <th>年龄</th> <th>地址</th> <th>性别</th> </tr> <tr th:each="s:${user}"> <td th:text="${s.id}"></td> <td th:text="${s.name}"></td> <td th:text="${s.age}"></td> <td th:text="${s.address}"></td> <td th:text="${s.sex}"></td> </tr> </table> </body> </html>
thymeleaf接口
package com.example.demo.controller; import com.example.demo.mapper.UserMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; /** * @program:bootMybatisThemleaf * @description: * @author:ww * @create:2021-09-09 17:18 */ @Controller public class ThymeleafController { @Autowired private UserMapper userMapper; @RequestMapping("/display") public String display(Model model) { model.addAttribute("user",userMapper.select()); return "show"; } }
测试接口(可以不写)
package com.example.demo.controller; import com.example.demo.entity.User; import com.example.demo.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; /** * @program:bootMybatisThemleaf * @description: * @author:ww * @create:2021-09-09 15:52 */ @RestController public class UserController { @Autowired UserService userService; @RequestMapping("showuser.do") public List<User> show(){ return userService.selectSer(); } }
user类
package com.example.demo.entity; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import org.springframework.context.annotation.Bean; /** * @program:bootMybatisThemleaf * @description:实体类 * @author:ww * @create:2021-09-09 15:50 */ @Data @NoArgsConstructor @AllArgsConstructor public class User { private Integer id; private String name; private Integer age; private String address; private String sex; }
mapper类
package com.example.demo.mapper; import com.example.demo.entity.User; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Select; import org.springframework.stereotype.Repository; import java.util.List; @Repository public interface UserMapper { @Select("select * from user") public List<User> select(); }
service
package com.example.demo.service; import com.example.demo.entity.User; import org.springframework.stereotype.Service; import java.util.List; /** * @program:bootMybatisThemleaf * @description: * @author:ww * @create:2021-09-09 15:52 */ public interface UserService { public List<User> selectSer(); }
serviceimpl
package com.example.demo.service; import com.example.demo.entity.User; import com.example.demo.mapper.UserMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; /** * @program:bootMybatisThemleaf * @description: * @author:ww * @create:2021-09-09 15:58 */ @Service public class UserServiceImpl implements UserService { @Autowired UserMapper userMapper; @Override public List<User> selectSer() { return userMapper.select(); } }
数据库 此代码做了整合,功能只写了数据展示,另外一个页面没有写,可以自己添加功能.
完结撒花~
上一篇:
多线程四大经典案例