1.创建springboot项目

  (1)选择Spring Initializr

    

  (2)填写自己的Group 与 Artifact

    

  (3)选择依赖框架

    

  等待maven下载好依赖和插件即可

2.主配置文件(这里使用的是更为简洁的ylm文件)

 application.yml

  主要配置了数据源和mapper路径与实体类别名

spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
username: root
password: 330069879
mybatis:
mapper-locations: classpath:/mapper/*.xml
type-aliases-package: com.datatest.signup.entity

3.实体类与表的映射关系

 Person.java

package com.datatest.signup.entity;

public class Person {
private String id;
private String name;
private int age;
private int sex; public void setId(String id) {
this.id = id;
} public void setName(String name) {
this.name = name;
} public void setAge(int age) {
this.age = age;
} public void setSex(int sex) {
this.sex = sex;
} @Override
public String toString() {
return "Person{" +
"id='" + id + '\'' +
", name='" + name + '\'' +
", age=" + age +
", sex=" + sex +
'}';
}
}

  数据库表person

  

4.mapper.xml  与    PersonMapper

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.datatest.signup.mapper.PersonMapper">
<select id="queryPersonById" resultType="Person" parameterType="String">
select * from person where id=#{id}
</select>
</mapper>

 PersonMapper.java

package com.datatest.signup.mapper;

import com.datatest.signup.entity.Person;
import org.springframework.stereotype.Repository; @Repository
public interface PersonMapper {
Person queryPersonById(String id);
}

5.Service层

PersonService.java
package com.datatest.signup.service;

import com.datatest.signup.entity.Person;

public interface PersonService {
public Person queryPersonById(String id);
}
package com.datatest.signup.service.impl;

import com.datatest.signup.entity.Person;
import com.datatest.signup.mapper.PersonMapper;
import com.datatest.signup.service.PersonService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; @Service
public class PersonServiceImpl implements PersonService {
@Autowired
private PersonMapper personMapper; @Override
public Person queryPersonById(String id) {
return personMapper.queryPersonById(id);
}
}

6.controller层

package com.datatest.signup.controller;

import com.datatest.signup.entity.Person;
import com.datatest.signup.service.PersonService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping; import java.util.Map; @Controller
public class StudentController { @Autowired
private PersonService personService; @RequestMapping("query/{id}")
public String queryPersonById(@PathVariable String id, Map<String,Object> map){
Person person = personService.queryPersonById(id);
System.out.println(person);
map.put("person",person);
return "result";
}
}

7.前段页面

index.html

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>sprint boot</title>
</head>
<body>
<a href="query/P01">查询一个人</a>
</body>
</html>

result.html

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>result</title>
</head>
<body>
<p th:text="${person}">没有查询到该人</p>
</body>
</html>

8.主程序文件

package com.datatest.signup;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; @MapperScan("com.datatest.signup.mapper")
@SpringBootApplication
public class SignupApplication { public static void main(String[] args) {
SpringApplication.run(SignupApplication.class, args);
} }

9.测试效果

  

  

springboot整合mybatis与thymeleaf的更多相关文章

  1. JavaEE开发之SpringBoot整合MyBatis以及Thymeleaf模板引擎

    上篇博客我们聊了<JavaEE开发之SpringBoot工程的创建.运行与配置>,从上篇博客的内容我们不难看出SpringBoot的便捷.本篇博客我们继续在上篇博客的基础上来看一下Spri ...

  2. SpringBoot整合MyBatis及Thymeleaf

    http://www.cnblogs.com/ludashi/archive/2017/05/08/6669133.html 上篇博客我们聊了<JavaEE开发之SpringBoot工程的创建. ...

  3. SpringBoot整合Jsp和Thymeleaf (附工程)

    前言 本篇文章主要讲述SpringBoot整合Jsp以及SpringBoot整合Thymeleaf,实现一个简单的用户增删改查示例工程.事先说明,有三个项目,两个是单独整合的,一个是将它们整合在一起的 ...

  4. springBoot整合mybatis、jsp 或 HTML

    springBoot整合mybatis.jsp Spring Boot的主要优点: 1:  为所有Spring开发者更快的入门: 2:  开箱即用,提供各种默认配置来简化项目配置: 3:  内嵌式容器 ...

  5. SpringBoot整合Mybatis完整详细版二:注册、登录、拦截器配置

    接着上个章节来,上章节搭建好框架,并且测试也在页面取到数据.接下来实现web端,实现前后端交互,在前台进行注册登录以及后端拦截器配置.实现简单的未登录拦截跳转到登录页面 上一节传送门:SpringBo ...

  6. SpringBoot整合Mybatis完整详细版

    记得刚接触SpringBoot时,大吃一惊,世界上居然还有这么省事的框架,立马感叹:SpringBoot是世界上最好的框架.哈哈! 当初跟着教程练习搭建了一个框架,传送门:spring boot + ...

  7. SpringBoot整合mybatis、shiro、redis实现基于数据库的细粒度动态权限管理系统实例

    1.前言 本文主要介绍使用SpringBoot与shiro实现基于数据库的细粒度动态权限管理系统实例. 使用技术:SpringBoot.mybatis.shiro.thymeleaf.pagehelp ...

  8. springboot整合mybatis(SSM开发环境搭建)

    0.项目结构: ---------------------方法一:使用mybatis官方提供的Spring Boot整合包实现--------------------- 1.application.p ...

  9. 三、SpringBoot 整合mybatis 多数据源以及分库分表

    前言 说实话,这章本来不打算讲的,因为配置多数据源的网上有很多类似的教程.但是最近因为项目要用到分库分表,所以让我研究一下看怎么实现.我想着上一篇博客讲了多环境的配置,不同的环境调用不同的数据库,那接 ...

随机推荐

  1. netcore webCache缓存

    NetCoreCacheService.dll public IActionResult Index() { //存入字符串 MemoryCacheService.SetChacheValue(&qu ...

  2. spark on yarn container分配极端倾斜

    环境:CDH5.13.3  spark2.3 在提交任务之后,发现executor运行少量几台nodemanager,而其他nodemanager没有executor分配. 测试环境通过spark-s ...

  3. js 中 一些重要的数组方法

    今天在学Vue的时候,看到了好多JS的数组方法,但是我不知道,我以为是Vue的方法,结果找了半天资料也没找出来,最后才发现这是JS的数组对象方法,于是就想做一下笔记,加深一下印象. Array 对象方 ...

  4. PE文件中找导出表

    导出表: typedef struct _IMAGE_EXPORT_DIRECTORY { DWORD Characteristics; // 未使用,总为0 DWORD TimeDateStamp; ...

  5. Program-Language

    1. 主流编程语言 2. 编程语言分类     2.1 编译or解释     2.2 按照客观系统的描述可分为两类     2.3 按照编程范型可分为 3. 语言范式 Paradigm 4. 计算机语 ...

  6. 033、Java中使用简化运算符

    01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...

  7. 002、创建第一个Java程序HelloWord

    代码如下: package TIANPAN; public class TestDemo { public static void main(String args[]) { System.out.p ...

  8. 安卓fragment transaction add方法报错

    这个问题百度了很多能用的很少! 原来看的B站的视频教程比较老了参数不匹配!我记一下安卓studio3.1的方法 切换fragment 前都先要 FragmentManager manager=getS ...

  9. DevOps - 与敏捷方法区别

    章节 DevOps – 为什么 DevOps – 与传统方式区别 DevOps – 优势 DevOps – 不适用 DevOps – 生命周期 DevOps – 与敏捷方法区别 DevOps – 实施 ...

  10. unity基础开发----Unity获取PC,Ios系统的mac地址等信息

    在软件开发中可以会用到mac地址作为,设备的唯一标示,我们也可以通过unity获取,经测试pc,ios都可以但是安卓没有获取到. 代码如下: using UnityEngine; using Syst ...