最赞回答 / helloworld2008
这个问题,我想回答!第一次发现这个问题的时候,当天晚上睡觉前思考,晚上做梦也在想,对于我这个连菜鸟都算不上的初学者来说是个大问题啊。然后,今天debug了下,知道了问题所在。我们在add女神函数中,sql语句中有的值是直接设定,有的是要通过用户输入的,我们之前写的测试函数,是将每个值都赋了,所以没有出现这个问题;而我们在view类中写的这几个if语句只是赋了姓名,年龄,生日,电话,Email五个信息,而有些既没有设定又没有赋初值的,默认就是null了,此时就会出现nullpointerexception,...
2016-08-09
最赞回答 / _Allen_
造成前面两个null的原因是下面这两行要放在while循环外面,List<Map<String,Object>> params=new ArrayList<Map<String,Object>> ();Map<String,Object> param=new HashMap<String,Object>();
2016-08-06
最新回答 / charsandrew
我试了下,不可以,g中不全部赋值update中要更新的字段的话,会引发空指针异常。创建了一个godness对象时,不全部赋值的话,系统自动为引用变量赋值为null,当执行INSERT SET user_name=?时,相当于INSERT SET user_name=null, 所以引发空指针异常。一个可能的办法是在创建godness类时,为每个属性赋一个默认值,后面再用set方法修改需要改的值。如果你想直接在上一条记录的基础上更改某几个字段,我觉得可以先查询,返回一个g,在这个g的基础上修改。
2016-08-04
最赞回答 / Airly
对 于 JDBC而言, SQL注入 攻 击 只 对 Statement有效, 对 PreparedStatement 是无效的, 这 是因 为 PreparedStatement 不允 许 在不同的插入 时间 改 变查询 的 逻辑结 构。 如 验证 用 户 是否存在的 SQL语 句 为 : select count(*) from usertable where name='用 户 名 ' and pswd='密 码 '如果在 用 户 名字段 中 输 入 ' or '1'='1' or '1'='1或...
2016-08-03