request.setCharacterEncoding("gb2312");Datenow=newDate();SimpleDateFormatdateFormat=newSimpleDateFormat("yyyy-MM-ddHH:mm:ss");Stringtpctm=dateFormat.format(now);//Stringt...
request.setCharacterEncoding("gb2312");
Date now=new Date();
SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String tpctm=dateFormat.format(now);
//String tpcct=request.getParameter("TopicContent");
String tpcauth=request.getParameter("TopicAuthor");
String tpcid=request.getParameter("TopicID");
String tpcct=new String(request.getParameter("TopicContent").getBytes("ISO8859_1"),"gb2312");
String disauth=tpcauth;
Connection conn;
Statement stmt;
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/diss","root","123");
stmt= conn.createStatement();
String sql="insert into topic(TopicContent,TopicAuthor,TopicTime) values ('"+ tpcct+ "','" + tpcauth + "','" + tpctm +"')";
stmt.executeUpdate(sql);
conn.close();
测试输出sql语句没有问题了,将sql语句在数据库编辑里直接执行也没有问题,就是程序执行出来还是乱码
展开
本文介绍了一种在Java程序中向MySQL数据库插入中文字符时遇到的乱码问题及其解决方案。通过调整字符编码设置,确保从请求参数获取的数据正确转换为GB2312编码,避免了数据库记录出现乱码。

1509

被折叠的 条评论
为什么被折叠?



