利用dbutils实现登录实例
来源:互联网 发布:淘宝衣服纯色背景 编辑:程序博客网 时间:2024/06/06 13:00
利用dbutils实现登录实例
思路:html网页—-登录(用户名,密码)—–servlet中getparamer方法得到用户输入的用户名和密码——-用户名和密码在dbutils中验证是否正确,
添加三个包:c3p0-0.9.1.2.jar(c3p0的包) commons-dbutils-1.4.jar(dbutils包)
mysql-connector-java-5.0.8-bin.jar(MySQL驱动的包),不需要添加配置。web.xml中配置servlet,后面讲。
代码
html的代码:若只要登录效果,,界面越简单越好,注意粗体加黑的地方
form class=”form-horizontal” action=”http://localhost:8081/03.1Login/servletLogin”* method=”post”*
input type=”text” class=”form-control” id=”username” placeholder=”请输入用户名” name=”username”
input type=”password” class=”form-control” id=”inputPassword3” placeholder=”请输入密码” name=”password”
action表示要提交的地方,这里是web.xml配置的servlet的地方,因为网站输入网址的访问有两种方式,1.localhost:8081/03.1Login/webcontent目录下的html文件 2.localhost:8081/03.1Login/web.xml中配置的servlet名称
2.servlet代码:建立servlet包–Servlet类
package servlet;
``import java.io.IOException;``import java.sql.SQLException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import domain.Users;import Service.Service;public class Servlet extends HttpServlet { //设置编码 //得到用户名和密码 //调用userservice中的login()方法,返回user对象 //判断user是否为空。 @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String username=req.getParameter("username");//从html文件中获取输入的用户名 String password=req.getParameter("password"); resp.setContentType("text/html;charset=utf-8");//设置读取的格式 Service sv=new Service(); Users user = null; try { user = sv.login(username, password);//在service类中的login方法判断用户名或者密码是否正确 } catch (SQLException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); System.out.println("网络异常!"); } if(user==null){ //3.1若为空 写"用户名和密码不匹配" resp.getWriter().print("用户名和密码不匹配,3秒之后跳转"); //案例2-定时跳转 resp.setHeader("refresh","3;url=/03.1Login/login.htm"); }else{ //3.2若不为空 写"xxx:欢迎回来" resp.getWriter().print(user.getUsername()+":欢迎回来"); } }}
导入dbutils文件和c3p0.properties
public class JavaUtils {public static ComboPooledDataSource ds=new ComboPooledDataSource();//连接池public static DataSource getPool(){ return ds;}//获取连接public static Connection name() throws SQLException { return ds.getConnection();}//释放资源public static void closeResource(Connection conn, Statement st, ResultSet rs) { closeResultSet(rs); closeStatement(st); closeConn(conn);}/** * 释放连接 * * @param conn *连接 */public static void closeConn(Connection conn) { if (conn != null) { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } conn = null; }}/** * 释放语句执行者 * * @param st *语句执行者 */public static void closeStatement(Statement st) { if (st != null) { try { st.close(); } catch (SQLException e) { e.printStackTrace(); } st = null; }}/** * 释放结果集 * * @param rs *结果集 */public static void closeResultSet(ResultSet rs) { if (rs != null) { try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } rs = null; }}
4.domain包—–User类, 建立username和password的javabean;
package domain;public class Users { private String username; private String password; public String getUsername() { System.out.println("user"+username); return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; }}
5.services实现验证
package Service;import java.sql.SQLException;import org.apache.commons.dbutils.QueryRunner;import org.apache.commons.dbutils.handlers.BeanHandler;import utils.JavaUtils;import domain.Users;public class Service { public Users login(String username,String password) throws SQLException { QueryRunner qr=new QueryRunner(JavaUtils.getPool());//获取连接 //String sql="select * from user WHERE username=? and password=?"; //编写sql String sql="select * from user where username = ? and password = ?"; //执行sql //将username和password传入到User.java中 Users user = (Users) qr.query(sql, new BeanHandler<>(Users.class),username,password); System.out.println("1"+user); System.out.println("2"+user.getPassword()); return user; }}
源码下载:http://download.csdn.net/detail/u012510757/9762390
- 利用dbutils实现登录实例
- 利用dbutils实现登录实例
- struts实战--实现条件查询(利用dbutils)
- DBUtils实例
- 利用Jsoup实现登录
- 实例:Struts2结合DisplayTag、DbUtils实现查询分页、导出Excel
- 反射模拟DbUtils实现ResultSet转成Bean实例
- DbUtils入门实例
- Dbutils 使用实例
- Apache DbUtils应用实例
- DBUtils使用 -- > 实例比较
- DBUtils详细介绍+实例
- Apache DbUtils应用实例
- Apache DbUtils应用实例
- Apache DbUtils应用实例
- Apache DbUtils应用实例
- DbUtils 结果集实例
- 利用Python实现自动登录
- python2与python3共存之后 pip 无法使用
- unity给ugui添加collider时让collider自适应
- Ubuntu16安装flash插件
- [51nod1411] 矩阵取数问题 V3
- 日语语法-01
- 利用dbutils实现登录实例
- 10085UVA最远的状态
- 设计模式 命令模式 之 管理智能家电
- 文本形式 、二进制形式保存π
- WebService接口开发
- linux xxx/xx: 只读文件系统
- Java IO字符流常见类进行分析(四)
- 设计模式 适配器模式 以手机充电器为例
- 深度优先算法学习 案例