使用JDBC连接数据库,查询条件有中文时无结果

news/2024/5/19 1:46:19 标签: JDBC, 查询数据库没有结果

今天在写代码时,使用JDBC连接MySQL数据库,在servlet中写好sql语句后,启动tomcat在浏览器打开,输入查询条件发现没有查询到任何东西,看看控制台发现没有报错。那这个时候能想到的应该就是编码问题了。

我的request和response以及其他的东西都设置成了utf-8编码,包括数据库、表和字段。心累。后来发现原来JDBC的url中也得设置一下编码。遂改成如下格式

private static String url = "jdbc:mysql://127.0.0.1:3306/mybatis?useUnicode=true&characterEncoding=utf-8";

之后就没有问题了。


原因:当你的查询条件中有中文的时候,在传输的过程中会进行转码,如果在url中没设置编码,那么连接到mysql查询时中文就会成为乱码。

我特地在表中增加了一行记录
这里写图片描述
然后把url改成如下形式

private static String url = "jdbc:mysql://127.0.0.1:3306/mybatis";

启动tomcat后打开网页,在网页中输入中文的查询条件,本该是有记录的,但没有任何输出,输入ceshi,则输出第七条记录。这说明上述原因是对的,中文的查询条件在传输到mysql时会进行转码。


别用baidu用google!

个人博客http://www.codeliu.com,欢迎志同道合的小伙伴!


http://www.niftyadmin.cn/n/1236422.html

相关文章

Java进阶--ArrayDeque双端队列完全解析

ArrayDeque的基本用法 public class DequeDemo {public static void main(String[] args) {int []arr{1,2,3,4,5,6,7,8}; ArrayDeque<Integer> aDequenew ArrayDeque<Integer>();for(int i0;i<arr.length;i){if((i&1)0)//如果i是偶数从队头加入&…

编译与运行时动态库与头文件搜索路径优先级

gcc编译时的搜索路径顺序zz gcc编译过程、gcc命令参数、静态库和动态库搜索路径 gcc编译搜索路径顺序 -L -Wl,-rpath-link -Wl,-rpath区别精讲

体验一把腾讯云的Cloud Studio

最近老师布置了一个作业&#xff0c;要求用云上的webIDE进行开发。于是我就开始了WebIDE的体验之旅。 首先我先找到的是华为云的CloudIDE&#xff0c;注册之后&#xff0c;要使用必须先申请内测资格&#xff0c;我中午申请的&#xff0c;大概晚上的时候审核通过了。我迫不及待…

Java进阶--从源码理解Integer类的toString方法

Java中的jdk是深入学习Java编程的宝库&#xff0c;其中各种方法的实现不仅可以深入了解 设计模式的应用&#xff0c;还可以看到jdk编写者如何优化代码&#xff08;这种优化已经到达了一种极端的程度&#xff09;对我们编写自己的代码是有十分重要的作用的。read the fucking so…

eclipse中导入spring详细过程

spring简介 Spring是一个开源框架&#xff0c;Spring是于2003 年兴起的一个轻量级的Java 开发框架&#xff0c;由Rod Johnson创建。简单来说&#xff0c;Spring是一个分层的JavaSE/EEfull-stack(一站式) 轻量级开源框架。 eclipse中导入spring 在导入spring之前先要下载spri…

Mybatis入门配置文件映射文件

这几天很忙&#xff0c;一直断断续续的在学习Mybatis&#xff0c;这篇文章先总结一下Mybatis的配置文件和映射文件。 1.配置环境 首先得现在相应的jar包&#xff0c;点击这里下载&#xff0c;下载好后&#xff0c;进行解压&#xff0c;建议把源码包一起下载&#xff0c;因为里…

C/C++ 笔试、面试题目大汇总(更新中)

https://www.cnblogs.com/fangyukuan/archive/2010/09/18/1829871.html https://blog.csdn.net/Damage233/article/details/81116115 C/C 笔试、面试题目大汇总2 1.求下面函数的返回值&#xff08; 微软&#xff09; int func(x) { int countx 0; while(x) { countx ; x …

网站全面升级https

细心的小伙伴有没有发现我的网站有一把小绿锁了&#xff0c;是的&#xff0c;博主昨天升级了https。血与泪的教训&#xff0c;搞了一天&#xff0c;真的是搞了一天&#xff0c;完全没有夸张的成分&#xff0c;所以我觉得不写一篇文章来纪念一下都对不起它。 因为偶然看到腾讯云…