欢迎访问昆山宝鼎软件有限公司网站! 设为首页 | 网站地图 | XML | RSS订阅 | 宝鼎邮箱 | 后台管理


新闻资讯

MENU

软件开发知识

当然mybatis也发 CAD加密 现了这种弊端

点击: 次  来源:宝鼎软件 时间:2017-07-27

原文出处: 纯洁的微笑

这两天启动了一个新项目因为项目构成员一直都利用的是mybatis,固然小我私家较量喜欢jpa这种极简的模式,软件开发,可是为了项目保持统一性技能选型照旧定了 mybatis。到网上找了一下关于spring boot和mybatis组合的相关资料,各类百般的形式都有,看的人心累,团结了mybatis的官方demo和文档终于找到了最简的两种模式,花了一天时间总结后分享出来。

orm框架的本质是简化编程中操纵数据库的编码,成长到此刻根基上就剩两家了,一个是宣称可以不消写一句SQL的hibernate,一个是可以机动调试动态sql的mybatis,两者各有特点,在企业级系统开拓中可以按照需求机动利用。发明一个有趣的现象:传统企业多半喜欢利用hibernate,互联网行业凡是利用mybatis。

hibernate特点就是所有的sql都用Java代码来生成,不消跳出措施去写(看)sql,有着编程的完整性,成长到最顶端就是spring data jpa这种模式了,根基上按照要领名就可以生成对应的sql了,有不太相识的可以看我的上篇文章springboot(五):spring data jpa的利用。

mybatis初期利用较量贫苦,需要各类设置文件、实体类、dao层映射关联、尚有一大推其它设置。虽然mybatis也发明白这种漏洞,初期开拓了generator可以按照表功效自动出产实体类、设置文件和dao层代码,可以减轻一部门开拓量;后期也举办了大量的优化可以利用注解了,自动打点dao层和设置文件等,成长到最顶端就是本日要讲的这种模式了,mybatis-spring-boot-starter就是springboot+mybatis可以完全注解不消设置文件,也可以简朴设置轻松上手。

此刻想想spring boot 就是牛逼呀,任何对象只要关联到spring boot都是化繁为简。

mybatis-spring-boot-starter

官方说明:MyBatis Spring-Boot-Starter will help you use MyBatis with Spring Boot
其实就是myBatis看spring boot这么火热也开拓出一套办理方案来凑凑热闹,但这一凑确实办理了许多问题,利用起来确实顺畅了很多。mybatis-spring-boot-starter主要有两种办理方案,一种是利用注解办理一切问题,一种是简化后的老传统。

虽然任何模式都需要首先引入mybatis-spring-boot-starter的pom文件,此刻最新版本是1.1.1(恰好快到双11了 :)。

<dependency>
	<groupId>org.mybatis.spring.boot</groupId>
	<artifactId>mybatis-spring-boot-starter</artifactId>
	<version>1.1.1</version>
</dependency>

好了下来别离先容两种开拓模式。

无设置文件注解版

就是一切利用注解搞定。

1 添加相关maven文件

<dependencies>
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter</artifactId>
	</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-web</artifactId>
    </dependency>
	<dependency>
		<groupId>org.mybatis.spring.boot</groupId>
		<artifactId>mybatis-spring-boot-starter</artifactId>
		<version>1.1.1</version>
	</dependency>
     <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
    </dependency>
     <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <optional>true</optional>
	</dependency>
</dependencies>

完整的pom包这里就不贴了,各人直接看源码。

2、application.properties 添加相关设置

mybatis.type-aliases-package=com.neo.entity

spring.datasource.driverClassName = com.mysql.jdbc.Driver
spring.datasource.url = jdbc:mysql://localhost:3306/test1?useUnicode=true&characterEncoding=utf-8
spring.datasource.username = root
spring.datasource.password = root

springboot会自动加载spring.datasource.*相关设置,数据源就会自动注入到sqlSessionFactory中,sqlSessionFactory会自动注入到Mapper中,对了你一切都不消管了,直接拿起来利用就行了。

在启动类中添加对mapper包扫描@MapperScan。

@SpringBootApplication
@MapperScan("com.neo.mapper")
public class Application {

	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
	}
}

可能直接在Mapper类上面添加注解@Mapper,发起利用上面那种,否则每个mapper加个注解也挺贫苦的。

3、开拓Mapper