This article mainly introduces the example code of springboot integrating mybatis. The editor thinks it is quite good. Now I will share it with you and give it as a reference. Let’s follow the editor and take a look.
Please refer to the previous chapter for how to configure the web project with springboot, and integrate mybatis on this basis.
Add mybatis dependencies in the pom file:
<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.2.0</version> </dependency>
Add mysql driver:
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency>
Add druid and fastjson dependencies, use Alibaba druid connection pool
<dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.28</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.30</version> </dependency>
Configure the data source in application.yml:
spring: datasource: name: test url: jdbc:mysql://127.0.0.1:3306/test username: root password: 111111 # 使用druid数据源 type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver filters: stat maxActive: 20 initialSize: 1 maxWait: 60000 minIdle: 1 timeBetweenEvictionRunsMillis: 60000 minEvictableIdleTimeMillis: 300000 validationQuery: select 'x' testWhileIdle: true testOnBorrow: false testOnReturn: false poolPreparedStatements: true maxOpenPreparedStatements: 20
Set the mapper and model scan paths of mybatis:
mybatis: mapperLocations: classpath:mapper/*.xml typeAliasesPackage: com.yingxinhuitong.demo.model #更多配置请参见:http://www.mybatis.org/spring-boot-starter/mybatis-spring-boot-autoconfigure/
Next we create new userMapper.xml, UserEntity and UserDao:
UserEntity.class
package com.yingxinhuitong.demo.model; /** * Created by jack on 2017/4/20. */ public class UserEntity { private Long id; private String username; private String password; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
UserDao
package com.yingxinhuitong.demo.dao; import com.yingxinhuitong.demo.model.UserEntity; import org.apache.ibatis.annotations.Mapper; import java.util.List; /** * Created by jack on 2017/4/20. */ @Mapper public interface UserDao { List<UserEntity> searchAll(); }
UserMapper.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.yingxinhuitong.demo.dao.UserDao" > <!-- 字段与实体的映射 --> <resultMap id="BaseResultMap" type="com.yingxinhuitong.demo.model.UserEntity"> <id column="id" property="id" jdbcType="BIGINT" /> <result column="username" property="username" jdbcType="VARCHAR" /> <result column="password" property="password" jdbcType="VARCHAR" /> </resultMap> <!-- 根据条件查询,全部 --> <select id="searchAll" resultMap="BaseResultMap"> select * from tab_user </select> </mapper>
Create a controller, inject it into UserDao, and test whether you can query the data:
@RestController public class TestController { @Resource UserDao userDao; @RequestMapping("/getusers") public String test() { List<UserEntity> users = userDao.searchAll(); String usersJson = JSON.toJSONString(users); return usersJson; } }
Run Application.class, access: localhost:9000/demo/getusers after successful startup, the output content is as follows:
The code is as follows:
[{"id": 1,"password":"000000","username":"test"},{"id":2,"password":"111111","username":"test1"},{"id":3, "password":"222222","username":"test2"}]
At this point, springboot has completed the integration of mybatis.
The above is the detailed content of Detailed explanation of the code example of springboot integrating mybatis. For more information, please follow other related articles on the PHP Chinese website!