NutzCN Logo
问答 IocBean中的fileds属性到底跟什么有联系?
发布于 2513天前 作者 不断奔跑的小菜鸟 1775 次浏览 复制 上一个帖子 下一个帖子
标签:
@At("/user")
@IocBean(name="hello", fields = {"dao"})
public class Hello extends NameEntityService{
   /* @Inject("testService")
    private TestService testService;*/
 /*   @Inject
    public Dao dao;*/
    @At("/login")
    @Ok("jsp:/pages/index")
    public void login(){
        food f=this.dao().fetch(food.class, 1);
       food ffff= this.dao().fetch(food.class, 1);
        food foo = this.dao().fetchLinks(f, "pets");
        System.out.print("数据的条数"+foo.getPets().size());
        for(pet p:foo.getPets()){
            System.out.println("打印出来的name" + p.getName());
            pet pp=this.dao().fetch(pet.class, p.getId());
            pet ppp=this.dao().fetchLinks(pp,"foods");
            for(food ff:ppp.getFoods()){
                System.out.println("打印出来的food"+ff.getName());
            }
            System.out.println("打印出来的id" + p.getId());
        }

    }
var ioc = {
    dataSource : {
        type : "org.nutz.dao.impl.SimpleDataSource",
        fields : {
            jdbcUrl : 'jdbc:mysql://localhost:3306/nutz?characterEncoding=UTF-8',
            username : 'root',
            password : '551969'
        }
    },
    dao : {
        type : "org.nutz.dao.impl.NutDao",
        args : [{refer:"dataSource"}]
    }

}
var ioc = {
    hello:{
        type:"com.askj.action.Hello",
        fileds:{
            dao : 'dao'
        }
    }

}

为什么我fileds={"hello"}就报错了 这个fileds到底和什么挂钩

6 回复

这个字段dao代表的是父类的字段dao还是配置js文件中的dao呢

同一个bean, 只能是js生效或者是注解生效, 不会一起生效的, 通常情况下是js的优先,取决于@IocBy的args里面的顺序.

IocBean(name="testModule",fields="dao")就是说fields指向dao 就不需要注解了是吧

@IocBean的fields主要用于注入超类的属性, 如果是当前类的属性,加@Inject才是首选

添加回复
请先登陆
回到顶部