在測(cè)試更新update(goddess g)這里的代碼時(shí),主函數(shù)調(diào)用,必須每一個(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);
下面這種我就得不到結(jié)果,表中的相應(yīng)記錄沒有更新,這是為什么呢
2016-08-25
我試了下,不可以,g中不全部賦值update中要更新的字段的話,會(huì)引發(fā)空指針異常。
創(chuàng)建了一個(gè)godness對(duì)象時(shí),不全部賦值的話,系統(tǒng)自動(dòng)為引用變量賦值為null,
當(dāng)執(zhí)行INSERT SET user_name=?時(shí),相當(dāng)于INSERT SET user_name=null, 所以引發(fā)空指針異常。
一個(gè)可能的辦法是在創(chuàng)建godness類時(shí),為每個(gè)屬性賦一個(gè)默認(rèn)值,后面再用set方法修改需要改的值。
如果你想直接在上一條記錄的基礎(chǔ)上更改某幾個(gè)字段,我覺得可以先查詢,返回一個(gè)g,在這個(gè)g的基礎(chǔ)上修改。
2016-08-05
可以不用,你update()方法的定義里面涉及到哪些量,對(duì)應(yīng)set哪些量就行