1、创建springboot项目
2、
3、创建pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.0.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com</groupId>
<artifactId>mybatisdemo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>mybatisdemo</name>
<description>mybatisdemo for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.0.1</version>
</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-starter-tomcat</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
4、创建application.yml
spring:
datasource:
url: jdbc:oracle:thin:@localhost:1521:orcl
username: springboot
password: springboot
driverClassName: oracle.jdbc.OracleDriver
mybatis:
mapperLocations: classpath*:mapper/*.xml
type_aliases_package: com.mybatisdemo.pojo
dialect: com.haiercash.cmis.plr.common.mybatis.dialect.OracleDialect
5、创建pojo
package com.mybatisdemo.pojo;
import org.apache.ibatis.type.Alias;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
/**** imports ****/
// 标明是一个实体类
@Entity
// 定义映射的表
@Table(name = "t_user")
@Alias("user")
public class User {
// 标明主键
@Id
private String id;
private String userName;
private String note;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getNote() {
return note;
}
public void setNote(String note) {
this.note = note;
}
}
6、创建service
package com.mybatisdemo.service;
import com.mybatisdemo.pojo.User;
public interface MyBatisUserService {
User getUser(String id);
}
7、创建impl
package com.mybatisdemo.service.impl;
import com.mybatisdemo.dao.MyBatisUserDao;
import com.mybatisdemo.pojo.User;
import com.mybatisdemo.service.MyBatisUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**** imports ****/
@Service
public class MyBatisUserServiceImpl implements MyBatisUserService {
@Autowired
private MyBatisUserDao myBatisUserDao;
@Override
public User getUser(String id) {
return myBatisUserDao.getUser(id);
}
}
8、创建dao
package com.mybatisdemo.dao;
import com.mybatisdemo.pojo.User;
import org.springframework.stereotype.Repository;
/**** imports ****/
@Repository
public interface MyBatisUserDao {
User getUser(String id);
}
9、创建mapper.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.mybatisdemo.dao.MyBatisUserDao">
<select id="getUser" parameterType="String" resultType="user">
select * from t_user where id = #{id}
</select>
</mapper>
10、修改MybatisdemoApplication
package com.mybatisdemo;
import com.mybatisdemo.dao.MyBatisUserDao;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.annotation.MapperScan;
import org.mybatis.spring.mapper.MapperFactoryBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
@SpringBootApplication(scanBasePackages = "com.mybatisdemo")
@MapperScan("com.mybatisdemo.dao")
public class MybatisdemoApplication {
@Autowired
SqlSessionFactory sqlSessionFactory;
@Bean
public MapperFactoryBean<MyBatisUserDao> initMyBatisUserDao() {
MapperFactoryBean<MyBatisUserDao> bean = new MapperFactoryBean<>();
bean.setMapperInterface(MyBatisUserDao.class);
bean.setSqlSessionFactory(sqlSessionFactory);
return bean;
}
public static void main(String[] args) {
SpringApplication.run(MybatisdemoApplication.class, args);
}
}
11、源码
源码下载地址