出现明明SQL语句没问题,但是却无法通过代码查询到结果的问题。
2024-09-24 04:43:26
问题:SQL语句查询不到记录,导致空指针异常
SQL语句:
select * from mixinfo where infotype='网站简介'
代码:
publicList<HashMap> select(String sql)
{
System.out.println(sql);
List<HashMap> list = new ArrayList();
try {
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery(sql);
ResultSetMetaData rsmd = rs.getMetaData();
while(rs.next())
{
HashMap map = new HashMap();
int i = rsmd.getColumnCount();
for(int j=1;j<=i;j++)
{
if(!rsmd.getColumnName(j).equals("ID"))
{
String str = rs.getString(j)==null?"": rs.getString(j);
if(str.equals("null"))str = "";
map.put(rsmd.getColumnName(j), str);
}
else
map.put("id", rs.getString(j));
}
list.add(map);
}
rs.close();
st.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
if(sql.equals("show tables"))
list = select("select table_name from INFORMATION_SCHEMA.tables");
else
e.printStackTrace();
}
return list;
}
原因:
可是是因为SQL语句中的中文字符传递的时候乱码了,我遇见的问题是这个。
解决办法:在连接SQL的URL中添加?【useUnico
de=true&characterEncoding=UTF-8】
若URL在xml配置文件中配置的则在URL后添加?【useUnicode=true&characterEncoding=UTF-8
】
最新文章
- 网站开发网页广告条不显示,出现ERR_BLOCKED_BY_CLIENT
- cordova插件开发注意事项
- Oracle 中的作业队列和队列调度
- net-snmp的dateandtime数据类型
- paip.hql的调试故障排查流程总结
- 阿里云ECS/Ubuntu下JDK、Tomcat、MySQL安装记录
- jquery的prop()和attr()
- poj 1986 Distance Queries
- 在stm32上移植wpa_supplicant(一)
- 转载JSON格式化工具
- HTML5之 离线数据存储
- 手动进行Excel数据和MySql数据转换
- JS函数调用
- C-Free 5.0编译失败问题解决办法
- ROS机器人程序设计(原书第2版)补充资料 (贰) 第二章 ROS系统架构及概念
- js前端性能优化之函数节流和函数防抖
- Django之admin中管理models中的表格
- [Oracle]OWI学习笔记--001
- Hadoop原生态版安装
- 安装 aconda 后Linux的终端界面前部出现(base)字样
热门文章
- Ubuntu 16.04 卸载Postgresql
- Codeforces 915G Coprime Arrays 莫比乌斯反演 (看题解)
- HDU1693 Eat the Trees 插头dp
- Linux安装Tomcat-Nginx-FastDFS-Redis-Solr-集群——【第九集之安装Tomcat+Nginx反向代理Tomcat集群】
- systemd创建自定义服务(Ubuntu)
- 反向传播算法(前向传播、反向传播、链式求导、引入delta)
- day10.函数,函数的参数
- Nginx的配置安装和使用
- Git branch 出现";HEAD detached at head xxxxx";
- 做项目单个功能的时候要理解需求和sql语句。