当前位置: 技术问答>java相关
怎么会发生这种情况?
来源: 互联网 发布时间:2015-10-20
本文导语: 我做的jsp与数据库相连,在通过一个页面输入要查询的关键字,则在另外一张页面上显示出与该关键字相关的信息。用了 newStr = new String( str.getBytes("GBK"),"ISO8859_1")或反过来的方法转换, 也没有漏掉 部分,但是查...
我做的jsp与数据库相连,在通过一个页面输入要查询的关键字,则在另外一张页面上显示出与该关键字相关的信息。用了
newStr = new String( str.getBytes("GBK"),"ISO8859_1")或反过来的方法转换,
也没有漏掉
部分,但是查询的时候,关键字若是中文字符,则只能输入一个字,否则就报错,说字符语法错误
而在另一张页面上对数据库进行插入数据操作时,每次插入的中文字符只能在两个获两个以下(指的是一个属性,而不是所有的加起来才两个字符),如果大于三个或三个以上,则在数据库中插入的值为"?"根本不对数据库进行操作
我用的系统是2000pro+tomcat(好像是1。2版的),用的数据库是access2000
请问各位高手,这到底是怎么回事?
这为题已经折磨我一个星期了
多谢了!
newStr = new String( str.getBytes("GBK"),"ISO8859_1")或反过来的方法转换,
也没有漏掉
部分,但是查询的时候,关键字若是中文字符,则只能输入一个字,否则就报错,说字符语法错误
而在另一张页面上对数据库进行插入数据操作时,每次插入的中文字符只能在两个获两个以下(指的是一个属性,而不是所有的加起来才两个字符),如果大于三个或三个以上,则在数据库中插入的值为"?"根本不对数据库进行操作
我用的系统是2000pro+tomcat(好像是1。2版的),用的数据库是access2000
请问各位高手,这到底是怎么回事?
这为题已经折磨我一个星期了
多谢了!
|
o~~~问题可能出在数据库,你数据库内的数据类型定义范围太小,比如你定义一个nchar(2)(注:sql server 2000),你输入"是是",或者"是",那没问题,如果你超过这个数,就存不了,既然你没存进去那提提取也有问题就很自然了.
|
试试
newStr = new String( str.getBytes("ISO8859_1"),"GB2312")
newStr = new String( str.getBytes("ISO8859_1"),"GB2312")
|
用post方法传递输入的数据,
在接受处
flowName=request.getParameter("flowName");
flowName=new String(flowName.getBytes("ISO8859_1"));
在接受处
flowName=request.getParameter("flowName");
flowName=new String(flowName.getBytes("ISO8859_1"));
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。