zoukankan      html  css  js  c++  java
  • servlet中如何操作数据库

    先下载 mysql-connector-java-5.1.38-bin.jar ,然后把 mysql-connector-java-5.1.38-bin.jar 放到 tomcat 的 lib 目录下,再进行以下操作:
    1.  加载驱动程序
    Class.forName("com.mysql.jdbc.Driver");
    2.  创建数据库url
    String url = "jdbc:mysql://localhost:3307/spdb?useSSL=false";
    String user = "root";
    password = "root";
    3.  建立连接
    con = DriverManager.getConnection(url,user,password);
    4.  创建statement
    sta = con.createStatement();
    5.  创建查询语句
    rs = sta.executeQuery("select passwd from users where username='"+username+"'limit 1");
    注意SQL的注入漏洞!

    案例代码:
     1 //接收用户名和密码
     2 String username;
     3 String password;
     4 Connection con = null;
     5 Statement sta = null;
     6 ResultSet rs = null;
     7         
     8 try {
     9     username = request.getParameter("username");
    10     String passwd = request.getParameter("password");
    11         
    12     //加载驱动程序
    13     Class.forName("com.mysql.jdbc.Driver");
    14             
    15     //创建数据库url
    16     String url = "jdbc:mysql://localhost:3307/spdb?useSSL=false";
    17     String user = "root";
    18     password = "root";
    19             
    20     //建立连接
    21     con = DriverManager.getConnection(url,user,password);
    22             
    23     //创建statement
    24     sta = con.createStatement();
    25             
    26     rs = sta.executeQuery("select passwd from users where username='"+username+"'limit 1");
    27             
    28     if(rs.next()){
    29         //说明用户存在
    30         String dbPasswd = rs.getString(1);
    31         if(dbPasswd.equals(passwd)){
    32             //合法
    33             //将用户信息存入session
    34             HttpSession hs = request.getSession(true);
    35             hs.setMaxInactiveInterval(60);
    36             hs.setAttribute("name", username);
    37                     
    38             //跳到下一个页面【servlet提供了两种:sendredirect转向,forward转发】
    39             //sendredirect 的 url 应该这样:/web应用名/servlet url
    40             response.sendRedirect("/UsersManager/MainFrame?username=" + username + "&password=" + password);
    41         }else{
    42             //跳回登录页面
    43             response.sendRedirect("/UsersManager/LoginServlet");
    44         }
    45     }else{
    46         //跳回登录页面
    47         response.sendRedirect("/UsersManager/LoginServlet");
    48     }
    49             
    50 } catch (ClassNotFoundException e) {
    51     e.printStackTrace();
    52 } catch (SQLException e) {
    53     e.printStackTrace();
    54 } finally{
    55     try {
    56         if(null != rs){
    57             rs.close();
    58         }
    59         if(null != sta){
    60             sta.close();
    61         }
    62         if(null != con){
    63             con.close();
    64         }
    65     } catch (SQLException e) {
    66         e.printStackTrace();
    67             }
    68 }
  • 相关阅读:
    【Mocha.js 101】Mocha 入门指南
    CSS 中 Font-Family 中英文对照表
    Android Studio中找出不再使用的资源
    Java反射机制实战——字段篇
    python进阶——day02、03面向对象进阶
    python进阶_day01面对对象编程基础
    day05(文件配置命令和远程登录)
    day04(磁盘管理与目录介绍)
    day03(系统启动及常用的Linux命令的基本使用)
    day02(操作系统简介和Linux的安装与常用命令简介)
  • 原文地址:https://www.cnblogs.com/shy-huiying/p/5378269.html
Copyright © 2011-2022 走看看