MVC高级开发
通过结合Servlet和JSP的MVC模式,我们可以发挥二者各自的优点:
- Servlet实现业务逻辑;
- JSP实现展示逻辑。
但是,直接把MVC搭在Servlet和JSP之上还是不太好,原因如下:
- Servlet提供的接口仍然偏底层,需要实现Servlet调用相关接口;
- JSP对页面开发不友好,更好的替代品是模板引擎;
- 业务逻辑最好由纯粹的Java类实现,而不是强迫继承自Servlet。
能不能通过普通的Java类实现MVC的Controller?类似下面的代码:
public class UserController { @GetMapping("/signin") public ModelAndView signin() { ... } @PostMapping("/signin") public ModelAndView doSignin(SignInBean bean) { ... } @GetMapping("/signout") public ModelAndView signout(HttpSession session) { ... } }