mapperdbMybatis mapper 单表处理工具

联合创作 · 2023-09-30 20:42

mapperdb

作用于 mybatis 的 mapper 的单表增删改查(mybatis v3.2.4+,无xml配置配置哦)。

1、entity 配置


package com.demo.domain;

import java.util.Date;

import javax.annotation.Resource;

import org.apache.ibatis.annotations.Result;
import org.apache.ibatis.annotations.SelectKey;
import org.apache.ibatis.type.JdbcType;

@Resource
public class Blog {
	private Integer id;

	private String title;

	private Date publishtime;

	private String content;

	public void setId(Integer id) {
		this.id = id;
	}

	public void setTitle(String title) {
		this.title = title;
	}

	public void setPublishtime(Date publishtime) {
		this.publishtime = publishtime;
	}

	public void setContent(String content) {
		this.content = content;
	}

	// call identity()
	// SELECT LAST_INSERT_ID()
	@Result(id = true)
	@SelectKey(statement = "SELECT LAST_INSERT_ID()", before = false, keyProperty = "id", keyColumn = "id", resultType = Integer.class)
	public Integer getId() {
		return id;
	}

	public String getTitle() {
		return title;
	}

	@Result(jdbcType=JdbcType.TIMESTAMP)
	public Date getPublishTime() {
		return publishtime;
	}

	public String getContent() {
		return content;
	}
}


Result可以配置 TypeHandler

2、mybatis 配置

	public void t() {
		Object b = null;
		// Mapper 添加
		MapperRegistryProxy proxy = MapperRegistryProxy.use(sqlSessionFactory);
		proxy.addMapper(BlogMapper.class);

		SqlSession sqlSession = sqlSessionFactory.openSession(true);
		BlogMapper mapper = sqlSession.getMapper(BlogMapper.class);
	}


MapperRegistryProxy 注册 mapper 模板.

3、spring 整合


	<bean class="com.mapperdb.spring.MapperScannerConfigurerSupprot">
		<property name="basePackage" value="com.demo.mapper" />
		<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
	</bean>


其中 MapperScannerConfigurerSupprot 是 mapper 模板的扫描器 .

4、mapper 使用方式

package com.demo.mapper;

import com.demo.domain.Blog;
import com.mapperdb.mapper.Mapper;

public interface BlogMapper extends Mapper<Blog> {

}


其中 BlogMapper 继承已经定义好的 mapper 模板 . 还可以实现自己的 mapper 模板.

5、注意事项

text 建议和 mapper 模板和 mybatis 的 mapper 不放在同一个包中,方便扫描。

浏览 1
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报