我在我的应用程序中使用spring mvc3,而在dao层我想使用jdbctemplate,但是我不知道在控制器中添加dao的位置?
例如:
@Controller
public class UserController{
private UserDao udao;
public String list(Model model){
udao=new UserDaoImple();
List<User> users=udao.list();
model.addAttrubut('users',users);
return "list";
}
}
上面的代码只是一个例子,我想知道在哪里创建userdao?
另外,既然我想使用jdbctemplate,建议只为一个datasouce创建一次jdbctemplate,那么如何让所有的daos使用相同的jdbctemplate?
答案 0 :(得分:2)
您可以使用Spring IOC(依赖注入)像这样注入DAO
@Autowired
UserDao userdao;
或者你可以使用存储库模式,并为所有DAO创建一个中心点,这样你就可以去存储库并询问你需要的DAO。
为此你必须创建包含所有DAO的所有实例的单例类,并且当被要求给你的类给出一个实例时,所以你不需要实例化Dao只做一个
Repo.getUserDaoInstance();
在我看来,选择Spring方法,你会学到一项非常有用的技能,当你知道自己在做什么时,它会更容易维护。