日期:2014-05-18  浏览次数:20746 次

useBean 初级问题
newManage   类中的函数:

public   void   updateDatabase(){
Connection   conn=null;


try   {
conn=con.mygetConn();
String   sql= "Insert   Into   Manages(userid,[password],qy,username,job,bm,type)   values(?,?,?,?,?,?,?) ";
PreparedStatement   perstmt=conn.prepareStatement(sql);

String   userid2   =   new   String(userid.getBytes( "ISO-8859-1 "),   "GBK ");
String   qy2   =   new   String(qy.getBytes( "ISO-8859-1 "),   "GBK ");
String   job2   =   new   String(job.getBytes( "ISO-8859-1 "),   "GBK ");
String   bm2   =   new   String(bm.getBytes( "ISO-8859-1 "),   "GBK ");
String   username2   =   new   String(username.getBytes( "ISO-8859-1 "),   "GBK ");
if   ( "1 ".equals(type)){}else{type= "0 ";}
System.out.print( "添加数据! ");
perstmt.setString(1,userid2);
perstmt.setString(2,password);
perstmt.setString(3,qy2);
perstmt.setString(4,username2);
perstmt.setString(5,job2);
perstmt.setString(6,bm2);
perstmt.setString(7,type);
perstmt.executeUpdate();
}catch(Exception   e)   {
e.printStackTrace();
}
}


问题   一:
String   userid2   =   new   String(userid.getBytes( "ISO-8859-1 "),   "GBK ");
String   qy2   =   new   String(qy.getBytes( "ISO-8859-1 "),   "GBK ");
String   job2   =   new   String(job.getBytes( "ISO-8859-1 "),   "GBK ");
String   bm2   =   new   String(bm.getBytes( "ISO-8859-1 "),   "GBK ");
String   username2   =   new   String(username.getBytes( "ISO-8859-1 "),   "GBK ");

  这些,只要当中有一个值是空的,也就是我没有填写,那么整个SQL语句也不会被执行?请问如何解决?

问题   二:
if   ( "1 ".equals(type)){}else{type= "0 ";}   这句好像也有问题.type是从一个复选框传过来的值,如果选中复选框,那么传来的是1,如果没有选中,传过来的就是空值,我想如果传过来的是空值,那么就让type= "0 ";

问题   三:
  就是try   语句,为什么SQL有时候执得不了,或是没有执行,他为什么不报错,从网页上,完全看不出有没有执行,只有在数据库中看一下有没有添加记录,才知道这个有没有被执行.

请高手帮我解答一下这3个小问题   .不胜感谢!




------解决方案--------------------
问题三:
可以将那些个String对象设为全局变量
在页面中输出这些String看看结果是不是和你预计的一致!
------解决方案--------------------
up
------解决方案--------------------
//bean
public class A{
private String sql=null,userid2=null;//你想监控的String
public String getsql(){
return sql;
}
public String getuserid2(){
return userid2;
}
public void updateDatabase(){
......
}
}

//a.jsp
<jsp:usebean id= "a " class=.....\> //根据你的填!
<%
a.updateDatabase();
out.println(a.getsql());
out.println(a.getuserid2());
%>
我是初学者,交个朋友^^
还有一种方法可以看你的数据更新没有的
在bean里面用select取你的数据,然后再在JSP中打印出来