SpringBoot入門08-整合Mabatis
阿新 • • 發佈:2018-11-27
整合所需的依賴
註解方式和對映檔案方式的mybatis都可以被整合進springboot
建立springboot的web專案後,在pom加入spring-mybatis和mysql-jdbc和thymeleaf架包依賴
<!-- https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-boot-starter --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.2.0</version> </dependency> <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId><version>5.1.6</version> </dependency>
而且值得注意的是,這裡必須要指定版本號,往常我們使用springboot之所以不需要指定版本號,是因為我們引入的Maven Parent中指定了SpringBoot的依賴,SpringBoot官方依賴Pom檔案中已經指定了它自己整合的第三方依賴的版本號, 對於有些依剌官方並沒有提供自己的starter,所以必須跟正常的maven依賴一樣,要加版本號
專案controller層、service層和mapper層所需的註解
三層注入IOC的註解
控制層使用@Controller
業務層使用@Service
持久層使用@Mapper
application.properties中配置資料庫
spring.thymeleaf.prefix=classpath:templates/page/ spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://localhost:3306/dbname?useUnicode=true&characterEncoding=UTF-8 spring.datasource.username=root spring.datasource.password=199751hwl mybatis.mapper-locations=classpath:mybaits/mapping/*.xml mybatis.config-locations=classpath:mybaits/mybatis-config.xml
設定mybatis配置檔案和mybatis對映檔案,註解方式的mybatis後面這兩條
整合mabatis的mapper層
mapper層每個介面上都得加上 @Mapper
@Mapper public interface UserMapper { @Select("select * from tb_user") public List<User> selectAllUser(); @Insert("insert into tb_user(username, age, ctm) values(#{username}, #{age}, #{ctm})") public int insertUser(User user); } 如果介面上不加@Mapper, 則必須在配置類上使用@MapperScan設定Mapper層的包,示例如下 @SpringBootApplication @MapperScan({"com.xx.mapper"}) public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
配置mybatis與註解方式mybatis被整合時的區別
註解方式Mapper介面的方法加註解@Select,@Insert, @Delete,@Update, 配置方式不加註解
配置方式多了mybatis的配置檔案和寫sql語句的對映檔案
在application.properties中設定mybatis的配置檔案路徑和mybatis的對映檔案路徑
mybatis配置檔案
在springboot整合mybatis配置方式中mybatis配置檔案的作用 可以起別名等.... 例如:在mybatis配置檔案mybatis-config.xml中配置 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <typeAliases> <typeAlias type="com.xx.domain.User" alias="user" /> </typeAliases> </configuration> 則可以在對映檔案中使用user替換com.xx.domain.User,下面是示例 <select id="selectAllUser" resultType="user"> select * from tb_user </select>
springboot_junit測式