mybatis generator 怎么让接口名为dao
2个回答
2017-08-04
展开全部
【确认问题】mybatis generator 接口文件默认生成xxxMapper.java,实际我们可能想要xxxDao.java或者xxxManagement.java之类的。 这是我理解楼主的问题吗?
我知道目前的解决方案是自己写扩展(插件)去实现。 其实很简单,自己写一个,修改生成 的名字就可以了
下面 一段核心代码demo
public class RenamePlugin extends PluginAdapter {
private String searchString = "Mapper$";
private String replaceString = "Dao";
private Pattern pattern;
@Override
public void initialized(IntrospectedTable introspectedTable) {
String oldType = introspectedTable.getMyBatis3JavaMapperType();
Matcher matcher = pattern.matcher(oldType);
oldType = matcher.replaceAll(replaceString);
introspectedTable.setMyBatis3JavaMapperType(oldType);
}
}
PluginAdapter 是mybatis generator 的一个抽象类,提供给扩展类继承的。重写
public void initialized(IntrospectedTable introspectedTable),替换生成的文件名,就ok
展开全部
但是后话要先说好,生成的实体类都是英文的注释,你需要进行修改,生成的sql会不符合你的规范,需要你进行修改,接口的话需要你在spring中进行配置
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <!-- mybatis接口 -->
<property name="basePackage" value="test.dao" />
</bean>
这样才能用它的接口,否则的话是使用不了的,因为mybatis没有帮你实现dao的实现层,而是只有接口就能调用xml的sql语句了,所以需要进行配置。
最后附上xml的配置文件
+ View code
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <!-- mybatis接口 -->
<property name="basePackage" value="test.dao" />
</bean>
这样才能用它的接口,否则的话是使用不了的,因为mybatis没有帮你实现dao的实现层,而是只有接口就能调用xml的sql语句了,所以需要进行配置。
最后附上xml的配置文件
+ View code
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询