通用mapper和mybatis-spring的关系以及与之相似的spring-data-jpa
来源:互联网 发布:js 字符串转时间戳 编辑:程序博客网 时间:2024/06/06 09:09
通用mapper和mybatis-spring的关系以及与之相似的spring-data-jpa
整合东西到框架里面去就是集成框架的接口类之后进行复写:
public class MapperScannerConfigurer
extends org.mybatis.spring.mapper.MapperScannerConfigurer
从这里看出spring-mybatis本生就具备把mapper生成代理实现类,那么通用mapper就是做了单表的操作的省略,
生成是mybatis-generator
spring-data-jpa:
生成代码+成代理+单表操作省略
<jpa:repositories base-package="com.esteel.web.dao"></jpa:repositories>
ClassPathBeanDefinitionScanner:
private BeanNameGenerator beanNameGenerator = new AnnotationBeanNameGenerator();///在打断点的时候不知用的到底是接口的那个实现类看前面注入的地方
protected Set<BeanDefinitionHolder> doScan(String... basePackages) {
Assert.notEmpty(basePackages, "At least one base package must be specified");
Set<BeanDefinitionHolder> beanDefinitions = new LinkedHashSet<BeanDefinitionHolder>();
for (String basePackage : basePackages) {///////////////////包可以有多个
Set<BeanDefinition> candidates = findCandidateComponents(basePackage);////////////////////////////////获取一个一个mapper
for (BeanDefinition candidate : candidates) {
ScopeMetadata scopeMetadata = this.scopeMetadataResolver.resolveScopeMetadata(candidate);
candidate.setScope(scopeMetadata.getScopeName());
String beanName = this.beanNameGenerator.generateBeanName(candidate, this.registry);///在打断点的时候不知用的到底是接口的那个实现类看前面注入的地方
if (candidate instanceof AbstractBeanDefinition) {
postProcessBeanDefinition((AbstractBeanDefinition) candidate, beanName);
}
if (candidate instanceof AnnotatedBeanDefinition) {
AnnotationConfigUtils.processCommonDefinitionAnnotations((AnnotatedBeanDefinition) candidate);
}
if (checkCandidate(beanName, candidate)) {
BeanDefinitionHolder definitionHolder = new BeanDefinitionHolder(candidate, beanName);
definitionHolder = AnnotationConfigUtils.applyScopedProxyMode(scopeMetadata, definitionHolder, this.registry);
beanDefinitions.add(definitionHolder);//////////////所有的mapper都加到这个集合
registerBeanDefinition(definitionHolder, this.registry);
}
}
}
return beanDefinitions;
}
- 通用mapper和mybatis-spring的关系以及与之相似的spring-data-jpa
- JPA,spring data jpa和其他jpa框架的关系
- spring data jpa、jpa以及ORM框架之间的关系
- JPA规范介绍以及JPA、ORM框架以及Spring Data Jpa的关系
- spring-data-jpa通用dao的扩展
- Spring data jpa 和 ORM框架的关系
- jpa和spring data jpa的理解
- spring data jpa hibernate jpa 三者之间的关系
- spring data jpa hibernate jpa 三者之间的关系
- spring 和 mybatis 结合的mapper问题
- Spring Data JPA 动态拼接条件的通用设计模式
- Spring Data JPA的Specifications和Querydsl
- Hibernate和Spring data jpa的区别?
- Spring集成MyBatis 通用Mapper以及 pagehelper分页插件
- Spring data jpa的OpenEntityManagerInViewFilter
- spring-data-jpa的使用
- spring data jpa 的坑
- spring data jpa的使用
- 通用mapper集成,及代码成认识
- 由于没有远程桌面授权服务器可以提供许可证,远程会话被中断
- 通用mapper生成sql及mybatis使用过程
- 每日一题 No.21 a/b(位操作符)【正整数】
- Spring controller、service的单例模式
- 通用mapper和mybatis-spring的关系以及与之相似的spring-data-jpa
- dispose();不是ActionListener的方法
- Spring事务异常回滚,捕获异常不抛出就不会回滚
- springmvc的一个跳转特性
- jsonp代码格式转换
- mybatis 模糊查询与函数连用%需不需要拼接问题
- iOS沙盒机制原理
- SpringMVC 通过get请求实现文件上传
- mybatis的管理映射