SpringBoot 与 Mybatis

application.properties

配置tomcat的默认端口和默认的项目访问路径
server.port=8080
server.context-path=/
配置Mybatis
	<!--依赖mybatis-->
	    <dependency>
	    	<groupId>org.mybatis.spring.boot</groupId>
	    	<artifactId>mybatis-spring-boot-starter</artifactId>
	    	<version>1.1.1</version>
	    </dependency>
	    <!--直接依赖一个成型的通用mybatis持久层的包-->
		<!--通用mapper,tk.mapper-->
		        <dependency>
		            <groupId>tk.mybatis</groupId>
		            <artifactId>mapper-spring-boot-starter</artifactId>
		            <version>1.1.4</version>
		        </dependency>
		        <!-- 通用Mapper -->
				<dependency>
					<groupId>com.github.abel533</groupId>
					<artifactId>mapper</artifactId>
					<version>2.3.2</version>
				</dependency>
application.properties 中配置
	#mybatis
	mybatis.typeAliasesPackage=com.jt.pojo
	mybatis.mapperLocations=classpath:mappers/*.xml
	mybatis.configuration.mapUnderscoreToCamelCase=true
	mybatis.configuration.cacheEnabled=false
编写一个本地的继承自tk的mapper接口(被实际使用的mapper继承用的封装,不能被扫描)
		import tk.mybatis.mapper.common.Mapper;
		import tk.mybatis.mapper.common.MySqlMapper;
		
		public interface MyMapper<T> extends Mapper<T>,MySqlMapper<T> {
		}
定义具体的mapper接口,必须继承MyMapper
调用mybatis持久层原理与jpa通用持久层一致
	
在spring扫描mapper的包,发现我们自己定义的mapper接口继承了mybatis通用持久层逻辑,并且传递了具体操作对象pojo(Student); 通过泛型+反射+注解,实现sql语句的自动拼接;
mybatis通用持久层分2部分
	1 接口类定义方法和名称,参数
	2 provider类,提供与接口类同名的方法,并利用注解作用在接口类里的方法上,真正调用某个方法时,底层sql拼接是provider完成的;
tk提供的通用持久层的api们
	selectAll():查询当前mapper对应的pojo的表格的所有数据,封装成List返回
	delete(student):
	delete from t_student where 条件
	传递的参数,是一个pojo的对象,会根据对象的非空属性拼接where条件; student为例,所有属性都非空
	where id=** and name=** and gender=**
	
	deleteByPrimaryKey(key):利用主键删除数据
	delete from t_student where id=**
	
	insert(student): 无论属性是空与否,都会拼接字段
	insertSelective(student): 空属性的字段不在insert中拼接
	insert into t_student (字段们) values(数据参数)
	
	select(student):pojo对象的非空字段拼接where条件
	selectByPrimaryKey(key):主键值查询一定拼接主键字段名
	selectCount(record) : 非空属性拼接where条件
	selectOne(record):非空属性拼接where条件,确保只有一条返回结果
	
	updateByPrimaryKeySelective(record)
	updateByPrimaryKey(record)
	update t_student set 字段=数据值 where id=
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值