Spring Boot 整合 Mybatis 的完整 Web 案例
Java_老男孩关注0人评论563人阅读2019-05-31 14:30:39
一、运行 springboot-mybatis 工程
git clone 下载工程 springboot-learning-example ,项目地址见 GitHub。下面开始运行工程步骤(Quick Start):
CREATE DATABASE springbootdb;
b.创建表 city :(因为我喜欢徒步)
DROP TABLE IF EXISTS city
;
CREATE TABLE city
(
id
int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT ‘城市编号’,
province_id
int(10) unsigned NOT NULL COMMENT ‘省份编号’,
city_name
varchar(25) DEFAULT NULL COMMENT ‘城市名称’,
description
varchar(25) DEFAULT NULL COMMENT ‘描述’,
PRIMARY KEY (id
)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
c.插入数据
INSERT city VALUES (1 ,1,‘温岭市’,‘BYSocket 的家在温岭。’);
2. 项目结构介绍
项目结构如下所示:
org.spring.springboot.controller - Controller 层
org.spring.springboot.dao - 数据操作层 DAO
org.spring.springboot.domain - 实体类
org.spring.springboot.service - 业务逻辑层
Application - 应用启动类
application.properties - 应用配置文件,应用启动会自动读取配置
3. 改数据库配置
打开 application.properties 文件, 修改相应的数据源配置,比如数据源地址、账号、密码等。(如果不是用 MySQL,自行添加连接驱动 pom,然后修改驱动名配置。)
mvn clean install
5. 运行工程
右键运行 Application 应用启动类的 main 函数,然后在浏览器访问:
http://localhost:8080/api/city?cityName=温岭市
可以看到返回的 JSON 结果:
{
“id”: 1,
“provinceId”: 1,
“cityName”: “温岭市”,
“description”: “我的家在温岭。”
}
二、springboot-mybatis 工程配置详解
1.pom 添加 Mybatis 依赖
4.0.0
springboot
springboot-mybatis
0.0.1-SNAPSHOT
springboot-mybatis :: 整合 Mybatis Demo
org.springframework.boot
spring-boot-starter-parent
1.5.1.RELEASE
1.2.0
5.1.39
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-test
test
org.mybatis.spring.boot
mybatis-spring-boot-starter
${mybatis-spring-boot}
mysql
mysql-connector-java
${mysql-connector}
junit
junit
4.12
2.在 application.properties 应用配置文件,增加 Mybatis 相关配置 # Mybatis 配置 mybatis.typeAliasesPackage=org.spring.springboot.domain mybatis.mapperLocations=classpath:mapper/*.xml mybatis.typeAliasesPackage 配置为 org.spring.springboot.domain,指向实体类包路径。mybatis.mapperLocations 配置为 classpath 路径下 mapper 包下,* 代表会扫描所有 xml 文件。
mybatis 其他配置相关详解如下:
mybatis.config = mybatis 配置文件名称
mybatis.mapperLocations = mapper xml 文件地址
mybatis.typeAliasesPackage = 实体类包路径
mybatis.typeHandlersPackage = type handlers 处理器包路径
mybatis.check-config-location = 检查 mybatis 配置是否存在,一般命名为 mybatis-config.xml
mybatis.executorType = 执行模式。默认是 SIMPLE
3.在 Application 应用启动类添加注解 MapperScan
Application.java 代码如下:
/**
Spring Boot 应用启动类
Created by bysocket on 16/4/26.
*/
// Spring Boot 应用的标识
@SpringBootApplication
// mapper 接口类扫描包配置
@MapperScan(“org.spring.springboot.dao”)
public class Application {
public static void main(String[] args) {
// 程序启动入口
// 启动嵌入式的 Tomcat 并初始化 Spring 环境及其各 Spring 组件
SpringApplication.run(Application.class,args);
}
}
mapper 接口类扫描包配置注解 MapperScan :用这个注解可以注册 Mybatis mapper 接口类。
4.添加相应的 City domain类、CityDao mapper接口类
City.java:
/**
城市实体类
Created by bysocket on 07/02/2017.
*/
public class City {
/**
/**
/**
/**
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Long getProvinceId() {
return provinceId;
}
public void setProvinceId(Long provinceId) {
this.provinceId = provinceId;
}
public String getCityName() {
return cityName;
}
public void setCityName(String cityName) {
this.cityName = cityName;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
}
CityDao.java:
/**
城市 DAO 接口类
Created by bysocket on 07/02/2017.
*/
public interface CityDao {
/**
需要更详细架构师技能思维导图和以下资料的可以加一下技术交流分享群:“708 701 457”免费获取
Spring Boot 整合 Mybatis 的完整 Web 案例
Spring Boot 整合 Mybatis 的完整 Web 案例
Spring Boot 整合 Mybatis 的完整 Web 案例
Spring Boot 整合 Mybatis 的完整 Web 案例