1、问题所在
刚开始学习java,在进行一个查询功能的开始时,总是查询不到应有的结果,SQL在数据库中也是正确的,后面通过定位,发现了问题所在com.mysql.jdbc.JDBC4PreparedStatement@7c698adc: select * from stu where stuName='???'。原来是prepareStatement在执行时,将中文解析为乱码
2、解决方法
设置datasource的driver时jdbc.url=jdbc:mysql://localhost:3306/test时没有指定编码,修改为url="jdbc:mysql://localhost:3306/test?characterEncoding=utf8"即可解决