为了账号安全,请及时绑定邮箱和手机立即绑定

在测试更新update(goddess g)这里的代码时,主函数调用,必须每一个变量都set一遍才可以?

	public static void main(String[] args) {
		// TODO Auto-generated method stub
      db_goddess db_god=new db_goddess();
      Goddess g=new Goddess();
      g.setAge(23);
      g.setEmail("12345@email.com");
      g.setIsdel(0);
      g.setBirthday(new Date(2015,3,23));
      g.setSex(0);
      g.setUpdate_user("admin");
      g.setUser_name("rose");
      g.setMobile("1344698");
      g.setId(7);
       db_god.update(g);
	public static void main(String[] args) {
		// TODO Auto-generated method stub
      db_goddess db_god=new db_goddess();
      Goddess g=new Goddess();
      g.setAge(23);
      g.setEmail("12345@email.com");
      g.setMobile("1344698");
      g.setId(7);
       db_god.update(g);

下面这种我就得不到结果,表中的相应记录没有更新,这是为什么呢

正在回答

2 回答

我试了下,不可以,g中不全部赋值update中要更新的字段的话,会引发空指针异常。

创建了一个godness对象时,不全部赋值的话,系统自动为引用变量赋值为null,

当执行INSERT SET user_name=?时,相当于INSERT SET user_name=null, 所以引发空指针异常。

一个可能的办法是在创建godness类时,为每个属性赋一个默认值,后面再用set方法修改需要改的值。

如果你想直接在上一条记录的基础上更改某几个字段,我觉得可以先查询,返回一个g,在这个g的基础上修改。

0 回复 有任何疑惑可以回复我~

可以不用,你update()方法的定义里面涉及到哪些量,对应set哪些量就行

0 回复 有任何疑惑可以回复我~
#1

小不点2016 提问者

update()中肯定要涉及到每一个可能被更改的变量,但是在调用时可能只更改每一个,怎么办呢
2016-08-05 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

在测试更新update(goddess g)这里的代码时,主函数调用,必须每一个变量都set一遍才可以?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信