美文网首页
Spring + Maven + Mybatis + Sprin

Spring + Maven + Mybatis + Sprin

作者: 迷途的小冰 | 来源:发表于2017-12-10 23:07 被阅读0次

    1.常见报错

    1.1idea中使用mybatis遇到Could not autowire. No beans of 'xxxx' type found

    解决方案:安装mybatis插件

    1.2Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type

    解决方案:1.mapper.xml文件得与相应的java文件在同一个目录下。

    1.3java.lang.AbstractMethodError: org.mybatis.spring.transaction.SpringManagedTransaction.getTimeout()Ljava/lang/Integer;

    解决方案:mybatis-spring版本过低导致,添加版本更高的jar包

    1.4编译文件中就没有编译mybatis的xml文件

    解决方案:在pom.xml中添加如下代码

    <build>
            <resources>
                <resource>
                    <directory>src/main/resources</directory>
                    <includes>
                        <include>**/*.properties</include>
                        <include>**/*.xml</include>
                        <include>**/*.tld</include>
                    </includes>
                    <filtering>false</filtering>
                </resource>
                <resource>
                    <directory>src/main/java</directory>
                    <includes>
                        <include>**/*.properties</include>
                        <include>**/*.xml</include>
                        <include>**/*.tld</include>
                    </includes>
                    <filtering>false</filtering>
                </resource>
            </resources>
          </build>
    

    1.5java.lang.NoClassDefFoundError: javax/servlet/SessionCookieConfig

    Spring4测试的时候需要servlet3.0的支持

    <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>4.0.0</version>
        <scope>provided</scope>
    </dependency>
    
    

    1.6 Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 5' at line 1

    SQL语句在单元测试中可以通过,但是在Spring测试模块中不能通过,得把后面的;号去掉

    SELECT * from tb1_emp;
    

    改为:

    SELECT * from tb1_emp
    

    1.7web路径的问题

    不以“/”开始的相对路径,以当前资源的路径为基准,经常出现问题

    以“/”开始的相对路径,以服务器的路径为标准(http://localhost:3309),需要加上项目名称

    如/SSM_CRUD/static/js/jquery-3.2.1.min.js

    1.8由于外键而不能truncate

     SET FOREIGN_KEY_CHECKS=0;
    

    来禁用外键约束.

    之后再用

        SET FOREIGN_KEY_CHECKS=1;
    

    来启动外键约束.

    truncate TABLE address;
    truncate TABLE car;
    truncate TABLE goods;
    truncate TABLE login;
    truncate TABLE money;
    truncate TABLE `order`;
    truncate TABLE orderitem;
    truncate TABLE shop;
    truncate TABLE `user`;
    

    1.9使用jquery的load方法加载页面的时候被加载页面js不能使用的问题

    $.ajax({
                url : 'userInformation.html',
                cache : true,
                async:false,
                success : function(html) {
                    $(".body_center_right").html(html);
                }
        });
    

    引自:https://blog.csdn.net/u013644839/article/details/72528788

    2.0 radio使用checked获取不到被选radio的值的问题

    <lable id="user_genger">
            <input type="radio" value="男" checked="checked" name="user_genger">男
            <input type="radio" value="女" name="user_genger">女
     </lable>
    
    if($("#user_genger input:eq(0)").prop("checked")){
            userGender = $("#user_genger input:eq(0)").val();
        }
        else
            userGender = $("#user_genger input:eq(1)").val();
    

    2.1直接使用base64加密后的图片,base64位的数据前得加上,“,”也必须有

    data:image/jpg;base64,
    

    2.2 mybatis传参String时报错的解决方法

    There is no getter for property named '*' in 'class java.lang.String

    https://blog.csdn.net/zcl_love_wx/article/details/78601481

    2.3Required String parameter is not present

    发现是前端传的参数名与后端代码定义的参数名不一致导致的

    2.4关于window.location.href 传中文参数 乱码问题

    将window.location.href = "goodsList.html?goodsName=" +goodsName + "&pn=1";
    改成
    window.location.href = "goodsList.html?goodsName=" + encodeURI(encodeURI(goodsName)) + "&pn=1";

    2.5一个特别奇葩的bug,在使用mybatis中的pagehelper插件进行分页的时候发现有时候分页成功,有时候分页失败。

    PageHelper.startPage(pn,10);
    List<Money> moneyList = iMoneyService.selectByUserId(userId);
    PageInfo pageInfo = new PageInfo(moneyList,5);
    

    PageHelper.startPage 方法调用后,后面必须有一个Mapper的查询方法,必须被消费掉。 否则会由于ThreadLocal的原因,当该线程被其他方法调用时被分页

    相关文章

      网友评论

          本文标题:Spring + Maven + Mybatis + Sprin

          本文链接:https://www.haomeiwen.com/subject/gflbixtx.html