首先,給你們看一下個人項目結構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開發,若是有什麼疑問,能夠留言,我會及時解答