springboot与mybatis的完美融合

转载 2017年09月27日 17:55:50

  springboot大家都知道了,搭建一个spring框架只需要秒秒钟。下面给大家介绍一下springboot与mybatis的完美融合:

       首先:创建一个名为springboot-mybatis的maven项目,记住:一定要maven哦,不懂maven的可以自己恶补一下maven知识,这里就不介绍maven了。

   下面给出pom.xml的完整配置:

       

复制代码
 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project xmlns="http://maven.apache.org/POM/4.0.0"
 3          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 5     <modelVersion>4.0.0</modelVersion>
 6 
 7     <groupId>springboot-mybatis</groupId>
 8     <artifactId>springboot-mybatis</artifactId>
 9     <version>1.0.0</version>
10     <packaging>war</packaging>
11 
12     <name>springBoot-mybatis</name>
13     <description>Spring Boot project</description>
14 
15     <parent>
16         <groupId>org.springframework.boot</groupId>
17         <artifactId>spring-boot-starter-parent</artifactId>
18         <version>1.3.2.RELEASE</version>
19         <relativePath/>
20     </parent>
21 
22     <properties>
23         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
24         <java.version>1.8</java.version>
25     </properties>
26 
27     <dependencies>
28 
29         <dependency>
30             <groupId>org.springframework.boot</groupId>
31             <artifactId>spring-boot-starter</artifactId>
32         </dependency>
33 
34         <dependency>
35             <groupId>org.springframework.boot</groupId>
36             <artifactId>spring-boot-starter-test</artifactId>
37             <scope>test</scope>
38         </dependency>
39 
40         <dependency>
41             <groupId>org.mybatis.spring.boot</groupId>
42             <artifactId>mybatis-spring-boot-starter</artifactId>
43             <version>1.1.1</version>
44         </dependency>
45 
46         <dependency>
47             <groupId>org.springframework.boot</groupId>
48             <artifactId>spring-boot-starter-web</artifactId>
49         </dependency>
50 
51         <dependency>
52             <groupId>mysql</groupId>
53             <artifactId>mysql-connector-java</artifactId>
54             <version>5.1.21</version>
55         </dependency>
56 
57     </dependencies>
58 
59     <build>
60         <plugins>
61             <plugin>
62                 <groupId>org.springframework.boot</groupId>
63                 <artifactId>spring-boot-maven-plugin</artifactId>
64             </plugin>
65             <plugin>
66                 <groupId>org.apache.maven.plugins</groupId>
67                 <artifactId>maven-surefire-plugin</artifactId>
68                 <configuration>
69                     <skip>true</skip>
70                 </configuration>
71             </plugin>
72         </plugins>
73     </build>
74 
75 </project>
复制代码

之后创建一个启动类:

复制代码
 1 package org.shenlan;
 2 
 3 import org.springframework.boot.SpringApplication;
 4 import org.springframework.boot.autoconfigure.SpringBootApplication;
 5 
 6 /**
 7  * Created by wangwei on 2016/9/2.
 8  */
 9 @SpringBootApplication
10 public class Application {
11     public static void main(String[] args){
12         SpringApplication.run(Application.class,args);
13     }
14 }
复制代码

这样一个完整的springboot项目就完成了,是不是很简单。

接下来就可以整理与mybatis的东东了。

首先,创建配置文件:application.properties

1 spring.datasource.url=jdbc:mysql://localhost:3306/test
2 spring.datasource.username=root
3 spring.datasource.password=root
4 spring.datasource.driver-class-name=com.mysql.jdbc.Driver
5 
6 server.port=1111

这里server.port=1111是定义了改项目的端口,默认的是8080.

然后,定义一个java的实体类:

复制代码
 1 package org.shenlan.web;
 2 
 3 /**
 4  * Created by wangwei on 2016/9/2.
 5  */
 6 public class User {
 7     private Integer id;
 8     private String name;
 9     private Integer age;
10 
11     public Integer getId() {
12         return id;
13     }
14 
15     public void setId(Integer id) {
16         this.id = id;
17     }
18 
19     public String getName() {
20         return name;
21     }
22 
23     public void setName(String name) {
24         this.name = name;
25     }
26 
27     public Integer getAge() {
28         return age;
29     }
30 
31     public void setAge(Integer age) {
32         this.age = age;
33     }
34 }
复制代码

这里实体类的字段要和数据库的字段对应起来,不然就要取别名了。

之后,定义一个dao的接口:

复制代码
 1 package org.shenlan.web;
 2 
 3 import org.apache.ibatis.annotations.Mapper;
 4 import org.apache.ibatis.annotations.Param;
 5 import org.apache.ibatis.annotations.Select;
 6 
 7 /**
 8  * Created by Administrator on 2016/9/2.
 9  */
10 @Mapper
11 public interface UserMapper {
12 
13     @Select("select * from user where name = #{name}")
14     User findUserByName(@Param("name")String name);
15 }
复制代码

@Mapper就是我们要与mybatis融合关键的一步,只要一个注解就搞定了。

哈哈哈,最后我们就来写一个测试类吧:

复制代码
 1 package org.shenlan.web;
 2 
 3 import org.springframework.beans.factory.annotation.Autowired;
 4 import org.springframework.web.bind.annotation.RequestMapping;
 5 import org.springframework.web.bind.annotation.ResponseBody;
 6 import org.springframework.web.bind.annotation.RestController;
 7 
 8 /**
 9  * Created by wangwei on 2016/9/2.
10  */
11 @RestController
12 @RequestMapping({"/home"})
13 public class UserController {
14     @Autowired
15     UserMapper userMapper;
16 
17     @RequestMapping(value = "/user")
18     @ResponseBody
19     public String user(){
20         User user = userMapper.findUserByName("王伟");
21         return user.getName()+"-----"+user.getAge();
22     }
23 }
复制代码

     @RestController是对应的restful风格的控制器,@RequestMapping里面可以对应一个数组哦

     打开浏览器,输入:http://localhost:1111/home/user

     效果如下:

     本博客涉及的项目的地址:https://github.com/shenlanzhizunjustwangwei/springBoot

Spring boot Mybatis 整合(完整版)

对Mybatis注解方式有兴趣的,可以查看我的另一篇:Spring boot Mybatis 整合(注解版) 注解方式更加简洁简单,极大程度的提高了开发速度。 更多干货 Spring B...
  • Winter_chen001
  • Winter_chen001
  • 2017年08月16日 15:59
  • 45859

Spring Boot 集成MyBatis

Spring Boot 集成MyBatis在配置MyBatis前,我们先配置一个druid数据源。Spring Boot 集成druiddruid有很多个配置选项,使用Spring Boot 的Con...
  • isea533
  • isea533
  • 2015年12月27日 15:29
  • 296428

Spring boot Mybatis

最近刚接触Spring boot,正是因为他的及简配置方便开发,促使我下定决心要用它把之前写的项目重构,那么问题来了,spring boot怎么整合mybatis呢,下面几个配置类来搞定。 1、文件结...
  • xiaoyu411502
  • xiaoyu411502
  • 2015年09月01日 22:01
  • 109504

springboot与mybatis整合实例详解(完美融合)

springboot大家都知道了,搭建一个spring框架只需要秒秒钟。下面给大家介绍一下springboot与mybatis的完美融合:        首先:创建一个名为springboot-...
  • DJJT10
  • DJJT10
  • 2017年01月09日 10:55
  • 209

springboot整合mybatis最简单的例子

看下了springboot官网的例子,只有一个hello的简单例子,没有整合mybaits相关。   然后在网上找到了很多想找一个整合的demo程序,都觉得太冗余,不适合学习。不说废话,下...
  • qwert678000
  • qwert678000
  • 2017年04月07日 14:35
  • 2607

SpringBoot(五):SpringBoot整合MyBatis

怎么说了,写博客虽然是一件很费时间的事情,而且还是个菜鸟,但是如果写的东西能够帮助到别人,还是值得开心的。 回顾: 上篇写了JdbcTemplate,但是想到使用Mybatis,JPA的人估计不...
  • saytime
  • saytime
  • 2017年07月08日 00:51
  • 13466

spring boot整合mybatis

1,加入依赖如果你想在springboot中使用MyBatis-Spring-Boot-Starter模块,你只需要加入 mybatis-spring-boot-autoconfigure.jar就可...
  • qq27Ke
  • qq27Ke
  • 2017年03月31日 10:52
  • 2630

Spring Boot、Mybatis框架整合开发Java RESTful Web Service

Spring Boot Mybatis 框架整合开发Java Web Restful服务参考资料 Spring Boot 官方参考指南 Spring Boot 中文参考指南 Mybatis 官方中文文...
  • daixiaodong2012
  • daixiaodong2012
  • 2016年02月06日 22:47
  • 6959

SpringBoot和Mybatis整合

SpringBoot和Mybatis整合 使用Maven配置 Eclipse环境 MySql数据库
  • Flight5630
  • Flight5630
  • 2016年04月23日 22:55
  • 20047

SpringBoot(三):springboot整合mybatis(xml形式)

springboot访问mysql可以有好几种方式,例如JPA,jdbcTemplate,mybatis等. 但是用习惯了mybatis,个人还是觉得mybatis写xml比较好管理sql语句,多表查...
  • mj86534210
  • mj86534210
  • 2017年09月06日 23:59
  • 1466
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:springboot与mybatis的完美融合
举报原因:
原因补充:

(最多只允许输入30个字)