案例-01登录(mysql,druid连接池技术、JDBCTemplate、servlet)
需求分析
编写login.html登录页面
username & password 两个输入框
使用Druid数据库连接池技术,操作mysql中的user表
使用JdbcTemplate技术封装JDBC
登录成功跳转到SuccessServlet
展示:登录成功!用户名,欢迎您xxx用户
登录失败跳转到FailServlet
展示:登录失败,用户名或者密码错误
步骤
导入数据库驱动包,Druid数据库连接池包,JdbcTemplate一系列包
编写登录页面login.html
定义User实体类
定义UserDao数据库连接对象
编写处理登录servlet以及展示页面成功和失败的servlet
代码
项目目录
登录页面login.html
1 | <!DOCTYPE html> |
User实体类
1 | package cn.itcast.domain; |
JDBCUtils.java获取数据库连接池DataSource
druid.properties
1 | driverClassName=com.mysql.jdbc.Driver |
定义工具类,用于获取DataSource
1 | package cn.itcast.Utils; |
UserDao数据库连接实体(利用JDBCTemplate)
1 | package cn.itcast.dao; |
servlet
LoginServlet
1 | package cn.itcast.web.servlet; |
SuccessServlet
1 | package cn.itcast.web.servlet; |
FailedServlet
1 | package cn.itcast.web.servlet; |
演示
项目总结
需要导入哪些jar包?各自有什作用?
数据库驱动jar包
用于连接数据库,由数据库厂商提供,有统一的接口。
Druid数据库连接池jar包
阿里巴巴提供的数据库连接池技术。通过DruidDataSourceFactory创建
1
DruidDataSourceFactory.createDataSource(pro)
JDBCTemplate jar包 和 BeanUtils jar包
JDBC模板,通过JDBCTemplate(DataSource)创建对象。
再通过对象.queryForObject查询数据库构造实体(比如User)对象。
需要借助BeanUtils工具类将实体的字节码对象映射到实体对象上去。
1
jt.queryForObject(sql,new BeanPropertyRowMapper<>(User.class),sql中的?参数)
JDBCUtils工具类分析
主要功能
加载读取druid.properties,利用druid数据库连接池工厂创建一个数据库连接池。
1
2
3Properties pro = new Properties();
pro.load(JDBCUtils.class.getClassLoader().getResourceAsStream("druid.properties"));
ds = DruidDataSourceFactory.createDataSource(pro);获取数据库连接池
文件目录结构分析
dao
数据库访问对象,实现数据库连接访问操作
domain
定义实体类
web
实现servlet逻辑
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 坚韧的长线「串联」散落的珍珠!
评论