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);
下面这种我就得不到结果,表中的相应记录没有更新,这是为什么呢
我试了下,不可以,g中不全部赋值update中要更新的字段的话,会引发空指针异常。
创建了一个godness对象时,不全部赋值的话,系统自动为引用变量赋值为null,
当执行INSERT SET user_name=?时,相当于INSERT SET user_name=null, 所以引发空指针异常。
一个可能的办法是在创建godness类时,为每个属性赋一个默认值,后面再用set方法修改需要改的值。
如果你想直接在上一条记录的基础上更改某几个字段,我觉得可以先查询,返回一个g,在这个g的基础上修改。
可以不用,你update()方法的定义里面涉及到哪些量,对应set哪些量就行