在myeclipse后台中读取到中文,但是mysql数据库中却是一堆问号

在myeclipse后台中可以读取到中文,但是mysql数据库中却是一堆问号,mysql中的数据库字符集是utf8--UTF-8Unicode求教高人,看了很多解决乱码的... 在myeclipse后台中可以读取到中文,但是mysql数据库中却是一堆问号,mysql中的数据库字符集是utf8 -- UTF-8 Unicode
求教高人,看了很多解决乱码的方法,但是都试过了,都不行。
分数不高 已是倾我之所有,希望高人帮我,不胜感激!

我是使用MVC模式开发的 在addBlog.jsp页面接收参数并提交给BlogServlet进行处理,BlogServlet调用BlogBeanCk的addBlog方法 然后进行处理

addBlog.jsp页面(字符编码UTF-8)
<form method="post" action="BlogServlet">
<table width="720" border="1" align="center" cellpadding="0" cellspacing="0">
<tr>
<td colspan="2" align="center">请输入博客内容</td>
</tr>
<tr>
<td>主题:</td>
<td>
<input name="title" type="text" size="60" />
</td>
</tr>
<tr>
<td>分类:</td>
<td>
<select name="category" id="select">
<option value="1">精彩转载</option>
<option value="2">心情日记</option>
</select>
</td>
</tr>
<tr>
<td>内容:</td>
<td>
<textarea name="content" cols="75" rows="15"></textarea>
</td>
</tr>
<tr>
<td>
<input type="reset" name="reset" value="重 置" />
</td>
<td><input type="submit" name="submit" value="提 交" /></td>
</tr>
</table>
</form>

BlogServlet中的doPost方法
request.setCharacterEncoding("UTF-8");

//接收addblog.jsp页面的参数
String categoryId=request.getParameter("category");
String title=request.getParameter("title");
String content=request.getParameter("content");

//后台读取
System.out.println(categoryId);
System.out.println(title);
System.out.println(content);

//调用BlogBeanCk的方法
BlogBeanCk bbc=new BlogBeanCk();
if(bbc.addBlog(categoryId, title, content)){
//添加成功 跳转到成功的页面
request.getRequestDispatcher("suc.jsp").forward(request, response);
}else{
//反之 跳转到失败的页面
request.getRequestDispatcher("err.jsp").forward(request, response);
}

BlogBeanCk里面的addBlog方法
public boolean addBlog(String categoryId,String title,String content){
boolean b=false;
try {
//数据库连接
ct=new ConnDB().getConn();
String sql="insert into blog (category_id,title,content,created_time) values(?,?,?,now())";
ps=ct.prepareStatement(sql);
ps.setString(1, categoryId);
ps.setString(2, title);
ps.setString(3, content);
int i=ps.executeUpdate();
if(i==1){
//添加成功
b=true;

} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}finally{
//关闭资源的方法
this.close();
}
return b;
}
哈哈 自己解决了 解决方案:http://hanxin830311.javaeye.com/blog/273080
二楼的说对了一点 就给你分把 谢谢各位出谋划策
展开
 我来答
dengjf5603
2010-05-25 · TA获得超过121个赞
知道答主
回答量:88
采纳率:0%
帮助的人:80.6万
展开全部
应该不关代码的事,估计是你的mysql管理器(如 EMS SQL Manager 2005 for MySQL)的编码设置有问题,把客户端的编码设置成GBK试试,
xef6273
2010-05-25
知道答主
回答量:6
采纳率:0%
帮助的人:6.1万
展开全部
String content=request.getParameter("content");
你在进行中文接收的时候这样接收到的应该就直接是乱码了
并不是你在往数据库里边写时候成乱码的
String content = new String( request.getParameter("content").getBytes("ISO8859-1"),"GBK");
这样才能保证你获取到的是中文的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yuanyuan7891
2010-05-25 · TA获得超过527个赞
知道小有建树答主
回答量:286
采纳率:80%
帮助的人:107万
展开全部
我的在数据库是中文,取出来就是乱码了。和你的情况有点类似,也试了很多方法了,在别人机子上是好的就在我机子上不行,怀疑是MyEclipse的编码设置问题,没有解决,期盼能在这里得到启发和解答。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式