简单的登录案例(Servlet)
Servlet学过后忘的太快了,所以,写一篇文章记录一下。下一次自己再忘了,还能再看看。这里复习的是一个简单的登录案例,顺便把JDBC复习一下。主要复习JDBC的JdbcTemplate、和druid连接池。
简单的登录案例实现步骤:
1.创建一个Maven项目
我们这里选的是带模版的Maven项目:

记得一定要选好本地仓库哦~
不然Finsh会创建很慢的哦~

如果在你的创建界面没有出现选择Maven仓库位置,请在下图找取:

当然,要是没学习过Maven…你还是学一下吧,挺重要的…
2.pom.xml文件中需要导入依赖:JdbcTemplate、和druid连接池依赖、servlet依赖、junit依赖
1 | <dependencies> |
打开你的Maven,如果这里不暴红,那就说明你导入的依赖很成功。

3.创建数据库,和SQL语句
这里只是演示如何实现登录案例,所以表较为简单。
就是一个名为user的表,里面只有username和password两个属性。这个建表语句大家应该都会,所以就不再阐述了。

4.创建dao层的包和servlet层的包

5.先写dao层的代码
1.首先创建一个User类
1 | package main.liu.dao; |
2.写一个properties文件用来放关于连接数据库的

jdbc.properties的内容
1 | driverClassName=com.mysql.jdbc.Driver |
3.编写一个JDBC工具类:JDBCUtils
工具类一般都会写在一个包中,在dao层下创建一个utils包,写下如下代码。
1 | package main.liu.utils; |
4.编写一个UserDao接口
为什么要编写接口呀?
DAO接口
为每个DAO声明接口的好处在于:
- 可以在尚未实现具体DAO的时候编写上层代码,如Service里对DAO的调用。
- 可以为DAO进行多实现,例如有JDBCDAO实现,MyBatisDAO实现,而不需要更改上层代码。
1 | package main.liu.dao; |
5.有了接口肯定要有实现类呀
实现类一般是在和UserDao处于同一级的一个目录Impl下。
所以,在dao层下建立一个Impl包。
1 | package main.liu.dao.Impl; |
6.功能已经齐全,那测试一下啊!
在dao层创建一个test包,test包内创建一个test类进行测试一下
1 | package main.liu.Test; |

测试成功后我们就开始编写servlet层的代码
6.编写servlet层代码
1.配置Tomcat运行环境

2.编写一个登录页面
这就是index.jsp的代码,这是展示了两个输入框和一个提交按钮。
注意:这是jsp文件。你会发现,你用Maven创建后在webapp/WEB-INF/index.jsp并没有下面代码的第一行<%@ page contentType="text/html;charset=UTF-8" language="java" %>。请注意,必须把这一句加上,不然tomcat识别不了这个jsp。
1 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> |
3.创建servlet类
主要实现,当表单提交后跳转到LoginServlet,在LoginServlet中判断用户名和密码是否正确,如果不正确就跳转到defaultServlet类,如果成功就跳转到SuccessServlet类。
1.首先创建一个LoginServlet类

LoginServlet代码:
1 | package main.liu.servlet; |
2.defaultServlet
1 | package main.liu.servlet; |
3.SuccessServlet
1 | package main.liu.servlet; |
7.OK,跑一下看看
