读书人

有在servlet中往的

发布时间: 2011-12-30 23:30:45 作者: rapoo

有在servlet中往的
我在servlet中往插入,表字段字符型,我入字,保存正常,我入字母或字,IE地址中出servlet址(http://192.168.0.29/bbs/SaveAreaServlet),面一片空白,中未存入,很是迷茫,大家解惑
代如下:
//取名、介
String areaName=request.getParameter( "areaName ");
String areaIntr=request.getParameter( "areaIntr ");
//建接象
DBConnManager connManager=new DBConnManager() ;
Connection conn=connManager.getConnection();
Statement stmt=null;
ResultSet rs=null;
int r=0;
try
{
//sql句
String sql= "insert into area(name,intr) values( "+areaName+ ", "+areaIntr+ ") ";
//建集象
stmt=conn.createStatement();
//
r=stmt.executeUpdate(sql);
if(r!=1)
{
request.getSession(true).setAttribute( "error ", "添加失 ");
response.sendRedirect( "error.jsp ");
}
else
{
response.sendRedirect( "area.jsp ");
}
}catch(SQLException sqlExc)
{
sqlExc.printStackTrace();
}catch(Exception e)
{
e.printStackTrace();
}finally
{
//接,放源
try
{
if(rs!=null)
{
rs.close();
}
if(stmt!=null)
{
stmt.close();
}
connManager.releaseConnection(conn);
}catch(SQLException sqlExc)
{
sqlExc.printStackTrace();
}
}

[解决办法]
正确的应该是
String sql= "insert into area(name,intr) values( ' "+areaName+ " ', ' "+areaIntr+ " ') ";
[解决办法]
sql语句这样写吧,String sql= "insert into area(name,intr) values( ' " + areaName+ " ', ' "+areaIntr+ " ') ";
[解决办法]
1.SQL语句有问题
2,在String areaName=request.getParameter( "areaName ")之前加上request.setCharacterEncoding( "utf-8 ");此处的字符集应该跟页面所使用的字符集相同,如果页面使用的是gb2312则此处应该也是gb2312

读书人网 >Java Web开发

热点推荐