Spring 集成到web项目中

1. 在web.xml中配置实例化spring容器

	<context-param>
		<!-- location of spring config -->
		<param-name>contextConfigLocation</param-name>
		<param-value>classpath:spring.xml</param-value>
	</context-param>
	<!-- initialize spring context-->
	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>



2. 在controller中获取spring容器实例
@Controller("accountController") //让spring管理Controller
@RequestMapping("/accountController.do")
@SessionAttributes({"account"}) //put account to session, 
//as a result both request and session have the two attribute.
public class AccountController {
	
	@Resource //自动注入Service实例
	AccountService accountService;
	

	@RequestMapping(params="method=login", method=RequestMethod.POST) 
	public String login(String username, String password, ModelMap map, HttpServletRequest request){
		Account account = accountService.Login(username, password);
		if(account!=null){
			//request.getSession().setAttribute("account", account);
			System.out.println("Hello "+ username);
			map.put("message", "welcome "+ username +"!");
			return "main";
		}else{
			map.put("message", "username or password is wrong! ");
			return "index";
		}
	}
	
	@RequestMapping(params="method=register", method=RequestMethod.POST)
	public ModelAndView register(Account account, HttpServletRequest request){
		ModelAndView mav =new ModelAndView("main");
		mav.addObject("account", account);
		try {
			accountService.reqister(account);
		} catch (Exception e) {
			e.printStackTrace();
			mav.addObject("message", "register failed!");
			mav =new ModelAndView("account/account_register");
		}
		mav.addObject("message", "register successed!");
		mav =new ModelAndView("main");
		return mav;
	}
}


猜你喜欢

转载自oracle-api.iteye.com/blog/2078092