• springboot整合mybatis


      springboot适合快速开发,和springmvc有很大相关性,及敏捷开发的特性,在spring boot框架下整合mybatis也比springmvc中简单。

      基本步骤

    1.在resources目录在定义mybatis-config.xml,使用MaperScan注解声明mapper类。

    2.在springmvc中mybatis中有一个重要的类:sqlSesion,这个类为我们封装了很多方法,springboot中我们不用创建该对象。

    3.在开发spring boot项目过程中,安找视频中的coding,但是基于xml文件的mapper文件出错,报错信息为:spring boot Invalid bound statement no root cause.在网上也查询了好多,最终添加了:mybatis.config-location=classpath:mybatis-config.xml就好了,说明之前idea没有找到xml文件。但是,在视频教程的example中却没有,这个问题很值得思考,这种错误都是配置文件错误。

    4.这是mybatis中的一个fragment,系统报错后提示我看的;

    <mappers>
    <mapper resource="org/mybatis/example/BlogMapper.xml"/>
    </mappers>
    犹豫基础知识掌握不牢,犯了很多低价错误,你应该明白了很多吧。
    5,在spring mvc中,要手动引入mybatis的类,并且生成sqlsesion对象,使用Inputstream读入配置文件,与之相比,spring boot确实简单了很多。

    Springboot整合mybatis的代码实现:

     在没有配置数据库时,注释这样@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})

    接下来我们DataSourceAutoConfiguration,看看他做了什么工作。

     1.Mybatis的配置文件和部署掌握了,crud,maper接口和xml文件学会了,但是对于设计reslutMap等多表操作,理解起来还是有点吃力。这个就需要补补基本功了,多写一些sql脚本才行啊。为啥要使用mybatis呢?为了自动实现orm,否则就要自己从ResultSet中取数据,与之相配套,我们就需要写entity,这样代码量虽然多了,但是层次更清晰了。在orm阶段,还有一个问题要注意,就是mysql的数据类型对应java中的什么对象,最常见的就是datatime对应java.util.Date;

    
    

    2.mybatis和springmvc或者spring boot的集成:其中集成的模块mybatis的开发者已经开发出来了,我们要做到就是在项目中指定要使用mybatis及引入相应的jar就可以了。具体怎么引入,这个过程spring boot基本不用做什么,而springmvc则要声明和生成相关的类,比如sqlSession

    3.有时候报了create bean错误,大概是class文件和xml文件没有编译在一起。这时应该去target目录下查看,这就是小白和高手的差别,当报错时,高手明白原理,能够去定位错误。

    4、“Invalid bound statement (not found) ”,而且报错的都是 MybatisPlus 生成的 BaseMapper 中的方法

     5、@MapperScan一定要精确到具体的包,它是会注册包下面所有的接口,如果配置不对就会报错。

    参考资料:

     

    Welcome you!
  • 相关阅读:
    android activity状态的保存
    java android 序列号serializable和parcelable
    java 中的 自定义viewUtils框架
    CSS隐藏元素的几种妙法
    WCF、WebAPI、WCFREST、WebService之间的区别
    前端大全
    最全前端资源汇集
    Unicode和汉字编码小知识
    关于写保护
    js实现密码加密
  • 原文地址:https://www.cnblogs.com/Robin008/p/9197122.html
Copyright © 2020-2023  润新知