spring boot集成tk.mybatis 返回主键(oracle序列)

spring boot启动类代码 (重点:删除@MapperScan(basePackages = “com.zr.mapper”) 注解)`

package com.zr;
 
import java.util.Properties;
 
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.Banner;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.ServletComponentScan;
import org.springframework.context.annotation.Bean;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.transaction.annotation.EnableTransactionManagement;
 
import com.github.pagehelper.PageHelper;
 
import tk.mybatis.spring.mapper.MapperScannerConfigurer;
 
@EnableScheduling
@SpringBootApplication // 启动
@ServletComponentScan // 拦截器
@EnableTransactionManagement // 事务管理
// @MapperScan(basePackages = "com.zr.mapper")
public class Startup {
 
	@Value("${myData.port.ajpport}")
	private int ajpport;
 
	@Bean
	public PageHelper pageHelper() {
		PageHelper pageHelper = new PageHelper();
		Properties p = new Properties();
		p.setProperty("offsetAsPageNum", "true");
		p.setProperty("rowBoundsWithCount", "true");
		p.setProperty("reasonable", "true");
		p.setProperty("dialect", "oracle");
		pageHelper.setProperties(p);
		return pageHelper;
	}
 
	/**重点**/
	@Bean
	public MapperScannerConfigurer mapperScannerConfigurer() {
		MapperScannerConfigurer mapperScannerConfigurer = new MapperScannerConfigurer();
		mapperScannerConfigurer.setBasePackage("com.zr.mapper");
		Properties propertiesMapper = new Properties();
		// 通用mapper位置,不要和其他mapper、dao放在同一个目录
		propertiesMapper.setProperty("mappers", "com.zr.bean.MyMapper");
		propertiesMapper.setProperty("notEmpty", "false");
		// 主键UUID回写方法执行顺序,默认AFTER,可选值为(BEFORE|AFTER)
		propertiesMapper.setProperty("ORDER", "BEFORE");
		mapperScannerConfigurer.setProperties(propertiesMapper);
		return mapperScannerConfigurer;
	}
	public static void main(String[] args) {
		SpringApplicationBuilder builder = new SpringApplicationBuilder(Startup.class);
		// 修改Banner的模式为OFF
		builder.bannerMode(Banner.Mode.OFF).run(args);
	}
 
}

实体类

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY, generator = "select SEQ_ID.nextval from dual")//前提是先创建了oracle序列
private Long id;
private String name;

猜你喜欢

转载自blog.csdn.net/weixin_44727906/article/details/88545606