jdbc乱码问题
具体业务:
实现模糊查询,用户输入关键字。
问题:
中文状态下查询不到问题?
根据debug可以查看问题所在:
String sql="select p.bar_code,c.category_name,p.product_name,
p.sale_price,s.supplier_name from biz_product p,biz_supplier s,biz_category c
where p.product_name like ? and p.category_id=c.id and p.supplier_id=s.id and p.deleted=0 ";
//like ?:模糊查询条件
变量存在,但是赋值给like ? 时候,没有附上,也可以说是乱码赋值上了。执行不成功!
解决办法
1、数据库字段设置编码格式为utf8
2、编译工具(idea)设置编码格式为utf-8
3、在jdbc连接数据库时定义编码格式characterEncoding=utf-8