JSP页面连接数据库 查询时输入汉字查不出来把数据库里边的汉字改成1 2 3 或者a b 就可以查出来 求解

 我来答
清心又谦恭丶布丁9
2011-09-25 · TA获得超过6605个赞
知道小有建树答主
回答量:1247
采纳率:100%
帮助的人:1881万
展开全部
楼主,估计你在页面转码的时候出现乱码了。。
建议你在那边打个断点,看看你中文的时候变量的值是不是乱码。我估计你是出现中文乱码了。所以和数据库中的数据不对应,当然找不到了。
追问
断点怎么打  您详细说说  我初学者
追答
........你在哪里取数据库的地方就在那打个断点啊。。
在你显示行数的地方双击。然后通过调试。。。。
楼主你都学到jsp了。。。还不晓得打断点。我也纠结
方听南
2011-09-25 · TA获得超过772个赞
知道小有建树答主
回答量:660
采纳率:100%
帮助的人:118万
展开全部
href跳转:

在JSP页面的头文件,这里设为:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

页面加密:encodeURI(encodeURI(x))在HTML页面用JS加密
如:
<script type="text/javascript">

function addCT(){
window.location.href=encodeURI(encodeURI("SerchServlet?name="+document.getElementById("name").value));
}

</script>

假设你输入查寻的text控件的id为name;

解码:URLDecoder.decode(x,"utf-8")在从map里取出来时解密

String name = URLDecoder.decode(request.getParameter("name"),"utf-8");

如果是post或get提交则:

设页面编码:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

servlet:

String name = new String(request.getParameter("name").getBytes("ISO-8859-1"),"UTF-8");

这个id就可以读汉字了,不会出现乱码。

注意引包。有问题HI叫我。
追问
还是不行 你帮忙看看前边代码写的对吗  
<%
request.setCharacterEncoding("gb2312");
String a=request.getParameter("chufazhan");
String b=request.getParameter("zhongdianzhan");
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
easysoft_ln
2011-09-26 · TA获得超过1208个赞
知道大有可为答主
回答量:1.3万
采纳率:41%
帮助的人:4722万
展开全部
页面编码utf-8 ,
数据库utf-8
url中文参数用encodeuri编码再decode解码
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
野草064
2011-09-25 · TA获得超过475个赞
知道小有建树答主
回答量:256
采纳率:0%
帮助的人:230万
展开全部
String(str.getBytes("ISO8859_1"),"GBK")
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式