Spring MVC3 基本配置

阅读更多

之前用过struts2,学习了spring mvc之后,发现还是比struts2方便一些。

首先,web.xml配置

springUtf8Encoding org.springframework.web.filter.CharacterEncodingFilter encoding UTF-8 springUtf8Encoding /* dispatcher org.springframework.web.servlet.DispatcherServlet 1 dispatcher *.do org.springframework.web.context.ContextLoaderListener contextConfigLocation /WEB-INF/applicationContext.xml

也可以配置url-pattern为 / ,这需要在spring配置中添加,这个据说只在3.05版本之后支持。

然后是spring mvc配置文件:dispatcher-servlet.xml , 这个名称中的 dispatcher要和web.xml中DispatcherServlet的名称相同


然后是spring主配置文件:

启用注解

配置place holder,用来读取application configuration

数据源、sessionfactory、事务管理器,其中的

${hibernate.dialect} ${hibernate.show_sql} 配置message,默认放置在classpath


Cotroller的写法:

@Controller public class ContactsControllers { private ContactsDAO contactsDAO; @Autowired public void setContactsDAO(ContactsDAO contactsDAO) { this.contactsDAO = contactsDAO; } @Autowired private ContactFormValidator validator; @InitBinder public void initBinder(WebDataBinder binder) { SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy"); dateFormat.setLenient(false); binder.registerCustomEditor(Date.class, new CustomDateEditor( dateFormat, true)); } @RequestMapping("/viewAllContacts") public ModelAndView getAllContacts() { ModelAndView mav = new ModelAndView("showContacts"); List contacts = contactsDAO.getAllContacts(); mav.addObject("SEARCH_CONTACTS_RESULTS_KEY", contacts); return mav; } @RequestMapping(value = "/saveContact", method = RequestMethod.GET) public ModelAndView newuserForm() { ModelAndView mav = new ModelAndView("newContact"); Contact contact = new Contact(); mav.getModelMap().put("newContact", contact); return mav; } @RequestMapping(value = "/saveContact", method = RequestMethod.POST) public String create(@ModelAttribute("newContact") Contact contact, BindingResult result, SessionStatus status) { validator.validate(contact, result); if (result.hasErrors()) { return "newContact"; } contactsDAO.save(contact); status.setComplete(); return "redirect:viewAllContacts.do"; } @RequestMapping(value = "/updateContact", method = RequestMethod.GET) public ModelAndView edit(@RequestParam("id") Integer id) { ModelAndView mav = new ModelAndView("editContact"); Contact contact = contactsDAO.getById(id); mav.addObject("editContact", contact); return mav; } }

 
 

 view中使用spring mvc标签form 
 






 

你可能感兴趣的:(Spring MVC3 基本配置)