记CRM项目踩过的坑

SSM框架学完后正式开始的第一个项目,虽然是个教学项目,但是也会了解到一些实际项目时的开发流程和开发规范,此篇记录一下在写代码时遇到的大大小小的问题

教学项目来自动力节点的[SSM框架项目实战-CRM客户管理系统](SSM项目实战视频教程全套免费下载-动力节点 (bjpowernode.com))

无法找到Mapper配置文件

异常:

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)

原因:

无效的绑定语句,说明无法找到mapper.xml文件,此时要么就是xml配置文件的包放错了,要么就是打包后并没有把xml配置文件一起打包进去,发生于xml文件在src目录下

解决方案:

在Maven配置pom.xml中build标签下把xml也放进打包的范围

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<build>
<finalName>CRM</finalName>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
</resource>
</resources>
</build>

Mybatis中parameterMap属性

错误信息:

java.lang.IllegalArgumentException: Parameter Maps collection does not contain value for work.wucheng.crm.settings.mapper.UserMapper.map

原因:

select标签中的 parameterMap属性已经弃用,自动补全一不小心补快了

解决:

parameterMap换成 parameterType即可

EL表达式失效

原因:

Servlet 3.0后默认关闭了jsp对EL表达式的解析

解决:

在JSP页面中添加 <%@ page isELIgnore="false"%>这一条语句关闭忽略EL表达式即可