文档章节

spring boot(五) 整合mybatis

jason_kiss
 jason_kiss
发布于 03/08 14:17
字数 558
阅读 18
收藏 2

此次整合版本jdk为1.7+maven3.5+mysql5.7   

整合spring boot有几个重点:

第一个:pom文件引入jar:

 <!-- mybatis -->
	     <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.1</version>
        </dependency>

        <!-- mysql 驱动 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>

第二个:启动项增加扫描 dao接口参数 @MapperScan(basePackages = {"com.siyuan.app.h5.dao"})  //扫描mybatis dao 接口

第三个:在spring boot配置文件中 添加扫描 mapper.xml文件

上面就是整合mybatis需要注意的地方:下面开始整个mybatis

pom.xml引入jar

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.4.7.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.7</java.version>
    </properties>

    <dependencies>
    
    	<!-- spring boot web -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        
       <!-- 热部署 --> 
         <dependency>
	        <groupId>org.springframework.boot</groupId>
	        <artifactId>spring-boot-devtools</artifactId>
	        <optional>true</optional>
	    </dependency>
	    
	    <!-- mybatis -->
	     <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.1</version>
        </dependency>

        <!-- mysql 驱动 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        
	    
    </dependencies>
  
    
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

第二步:创建启动类

@SpringBootApplication //spring boot启动
@EnableScheduling      //定时任务
@MapperScan(basePackages = {"com.siyuan.app.h5.dao"})  //扫描mybatis dao 接口
public class StartApp {
	public static void main(String[] args) {
		SpringApplication.run(StartApp.class, args);
	}
}

第三步:创建相对应的 目录接口代码

三、源代码如下:

controller:

@RestController
@RequestMapping("app/")
public class DemoController {
	
	@Autowired
	private UserService userService;
	
	@RequestMapping("test")
	@ResponseBody
	 public List<String> inde(){
		List<String> list = new ArrayList<String>();
		
		List<UserModel> userList = userService.getUesrs();
		for (UserModel user : userList) {
			list.add(user.getName());
		}
		return list; 
	 }
}

Service:

public interface UserService {
	
	public List<UserModel> getUesrs();
}

Service的实现类:

@Service("userService")
public class UserServiceHand implements UserService{
	
	@Autowired
	private User userdao;
	
	@Override
	public List<UserModel> getUesrs() {
		return userdao.getUserList();
	}

}

model类:

public class UserModel {
	
	private String name;
	
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
	
}

dao层接口:

public interface User {
	
	public List<UserModel> getUserList();

}

mapp文件位置:

xml文件内容:

<?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.siyuan.app.h5.dao.User">

    <select id="getUserList"  resultType="com.siyuan.app.h5.model.UserModel">
        select mb_login as name from ehy_member
    </select>
     
</mapper>

spring boot配置文件设置:

#端口设置
server:
  port: 9999
#mybatis连接设置
spring:
  datasource: 
    url: jdbc:mysql://127.0.0.1:3306/ehuoyuan?useUnicode=true&characterEncoding=utf8
    username: root
    password: 123456
    driver-class-name: com.mysql.jdbc.Driver
#mybatis 配置文件映射
mybatis:
 mapper-locations: classpath*:mapper/**/*.xml

启动:

至此整合结束,若参照次博客整合遇到问题可下方留言,也可以加QQ群:600922504

 

© 著作权归作者所有

jason_kiss
粉丝 21
博文 124
码字总数 64084
作品 0
长沙
程序员
私信 提问
Spring Boot 整合 MyBatis

最近项目原因可能会继续开始使用MyBatis,已经习惯于spring-data的风格,再回头看xml的映射配置总觉得不是特别舒服,接口定义与映射离散在不同文件中,使得阅读起来并不是特别方便。 Spring...

中关村的老男孩
06/24
90
0
spring boot 与mybatis整合,type-aliases-package、type-handlers-package等配置不起作用,导致类加载失败

刚刚接触spring boot,项目中整合了mybatis,但配置没用mybatis-spring-boot-autoconfigure自动配置, 导致mybatis的配置: 在java -jar xxx.war 运行方式,自动扫描机制不起作用,发生类加载...

Beaver_uic
2017/04/14
14.3K
0
Mybatis-Spring 1.2.5 发布

Mybatis-Spring 1.2.5 发布了。MyBatis-Spring 是一个用来整合 MyBatis 和 Spring 框架的小类库。 该 issue 只会影响使用 spring-boot-starter adapter 的 spring-boot 用户。 Source code ...

oschina
2016/03/30
3.6K
5
Spring Boot学习资源

Spring Boot 入门 http://blog.csdn.net/isea533/article/details/50278205 ---------------------------------------------------------- Spring Boot 静态资源处理 http://blog.csdn.net/c......

IamOkay
2017/02/17
443
0
Spring Boot学习笔记

多模块开发 [SpringBoot学习]-IDEA创建Gradle多Module结构的SpringBoot项目 RabbitMQ RabbitMQ 安装 linux安装RabbitMQ详细教程 Ubuntu 16.04 RabbitMq 安装与运行(安装篇) ubantu安装...

OSC_fly
2018/07/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Mybatis Plus删除

/** @author beth @data 2019-10-17 00:30 */ @RunWith(SpringRunner.class) @SpringBootTest public class DeleteTest { @Autowired private UserInfoMapper userInfoMapper; /** 根据id删除......

一个yuanbeth
今天
4
0
总结

一、设计模式 简单工厂:一个简单而且比较杂的工厂,可以创建任何对象给你 复杂工厂:先创建一种基础类型的工厂接口,然后各自集成实现这个接口,但是每个工厂都是这个基础类的扩展分类,spr...

BobwithB
今天
5
0
java内存模型

前言 Java作为一种面向对象的,跨平台语言,其对象、内存等一直是比较难的知识点。而且很多概念的名称看起来又那么相似,很多人会傻傻分不清楚。比如本文我们要讨论的JVM内存结构、Java内存模...

ls_cherish
今天
4
0
友元函数强制转换

友元函数强制转换 p522

天王盖地虎626
昨天
5
0
js中实现页面跳转(返回前一页、后一页)

本文转载于:专业的前端网站➸js中实现页面跳转(返回前一页、后一页) 一:JS 重载页面,本地刷新,返回上一页 复制代码代码如下: <a href="javascript:history.go(-1)">返回上一页</a> <a h...

前端老手
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部