需要生成这样的语句
update user set age = age + 1 where name = "wendal";
用NutDao和Chain写出来哦
--------------------------圣诞节的分割线-----------------------------
有人问为啥昨天没更新,我想说,昨天是啥日子, 你懂的啊, 为啥还问呢,,,,
上期的答案:
dao.js -------- json格式的ioc配置文件, 由JsonLoader读取
IocBean ------ 注解形式的ioc配置, 由AnnotationIocLoader读取
ioc.xml --- 比较少见的xml配置方式, 由XmlIocLoader读取
无论何种方式读取, 最终都是转为IocObject类的实例, 也就是统一的配置对象. 这意味着:
dao.js 命名为no.js, bac.js, 圣诞节.json 对JsonLoader没区别
同理, xml文件的命名也无意义.
用dao.js和注解来描述一个bean, 是语义等价的, 区别仅在于json与注解这两者写法在各自的语法规则下的约束, 例如json可以写个数组注入, 注解就写不来. 而注解只能标注在你能修改的类上, 其他类除非你继承它,否则没法直接用注解标注.
需要注意的配置的顺序:
Ioc的配置信息是有序的,按读取到顺序排列, 同一个名字的bean, 如果js中声明了, 注解也声明了, 那么, 到底用哪里的配置, 由ComboIocLoader的参数顺序决定了
下面两端代码,如果js和注解中有重名的bean,那么两者不等价
js放前面, js优先
@IocBy(type=ComboIocProvider.class, args={"*js", "conf/dao.js", "*annotation", "net.wendal"})
js放后面, 那么注解优先
@IocBy(type=ComboIocProvider.class, args={"*annotation", "net.wendal", "*js", "conf/dao.js"})