JavaWeb应用开发,撇开分布式不谈,只讨论一个功能服务应用的开发,无论是使用原生的Servlet/JSP方案,还是时下的SSM架构,都有一套经过工程实践考验的最佳实践,这综合考虑了团队协作、项目管理、可用性等方方面面的问题。
一些约定
考虑到项目管理的方便,一般前端不能直接访问到jsp页面,而是必须通过Servlet来管理到Jsp页面的跳转
<li><a href="${pageContext.request.contextPath}/UserServlet?method=registUI">注册</a></li>
在以上的超链接中,通过定位到继承了BaseServlet类的UserServlet的registUI方法,来处理跳转的功能。
public String registUI(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { return "/jsp/register.jsp"; }
MVC架构下开发步骤:更多Java学习教程薇老师:hua2021ei
首先,以用户注册这一功能模块为例,其服务端的逻辑如图所示:
一般来说,一个功能模块包括许多的业务功能点,比如用户注册,就包括用户名校验、注册、发送激活邮件、发送验证短信等等具体的功能点。这些功能点就体现在不同Servlet(或者action或者Controller)的业务方法里,而所用的方法又会调用到Service包和Dao包中的增删改查原子方法。
根据服务端的运行逻辑,一般的开发流程包括
1. 页面准备
包括表单属性添加修改、拼接超链接、添加Ajax等
1 <div class="col-md-8" style="background:#fff;padding:40px 80px;margin:30px;border:7px solid #ccc;">
2 <font>会员注册</font>USER REGISTER
3 <form class="form-horizontal" style="margin-top:5px;" action="${pageContext.request.contextPath}/UserServlet?method=userRegist" method="post">
4 <div class="form-group">
5 <label for="username"