jsp前端向后台数据库传空值
例如:
PreparedStatementstmt = null; sql = "UPDATE TEMPL SET PHONENO = ? " + "WHERE EMPNO = '000110' "; stmt = con.prepareStatement(sql); if (some condition) { stmt.setString (1, name);} else { stmt.setString (1, newphone); } updateCount = stmt.executeUpdate(); }
这种方式适用范围有限,当setInt(1,null)或是setFloat(1,null)、setShort(1,null)时都无法正常运行,只有当类型为java对象时可以执行成功,例如setString(1,new String(null)、setBigDecimal(1,new BigDecimal(null))等。
还有一种解决办法是通过判断传入的是否为空去重新new一个对象
if(name==null) name=new String();