当前位置: 代码迷 >> J2EE >> 在POJO中流入一个Dao
  详细解决方案

在POJO中流入一个Dao

热度:47   发布时间:2016-04-17 23:28:03.0
在POJO中注入一个Dao?
在ssh框架下;
有一个功能类SomeService.java  其接口为ISomeService.java

一般情况下在用的地方,定义一个属性,使用@Service 与 @Autowired就可实现属性注入,如下:

@Service
public class XXXXAction {

    @Autowired
    private ISomeService someService;

    ... ...
}

现在我有个问题是,可否在实体类(POJO)中注入一个SomeService对象;
User是一个实体。
类似下面的写法:
public class  User {

    @Autowired
    private ISomeService someService;

    ... ...
}

我想要在User的某个方法中用到someService,希望用hibernate查询出所有User对象已注入了someService;
比如:List<User>  users = XX.findByHql("from User");
此时,希望users中的每个对象中someService都被正确赋值,不为null


这个自动注入的功能能实现吗?有可能没有

------解决思路----------------------
被三层架构给毒害了,,,
Spring注入dao,注入service和注入其它的类有什么区别吗??
没有的.Spring功能远比你现在这样用的强大.
------解决思路----------------------
通过加注解注入肯定是不可能的,因为hibernate的内部实现跟spring没啥关系,所以通过hibernate查询出来的对象不会自动注入。
像你那种方式肯定可以,不过奇怪的是为什么有这种奇怪的写法。同样的需求应该可以有很多种方式来实现吧。
  相关解决方案