代码看起来没问题啊:
- Java code
public int registerUser()throws Exception { int i=0; DBconn db=new DBconn(); Connection con=null; PreparedStatement stmt=null; //User u1=new User(); try { con=db.getConnection(); stmt=con.prepareStatement("insert into userTable(name,password) values(?,?)"); stmt.setString(1,username); stmt.setString(2,password); i=stmt.executeUpdate(); }catch(Exception e) { e.printStackTrace(); } finally { stmt.close(); //con.close(); db.closeConnection(con); } return i; } public String execute()throws Exception { if(registerUser()!=0) { return "success"; } else { return "fail"; } }
------解决方案--------------------
...
我问一下 楼主 在用这个register 类得时候 是不是
先 new 一个register 对象
然后 调用set()方法给name和password赋值了
然后再 调用execute()方法判断是否注册成功 //实际上就是判断数据库插入是否成功
你要判断 到底是 execute()方法里调用的registerUser()方法返回的值到底是多少 是不是数据库插入失败
如果是数据库插入失败 那么从数据库方面去想问题 是不是连接不对,语句不对 比如表名什么的是不是不对
如果数据库没问题 那么想想是不是name/password没赋值 就是set方法没调用
别的 也没什么问题我想