如何在SpringMVC 的@Controller 层中获取bean

来源:互联网 发布:edge网络是什么 编辑:程序博客网 时间:2024/06/10 00:02


import *************************
import *************************

import *************************


//如果你要在SpringMVC 的 @Controller 层中获取 Spring托管的bean 你可以通过实现 ApplicationContextAware 这个接口
@Controller
public class BookController implements ApplicationContextAware {

         private WebApplicationContext context;

        @Override    //这个是ApplicationContextAware 要实现的接口
        public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
                  context=(WebApplicationContext) applicationContext;
        }

        @RequestMapping(value="/go.action")
        public ModelAndView go(){
                      ModelAndView mv=new ModelAndView("index");
                      BookInfoBiz biz=(BookInfoBiz) context.getBean("bookInfoBizImpl");    //然后就这样就可以获取 Spring托管的bean了
                     List<BookInfo> list=biz.getAllBookInfo(new BookInfo());
                     mv.addObject("show", list);
                     for(BookInfo l:list){
                             System.out.println(l);
                    }
                    return mv;//redirect:show.jsp
       }
}
0 0
原创粉丝点击