目录
一、软件架构
软件架构(software architecture)是一系列相关的抽象模式,用于指导大型软件系统软各个方面的设计。软件架构是一个系统的草图。软件体系结构是构建计算机软件实践的基础。
进行项目前,先确定软件架构,可以更清晰明了得进行编写,在此次案例中使用了三层架构。
三层架构:
1. 界面层(表示层):用户看的得界面。用户可以通过界面上的组件和服务器进行交互
2. 业务逻辑层:处理业务逻辑的。
3. 数据访问层:操作数据存储文件。
项目体现:
二、代码实现及分析
1、登录功能
登录页面的html代码和验证码的servlet代码就不详细展示了,需要注意的是验证码的获取以及点击刷新的实现。
验证码jsp代码展示:
<div class="form-inline">
<label for="vcode">验证码:</label>
<input type="text" name="verifycode" class="form-control" id="verifycode" placeholder="请输入验证码"
style="width: 120px;"/>
<a href="javascript:refreshCode()">
<img src="${pageContext.request.contextPath}/checkCodeServlet" title="看不清点击刷新" id="vcode"/>
</a>
</div>
<script type="text/javascript">
function refreshCode() {
//获取验证码图片对象
var vcode = document.getElementById("vcode");
//设置src属性,加上时间戳
vcode.src = "${pageContext.request.contextPath}/checkCodeServlet?time=" + new Date().getTime();
}
</script>
LoginServlet分析:
1、确保验证码的一次性,登录成功或者登录失败后都需要删除验证码。
//确保验证码一次性,使用完就删除
session.removeAttribute("CHECKCODE_SERVER");
2、存储提示信息到request域,转发到登录页面。(存储到request域就使用转发)