使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(一)

使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(二)

以上两篇已经把流程说明以及具体的代码实现完成,下面来说下,开发中经常遇到的问题,总结如下所示:

1.启动查询时,会报错:SQL dialect is not configured

提示你配置方言,打开菜单File,选择settings,然后在inspection - sql -中把方言的√去除,截图如下所示:

2.启动时:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):

这个是说明根据表生成的接口文件(PersonMapper.java)和映射文件(PersonMapper.xml)文      件没有绑定成功,导致PersonMapper接口中的方法是找不到对应的映射文件中的SQL ID,需要注意下,接口文件和映射文件是一一匹配对应,都没问题,需要看看文件是否扫描到。

当还没有解决问题时,可以在pom.xml文件中添加如下配置:

    在pom.xml文件中的build中添加如下信息:
<resources>
<resource>
<directory>src/main/java</directory><!--所在的目录-->
<includes><!--包括目录下的.properties,.xml文件都会扫描到-->
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>

这个是因为你在maven工程创建以后,看看编译后的目录里面有没有XML问,如下图所示,我的就是没有编译后的XML文件,导致绑定失败,添加后成功了:

3.web中报错:Element async-supported is not allowed here

需要把web中的 2.5 改成3.0即可。截图如下所示:

4.在idea中查询SQL时出现乱码

把版本都改为一致的编码,在database的配置中,添加utf8的编码,在MySQL中设置表的编码是utf-8,把IDEA中的编码格式改为UTF-8,最终把所有编码格式改为一直,就不会出现乱码了,出现了乱码就有不一致的地方,方法有很多,我进改了其中的几个,若不能解决,可以搜下其他的博客,截图如下所示:

设置MySQL中的安装文件中的my.ini中,设置编码改为utf-8;截图如下所示:

把IDEA中的编码格式设置为UTF-8,截图如下所示:

在下面两个文件中添加编码到最后:-Dfile.encoding=UTF-8

5.modelandview传到前台的乱码问题

modelAndView本质上即使 把传入给它的值加入到request对象中,然后在相对应的jsp中使用EL表达式将值取出来展示或处理。
     EL表达式:L(Expression Language) 是为了使JSP写起来更加简单。表达式语言的灵感来自于 ECMAScript 和 XPath 表达式语言,它提供了在 JSP 中简化表达式的方法,让Jsp的代码                        更加简化。

在配置文件中加上下面代码,强制限制请求和响应编码

<init-param>
            <param-name>forceRequestEncoding</param-name>
            <param-value>true</param-value>
        </init-param>
        <init-param>
            <param-name>forceResponseEncoding</param-name>
            <param-value>true</param-value>
        </init-param>

6.启动项目的时候,明明前一天还好好的,结果第二天项目后台报了错误日志

Caused by: org.xml.sax.SAXParseException; lineNumber: 29; columnNumber: 28; cvc-complex-type.2.4.c: 通配符的匹配很全面, 但无法找到元素 'mvc:annotation-driven' 的声明。

这个错误有点坑,一直找问题没找到,头发都揪掉了三根!!!

最终,更坑的是,把MVC的约束头部重新删除,添加上了一模一样的两行,什么都没动,竟然好了 !好了!

所以,以后出问题的时候,实在找不到解决的办法,看看错误日志,是不是说某个约束不好用什么的,可以试试重新删除,然后在加入删除部分的代码,保存重启。。。

上图中红色框框内的内容是重新写入保存的。

好了,以上就是我遇到的问题,有的是自己摸索的,有的是在网上试的,好的好用,有的不好用,最终要经过自己验证的。

欢迎提出问题,一起学习;不足之处,还需继续努力!

使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(三)(错误整理篇)的更多相关文章

  1. 使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(二)(代码篇)

    这篇是上一篇的延续: 用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(一) 源代码在github上可以下载,地址:https://github.com/guoxia ...

  2. 使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(一)

    梳理下使用spring+springMVC+mybatis 整合后的一个简单实例:输入用户的 ID,之后显示用户的信息(此次由于篇幅问题,会分几次进行说明,此次是工程的创建,逆向生成文件以及这个简单查 ...

  3. SSM(Spring + Springmvc + Mybatis)框架面试题

    JAVA SSM框架基础面试题https://blog.csdn.net/qq_39031310/article/details/83050192 SSM(Spring + Springmvc + M ...

  4. SSM(Spring +SpringMVC + Mybatis)框架搭建

    SSM(Spring +SpringMVC + Mybatis)框架的搭建 最近通过学习别人博客发表的SSM搭建Demo,尝试去搭建一个简单的SSMDemo---实现的功能是对用户增删改查的操作 参考 ...

  5. SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

    SSM Spring+SpringMVC+mybatis+maven环境搭建 1.首先右键点击项目区空白处,选择new->other..在弹出框中输入maven,选择Maven Project. ...

  6. SSM(Spring+SpringMVC+Mybatis)框架环境搭建(整合步骤)(一)

    1. 前言 最近在写毕设过程中,重新梳理了一遍SSM框架,特此记录一下. 附上源码:https://gitee.com/niceyoo/jeenotes-ssm 2. 概述 在写代码之前我们先了解一下 ...

  7. SSM(Spring,SpringMVC,Mybatis)框架整合项目

    快速上手SSM(Spring,SpringMVC,Mybatis)框架整合项目 环境要求: IDEA MySQL 8.0.25 Tomcat 9 Maven 3.6 数据库环境: 创建一个存放书籍数据 ...

  8. SSM Spring +SpringMVC+Mybatis 整合配置 及pom.xml

    SSM Spring +SpringMVC+Mybatis 配置 及pom.xml SSM框架(spring+springMVC+Mybatis) pom.xml文件 maven下的ssm整合配置步骤

  9. SSM:spring+springmvc+mybatis框架中的XML配置文件功能详细解释(转)

    原文:https://blog.csdn.net/yijiemamin/article/details/51156189# 这几天一直在整合SSM框架,虽然网上有很多已经整合好的,但是对于里面的配置文 ...

随机推荐

  1. 家庭记账本之微信小程序(四)

    json的学习 JSON:JavaScript 对象表示法(JavaScript Object Notation). JSON 是存储和交换文本信息的语法.类似 XML. JSON 比 XML 更小. ...

  2. Spring框架第二天

    ## Spring框架第二天 ## ---------- **课程回顾:Spring框架第一天** 1. 概述 * IOC和AOP 2. 框架的IOC的入门 * 创建applicationContex ...

  3. Python之猴子补丁

    1.在运行时,对属性,方法,函数等进行动态替换 2.其目的往往是为了通过替换,修改来增强,扩展原有代码的能力 #test2.py class Person: def get_score(self): ...

  4. 以选项卡的故事扯扯js面向对象

    在现在的网页中,选项卡(我自己这样子叫)是非常普遍的,也是比较基础,学了原型实现选项卡也挺久了,最近在学ES6,学了用类实现选项卡,今天就在此做个总结,别的废话也不多说. 以"貌" ...

  5. codeforces 982B Bus of Characters

    题意: 有n排座位,每排有两个座位,每排座位的宽度都不一样. 有2 * n个人要上车,如果是内向的人,那么它会选择一排两个都是空位并且宽度最小的一排去坐: 如果是外向的人,会选择一排座位已经有人坐的, ...

  6. 0004-20180422-自动化第五章-python基础学习笔记

    内容回顾:1.数据类型 2.for和while循环 continue break #如下循环将怎么打印结果? for i in range(1,10): print(i) for i in range ...

  7. Linux基础命令---lpr打印文件

    lpr lpr指令用来打印文件,如果没有指定文件名,那么从标准输入读取内容.CUPS提供了许多设置默认目标的方法.首先查询“LPDEST”和“PRINTER”环境变量.如果没有设置,则使用lpopti ...

  8. Mysql数据库优化之SQL及索引优化

    1. 如何发现有问题的SQL?  使用mysql慢查询日志对有效率问题的Sql进行监视 (1) show  variables like 'slow_query_log';     查看慢查询日志是否 ...

  9. JS设计模式(4)迭代器模式

    什么是迭代器模式? 定义:提供一种方法顺序访问一个聚合对象中各个元素, 而又无须暴露该对象的内部表示. 主要解决:不同的方式来遍历整个整合对象. 何时使用:遍历一个聚合对象. 如何解决:把在元素之间游 ...

  10. Java Web获取Web应用根路径

    最基本的 1,request.getRealPath("/");这个方法已不推荐用 2,在Servlet 里用this.getServletContext().getRealPat ...