黑马程序员技术交流社区
标题: 成都校区25期+[利用servlet实现登录案例的思路总结] [打印本页]
作者: zhanglei_ 时间: 2019-5-30 11:50
标题: 成都校区25期+[利用servlet实现登录案例的思路总结]
- 创建JDBCUtils工具类 定义获取连接池getDataSource()和连接对象getConnection的静态方法
- 导入druid.properties到src目录下
- 利用类加载器获得配置文件的输入流
- 利用Porperties的load()方法获得配置文件的porperties对象
- 利用dataSource=DruidDataSourceFactory.createDataSource(prop) 获得数据库连接池
- 利用dataSource.getConnection(); 获得连接对象
- 创建数据库的操作类UserDao
- 利用JdbcTemplate(JDBCUtils.getDataSource()) 获取数据库的连接对象
- 定义用户登录的方法传入User类,从数据库中查找,查到则返回user,查不到则返回null;
- 数据库的查询方法(价廉与知识)
- 定义sql语句
- 执行语句:template.queryForObject(sql,newBeanPropertyRowMapper<User>(User.class),loginUser.getUsername(),loginUser.getPassword())
<form action = "/虚拟路径/loginServlet"method="post">
- 创建三个servlet
- LoginServelt
- 获取请求参数封装为map, 利用BeanUtils.populate(User, map)将请求参数封装为User对象
- 调用UserDao的login方法 传入User 若返回null则转发到failServlet
若返回不为空 则转发到successServlet
- successServelt
- failServlet
注意:
1 这里利用了prepareStatemen:记住最后要给(?)传参
Useruser=template.queryForObject(sql,newBeanPropertyRowMapper<User>(User.class),loginUser.getUsername(),loginUser.getPassword());
2.在请求转发时,要记住使用forward()
request.getRequestDispatcher("/successServlet").forward(request,response);
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |