SSM搭建时遇到的BUG

这篇博客详细记录了SSM(Spring、SpringMVC、MyBatis)框架搭建过程中遇到的问题,包括逆向工程生成重复代码、Mapper接口未被扫描到、Tomcat服务器启动异常、数据源配置错误、Maven聚合工程配置问题以及子项目间依赖问题,并提供了相应的解决办法。
摘要由CSDN通过智能技术生成

SSM搭建时遇到的BUG

1> 使用逆向工程(mybatis-generate)创建项目时xml中出现重复代码:

逆向工程访问到数据库中多个同名表造成的结果:
排除:修改需要使用的表名,重新执行逆向工程
xml的配置中,table标签对于MySQL来说,catalog不适用,若要使用需对方法进行重写。

2> 测试时无法扫描到mapper接口:

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
  • 确认mybatis-sql-cfg.xml文件中标签配置路径无误:package name=“xx/xx/xx”
  • 确认mapper.xml 文件中namespace名称与接口名一致,在mybatis-sql-cfg.xml中未配置typealiases则需要将接口包名全部写入namespace
  • 确认mapper.java接口文件存在,及配置文件mapper.xml与mapper接口名称一致
  • 确认mapper.java与mapper.xml文件处在同一级目录下
  • 若两文件不在同级目录下,在配置文件mybatis-sql-cfg.xml中需对mapper.xml单独配置<mapperresource=“xx/xx/xx/mapper.xml”>

**

3> tomcat服务器测试时出现异常:javax.servlet.ServletException: Servlet.init() for servlet [springmvc] threw

搜索相关方案大部分指出版本不兼容原因:jdk1.8+spring4.0以上,jdk1.7+spirng3.x
确认版本正常,检查web.xml文件时发现未配置监听器

<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

异常解除。
**

4>启动服务器时报错:

Error creating bean with name 'dataSource' defined in file [D:\......] .....Cannot convert value of type 'java.lang.String' to required type 'java.sql.Driver' for property 'driver': no matching editors or conversion strategy found
在dao配置文件中对数据源的driver赋值时,由于value传入的jdbc_driver数据为string类型,若设置name为driver则会产生数据类型不匹配无法赋值的异常,配置文件中driver修改为<property name="driverClassName" value="${jdbc_driver}"></property>

5> maven聚合工程搭建时产生的问题:

聚合工程创建后子项目无法引用到父项目的工具包的情况
确认父类pom中是否引入子项目要使用的依赖<dependency>

确认各个maven工程是否正确配置了打包标签<packing>

  • parent — pom
    • | common — pom
    • | manager — pom
      • | pojo — jar
      • | mapper — jar
      • | service —jar
      • | web —war

确认子项目是否配置父项目工程<parent>
parent ← manager
parent ← common
manager ← { pojo,mapper,service,web }

确认是否配置各个子项目之间的依赖关系<denpendency>
(pojo) <= (mapper) <= (service) <= (web)

6> 在maven工程中子项目之间无法互相引用已创建的类

写service接口测试时,发现service接口内不能创建出pojo里的基本类,pom中已引入mapper依赖,mapper的pom中也有pojo的依赖

maven中子项目之间只有添加了依赖才可以引用其他项目中的类和方法,在service中添加pojo的依赖。
在这里插入图片描述

7>服务器启动后测试,访问url后有异常:HTTP Status 500-......No converter found for return value of type:calss ...

网友的前车之鉴,在spring中没有将对象转换为json的工具类,向web工程中加入依赖:
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
在父工程中控制其版本。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值