首先,给你们看一下个人项目结构java
springboot的版本为:2.1.9 具体能够看一下个人pom文件web
如下就是我该演示项目的全部依赖,h2的版本交给springboot去进行肯定spring
<properties> <java.version>1.8</java.version> </properties> <dependencies> <!--starter-web--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--链接H2的mybatis--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.1</version> </dependency> <!--h2数据库--> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <!--测试--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> <!--把放置在mapper路径下的xml文件编译后放在一块儿--> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> <filtering>true</filtering> </resource> </resources> </build>
须要关注 h2 web操做界面的路径 和 console打印的sql语句,如下的配置是本文精华部分sql
spring: h2: console: path: /h2-console #进入h2 web操做界面的路径 enabled: true #开启h2 web界面 datasource: driver-class-name: org.h2.Driver schema: classpath:db/schema-h2.sql data: classpath:db/data-h2.sql url: jdbc:h2:mem:test username: root password: test mybatis: configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 在console打印sql语句 server: port: 8081
INSERT INTO cat (id, name, age, color,score) VALUES (1, 'Jone', 18, '黃色',0.4), (2, 'Jack', 20, '白色',0.5), (3, 'Tom', 28, '金色',0.1), (4, 'Sandy', 21, '紅色',0.8), (5, 'Billie', 24, '綠色',0.7);
DROP TABLE IF EXISTS cat; CREATE TABLE cat ( id BIGINT(20) NOT NULL COMMENT '主键ID', name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名', age INT(11) NULL DEFAULT NULL COMMENT '年龄', color VARCHAR(50) NULL DEFAULT NULL COMMENT '颜色', score DOUBLE NULL DEFAULT NULL COMMENT '分数', PRIMARY KEY (id) );
/** * @author CC-CAN */ @SpringBootApplication @MapperScan("com.springboot.*.mapper") public class MybatisApplication { public static void main(String[] args) { SpringApplication.run(MybatisApplication.class, args); } }
配置后,由mybatis进行实体类的映射数据库
public interface CatMapper { List<Cat> selectAll(); }
<?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.springboot.mybatis.mapper.CatMapper"> <select id="selectAll" resultType="com.springboot.mybatis.entity.Cat"> SELECT * from cat </select> </mapper>
与数据库的实体对应apache
@Data public class Cat { private Long id; private String name; private Integer age; private String color; private Double score; }
public interface CatService { /** * 喵叫 * @return */ String meow(); List<Cat> list(); }
@Service public class CatServiceImpl implements CatService { @Autowired private CatMapper catMapper; @Override public String meow() { return "瞄"; } @Override public List<Cat> list() { return catMapper.selectAll(); } }
@RunWith(SpringRunner.class) @SpringBootTest public class MybatisApplicationTests { @Autowired private CatService catService; @Test public void contextLoads() { List<Cat> list = catService.list(); list.forEach(System.out::println); } }
Creating a new SqlSession SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@6caf7803] was not registered for synchronization because synchronization is not active JDBC Connection [HikariProxyConnection@408543908 wrapping conn0: url=jdbc:h2:mem:test user=ROOT] will not be managed by Spring ==> Preparing: SELECT * from cat ==> Parameters: <== Columns: ID, NAME, AGE, COLOR, SCORE <== Row: 1, Jone, 18, 黃色, 0.4 <== Row: 2, Jack, 20, 白色, 0.5 <== Row: 3, Tom, 28, 金色, 0.1 <== Row: 4, Sandy, 21, 紅色, 0.8 <== Row: 5, Billie, 24, 綠色, 0.7 <== Total: 5 Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@6caf7803] Cat(id=1, name=Jone, age=18, color=黃色, score=0.4) Cat(id=2, name=Jack, age=20, color=白色, score=0.5) Cat(id=3, name=Tom, age=28, color=金色, score=0.1) Cat(id=4, name=Sandy, age=21, color=紅色, score=0.8) Cat(id=5, name=Billie, age=24, color=綠色, score=0.7)
运行main方法后端
浏览器输入 浏览器
http://localhost:8081/h2-console缓存
帐号 root 密码 test,进去springboot
查看
本人长期从事java开发,若是有什么疑问,能够留言,我会及时解答