平台tomcat6.0,mysql5.1
这样子插入中文显示正常
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/tidos?useUnicode=true&characterEncoding=GBK","root","");
PreparedStatement st=con.prepareStatement("insert into message values(?,?,?,?,?)");
st.setString(1,"中文");
st.execute();
st.close();
con.close();
}catch(Exception e)
{
System.err.println(e);
}
----------------------------------------------------------
我的javabean:
public class GetCon {
private SetBean sb;
private Connection con;
public GetCon(){
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
//"jdbc:mysql://localhost:3306/tidos","root",""
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/tidos?useUnicode=true&characterEncoding=GBK","root","");
}catch(Exception e)
{
System.err.println(e);
}
}
public void setSB(SetBean s)
{
sb=s;
}
public SetBean getSB()
{
return sb;
}
public void addMessage()throws Exception
{
Statement ss=con.createStatement();
PreparedStatement st=con.prepareStatement("insert into message values(?,?,?,?,?)");
st.setString(1,sb.getTitle());
st.setString(2,sb.getName());
st.setString(3,sb.getEmail());
st.setString(4,sb.getContent());
st.setDate(5,new java.sql.Date(new java.util.Date().getTime()));
st.execute();
//st.close();
con.close();
}
}
用到bean的jsp:
<%@page language="java" import="java.util.*,java.sql.*,dd.SetBean" %>
<jsp:useBean id="set" class="dd.SetBean" scope="page">
<jsp:setProperty name="setbean" property="*"/>
</jsp:useBean>
<jsp:useBean id="con" class="dd.GetCon"/>
<body>
<%
try{
con.setSB(set);
con.addMessage();
}
catch(Exception e)
{
e.printStackTrace();
}
%>
</body>
但是这样插入就出现乱码,哪位知道请帮帮我.非常感谢.
这样子插入中文显示正常
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/tidos?useUnicode=true&characterEncoding=GBK","root","");
PreparedStatement st=con.prepareStatement("insert into message values(?,?,?,?,?)");
st.setString(1,"中文");
st.execute();
st.close();
con.close();
}catch(Exception e)
{
System.err.println(e);
}
----------------------------------------------------------
我的javabean:
public class GetCon {
private SetBean sb;
private Connection con;
public GetCon(){
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
//"jdbc:mysql://localhost:3306/tidos","root",""
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/tidos?useUnicode=true&characterEncoding=GBK","root","");
}catch(Exception e)
{
System.err.println(e);
}
}
public void setSB(SetBean s)
{
sb=s;
}
public SetBean getSB()
{
return sb;
}
public void addMessage()throws Exception
{
Statement ss=con.createStatement();
PreparedStatement st=con.prepareStatement("insert into message values(?,?,?,?,?)");
st.setString(1,sb.getTitle());
st.setString(2,sb.getName());
st.setString(3,sb.getEmail());
st.setString(4,sb.getContent());
st.setDate(5,new java.sql.Date(new java.util.Date().getTime()));
st.execute();
//st.close();
con.close();
}
}
用到bean的jsp:
<%@page language="java" import="java.util.*,java.sql.*,dd.SetBean" %>
<jsp:useBean id="set" class="dd.SetBean" scope="page">
<jsp:setProperty name="setbean" property="*"/>
</jsp:useBean>
<jsp:useBean id="con" class="dd.GetCon"/>
<body>
<%
try{
con.setSB(set);
con.addMessage();
}
catch(Exception e)
{
e.printStackTrace();
}
%>
</body>
但是这样插入就出现乱码,哪位知道请帮帮我.非常感谢.
解决方案 »
- 关于服务器SESSION的问题
- No result defined for action org.action.strutsAction and result success
- java中出错啦
- spring + hibernate cascade rollback
- struts分页跳转问题
- JSF中页面加载时就执行action的问题。(谢谢了,急)
- jsp中javabean处理后的中文乱码问题
- springside 的 service使用问题,请高手帮忙
- [精典问题] 使用javaBeans操作数据库疑问全揭露 >>>
- 无效的光标状态
- 请教数据库驱动型多国语言软件项目(网站)的设计方案
- 关于return用法
1. 数据库用INNODB, characterset用UTF-8
2. 数据库连接也用utf-8
jdbc:mysql://localhost:3306/my_db?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8
3. jsp/java都用UTF-8
<%@ page language="java" errorPage="/error.jsp" pageEncoding="UTF-8" contentType="text/html;charset=utf-8"%>这样基本就没有问题了.