作者回复: 我们在课程里提到过,把自动生成的代码和手工写的代码放在不同的地方,xml和Mapper都分开放,比如一个放src/main/java/xxx/mapper/auto里,一个放src/main/java/xxx/manual里,xml也是类似的,这样就不用担心覆盖的问题了。
作者回复: 手写的部分遵从规范,自动生成的忽略掉规范,并且不要去改动自动生成的产物。
作者回复: 这个我记下了,后面我在答疑课程里给大家介绍下MyBaitsPlus。介绍Generator主要因为它是官方的生成工具。
作者回复: @MapperScan注解在扫描配置的package后会找到Mapper接口并创建对应的Bean的
作者回复: 你是不是没有配sqlMapGenerator?另外,如果你全部用注解方式来配置映射关系的话,也就没xml什么事了。还有一点,在运行前,需要先确保目标目录存在,也就是需要创建一下./src/main/resources/mapper这个目录
作者回复: 用Hibernate时,语句也都在代码里,DBA这时会怎么样呢……用哪种方式还是其次的,是你一定得要让你运行的SQL是DBA可接受的,至于这语句怎么搞出来的,他们其实也不关心。但在一些有SQL扫描的大厂,能有明确的语句文件可以给DBA扫描,他们肯定更乐意。
作者回复: 看了你的留言,我也反应过来原来大家还会这样打开我准备的示例,我一直以为大家会像我演示时那样一个个打开来着。
作者回复: 可以看看http://www.mybatis.org/generator/running/runningFromCmdLine.html ,这里有几种方式,如果你要在Classpath里指定其他的jar,可以用java -cp mysql-connector.jar;mybatis-generator-core-x.x.x.jar org.mybatis.generator.api.ShellRunner -configfile generatorConfig.xml
作者回复: 改了表结构就要重新生成一下,所以我才说一定要把生成的和手写的分开放,不然容易把手写的东西覆盖了。