找不到类SimpleJdbcTemplate ParameterizedRowMapper cannot be resolved
找不到类SimpleJdbcTemplate
背景
想编译个web应用,原来spring-jdbc.jar用的是Spring 3.1,今天改成用Spring 4.3,报了这个错误。
现象
编译不通过,报错如下:
| 
 1 
2 
3 
4 
5 
6 
 | 
Error:(19, 44) java: 找不到符号  符号:   类 SimpleJdbcTemplate  位置: 程序包 org.springframework.jdbc.core.simpleError:(17, 44) java: 找不到符号  符号:   类 ParameterizedRowMapper  位置: 程序包 org.springframework.jdbc.core.simple | 
原因
从Spring 3.1开始,JdbcTemplate和NamedParameterJdbcTemplate提供了SimpleJdbcTemplate的功能。
SimpleJdbcTemplate和SimpleJdbcDaoSupport被标记为过时,到Spring 4.3则被完全移除。
注:org.springframework.jdbc.core.simple.ParameterizedRowMapper也已经被移除
至于是在哪个版本的时候被移除就不清楚了。
解决办法
思路
用
org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate
代替
org.springframework.jdbc.core.simple.SimpleJdbcTemplate. 用
org.springframework.jdbc.core.RowMapper
代替
org.springframework.jdbc.core.simple.ParameterizedRowMapper.
具体办法
问题来了,当有分散在多地的代码都使用了SimpleJdbcTemplate,如何快速地替换为NamedParameterJdbcTemplate
如果你对IDE非常熟悉,或许能很快全局替换,然而本人智商比较爪机,使用sed命令更合适点。
用*RowMapper*替换*ParameterizedRowMapper*
| 
 1 
 | 
sudo sed -i 's/org.springframework.jdbc.core.simple.ParameterizedRowMapper/org.springframework.jdbc.core.RowMapper/g' `grep -rl 'org.springframework.jdbc.core.simple.ParameterizedRowMapper'` | 
用*NamedParameterJdbcTemplate*替换*SimpleJdbcTemplate*
| 
 1 
 | 
sudo sed -i 's/org.springframework.jdbc.core.simple.SimpleJdbcTemplate/org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate/g' `grep -rl 'org.springframework.jdbc.core.simple.SimpleJdbcTemplate'` | 
说明
grep是查找命令,选项r表示级联查找,选项l表示输出包含目标的文件(不加l是输出匹配到的行)。
sed是编辑命令,选项i表示将更改写入文件(不加的话是只将更改输出到console)。
| 
 1 
 | 
s/org.springframework.jdbc.core.simple.ParameterizedRowMapper/org.springframework.jdbc.core.RowMapper/g | 
↑是全局替换的意思。
另外,注意区别反引号和单引号哦。
找不到类SimpleJdbcTemplate ParameterizedRowMapper cannot be resolved的更多相关文章
- Oracle EBS Java Applet报错:找不到类
		
Oracle EBS Home Page可以打开,但是无法打开EBS的Form,查看Java控制台,有错误报出. java控制台报错,如下: Java Plug-in 1.6.0_07 使用 JRE ...
 - 错误:找不到类org.springframework.web.context.ContextLoaderListener
		
严重: Error configuring application listener of class org.springframework.web.context.ContextLoaderLis ...
 - .PHP后缀大写导致Linux下Composer找不到类
		
在本地Windows写完一个Composer包,上传到Linux报错找不到类,纠结了一下午,最后发现是.PHP后缀大写导致的问题. mv Google2FA.PHP Google2FA.php
 - RMIC命令提示找不到类的问题
		
问题环境: RMI服务类已经写好. 目录结构: -- A ----- B -------- C ------------- RMIImpl.class RMIImpl.java : package B ...
 - idea下使用Maven找不到类
		
当我们配置好pom文件的时候,准备启动Tomcat,Tomcat缺报找不到类的错误.. 可是明明我们的pom文件是没有问题的,在web.xml中也是可以ctrl+鼠标左键把类找到-为啥就报这么一个错误 ...
 - 解决Android studio生成H文件时报找不到类文件错误
		
今天整理思路时觉得在native直接调用java的方法显示这个办法挺不错 于是就用到了生成H文件 可能我的编译环境和他们的不一样 网上的教程如下 javah -d ../jni com.jm.prom ...
 - Java和Javac的使用时总提示找不到类模块的解决方案
		
1.场景: 争对网上的很多文章中javac编译与java运行的文章,有很多不明确的地方,使得在合适时发现很多坑.这里给大家作下简介. 2.Javac的使用注意: javac -d ./ ./Insta ...
 - eclipse中运行 main 方法报错,找不到类
		
eclipse (maven 项目)中运行 main 方法报错,找不到类 ** 发现:在 eclipse中的 "Marker" 控制面板中 ,发现问题所在 只要删除 maven 仓 ...
 - atitit。解决 No suitable Log constructor。。NoClassDefFoundError: org/apache/log4j/Category 找不到类的
		
atitit.解决 No suitable Log constructor..NoClassDefFoundError: org/apache/log4j/Category 找不到类的 1. 深的层次 ...
 
随机推荐
- mysql里max_allowed_packet的作用
			
MySQL根据配置文件会限制Server接受的数据包大小.有时候大的插入和更新会受 max_allowed_packet 参数限制,导致写入或者更新失败. 查看目前配置: 代码如下: show VAR ...
 - day26 面向对象的常用方法 和 元类的使用
			
1. 面向对象中的常用方法 ***** isinstance() # 判断某个对象是不是某个类的实例 # 判断stu对象是不是Student类的实例 是不是子类 issubclass() class ...
 - springboot security 获取当前登录用户名
			
System.out.println(((User)SecurityContextHolder.getContext().getAuthentication().getPrincipal()).get ...
 - java使用正则表达式
			
package com.regexp; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Tes ...
 - computed
			
Vue.js在模板表达式中限制了,绑定表达式最多只能有一条表达式,但某些数据需要一条以上的表达式运算实现,此时就可以将此数据放在计算属性(computed)当中. Vuejs中关于computed ...
 - httpclient使用用例
			
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import jav ...
 - vue 父组件使用子组件中的data或methods
			
1.调用子组件的时候 定义一个ref 2.在父组件里面通过 this.$refs.verify.属性 this.$refs.verify.方法
 - Django的具体操作(一)
			
一,首先说下什么是Django,Django其实就是一个框架,用python写的,能开发网站之类的. 二,django的组成 1,urls:网址入口关联到对应的views视图函数,(采用mvc开发模式 ...
 - mybatis插入数据并获取主键值
			
有时候我们的主键是自增的,但是我们想要在插入一条数据以后获取这条数据的主键值,而我们知道,mybatis执行完插入操作以后返回的是生效的记录数.那如何才能获取这个主键值呢. 1.在配置文件mapper ...
 - 高盛oa
			
一道题根本不会,抄答案过了.一道自己写,莫名其妙出现了不会的bug.最后交了暴力解,过了5/7.估计要跪. 总结: 缺点:做过的不熟练.没做过的题不会.一个陌生的小bug也de不出来. 措施:多总结还 ...