用jsp连接mysql显示中文时出现乱码

  最近趁着下岗没事干,学了一点JSP,鼓弄了半天终于连上了MYSQL,不过发现从MYSQL中搜索出的中文显示不了。全是???。上网搜了一下发现MY

  SQL中不支持UNICODE只支持ISO-88591,于是天才的我想出了解决的办法:)把搜索出来的字符串转成字节数组,然后用这个字符数组创建一个GB2312的字符串。

  <%=newString(rs。getString(2)。getBytes("iso8859-1"),"gb2312")%>

  反正很简单我也不过多解释。

  下面附上所有代码。可能有的人不知道怎么用JSP连接数据库。

  其中people是数据库的名称root是用户名000000是密码

  另外需要一个mysql的jdbc驱动。我用的是:mysql-connector-java-3。0。15-ga-bin。jar

  网上到处可以找到,只需要把这个文件下载下来放在你这个jsp文件所在的目录中\WEB-INF\lib下就可以了。

  =========================testmysql。jsp=========================

  <%@pagecontentType="text/html;charset=GBK"%>

  <%@pagelanguage="java"import="java。sql。*"%>

  <%

  java。sql。Connectionconn;

  java。lang。StringstrConn;

  Class。forName("org。gjt。mm。mysql。Driver");

  conn=java。sql。DriverManager。getConnection("jdbc:mysql:///people","root","000000");

  Statementstmt=conn。createStatement();

  ResultSetrs=stmt。executeQuery("SELECT*FROMt_1");

  %>

  <%

  for(inti=0;rs。next();i++){

  %>

  <%=newString(rs。getString(2)。getBytes("iso8859-1"),"gb2312")%>

  <
>

  <%}%>

  ===========================表的结构==============================

  #--------------------------------------------------------

  #

  #表的结构`t_1`

  #

  CREATETABLE`t_1`(

  `id`int(4)NOTNULLdefault’0’,

  `name`char(20)NOTNULLdefault’’,

  `phone`int(20)defaultNULL,

  PRIMARYKEY(`id`)

  )TYPE=MyISAM;

  #

  #导出表中的数据`t_1`

  #

  INSERTINTO`t_1`VALUES(1,’我不是’,2147483647);

  INSERTINTO`t_1`VALUES(2,’猪’,2147483647);

  =====================================================================

  OK,写完了。。。。懂的人看起来肯定很简单,(责任编辑:admin)

点击查看更多 [java] [乱码] [jsp] [mysql]

(本文来源) https://www.netded.com/a/jishuyingyong/2009/1113/5053.html

版权声明:
作者:[db:作者]
链接:https://www.shoujiroot.com/archives/23479.html
来源:手机教程
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>