![]()
这是学习spring boot 的第二周,公司号称这玩意是啥都不会的新手就可以填空开发,于是决定上手一把,怎么说我也是搞了快七八年的.NET和.NETcore,没想到无情打脸,快被这个能填空开的IDE搞疯了,下面是记下一些自己踩坑开发中遇到的一系列无穷无尽的问题。
一 .集成MyBatis
a)首先如何理解这个MyBatis 的东西,我的理解是 :MyBatis 有点类似ORM的感觉,跟 JPA很类似,就是一个orm,需要一个类似 dbcontext的东西,这个东西,在MyBatis 里面叫做sqlSessionFactoryBean,好了知道这个,我们就不需要像百度上面一样,搞各种各样的配置,不知道所云的东西全都搞在工程里面。session bean是什么我的是这样配置的
,去执行他内置的一些鬼CURD操作,对,他只需要这一个方法就可以了,设置数据源,然后你的MyBatis 就可以认为有了 我们常说的 dbcontext了。
有了这个上下文的sqlSessionFactoryBean,我们需要一些 CRUD的方法,方法在哪里呢,在那什么 mapper.xml文件里面的。
b). 配置 这些方法的路径,什么,路径,对是路径,我没有写过 之前的spring mvc的,但是了解到这些 Mapper.xml 其它就是对应的一个个之前配置的Bean节点下的 方法,只是换了个马甲而已吧。

mapperScannerConfigurer.setBasePackage("com.example.demo"); 注意这句,是说我配置了我的上下文之后,我要扫我这个上下文里面 有哪些方法,我要从哪个基包开始扫描找到这些方法,传说是递归去找的。这里你查看你的mapper接口的包名是什么,可以直接设置成上一层去,就可以扫描到的。session bean是什么
@AutoConfigureAfter(MapperScannerConfig.class) //保证在MyBatisConfig实例化之后再实例化该类
c)设置mapper.xml的路径 也就是你的 mapper接口写好了,得有一个对应的 mapper.xml对应,这样才知道 你这个接口具体是执行了什么操作,对,就是这样,杀人放火的动作,都是写在XML文件里面的,当然,写这个XML文件,个人觉得,没有什么比用这各方法写CRUD操作更坑爹的了,没有。配置application.yaml 里面:
# mybatis_config
mybatis:
mapper-locations: classpath:mapperXml/**/*.xml
具体路径以自己项目做适当调整。
注意:坑来了,这个XML的坑很严重,有时候会折腾到你想死的心都有了,但是还是死不甘心。
(1).mapper.xml 文件的namespace要与 mapper接口的包名相同
(2).UserMapper 的方法在UserMapper.xml中没有,然后执行 userService 的方法会报错
(3).UserMapper 的方法返回值是List<User>,而select元素没有正确配置ResultMap,或者只配置ResultType! 这个第三个非常隐敝,我在这里折腾了三天,就是少了一个ResultType
二 整合Druid
这玩意 取了一个 德鲁伊 的名字,估计是阿里哪位大神喜欢玩游戏吧,哈哈。好了,这个东西主要是就是一个db连接池的作用。
所以我们只需要把一系列连接的参数配置上去就Ok了
1) DruidConfig
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-54897-1.html
包括水域