Jdbc的使用自定义的工具类

Jdbc的使用自定义的工具类

进行连接数据库
Jdbc的使用自定义的工具类
进行连接数据库

1.关于jar包了解和熟练使用javaSQL驱动jar包
2.关于DriverManager类的方法getConnection 掌握使用
3. Statement类(数据类操作)对象的使用和内在方法掌握
executeUpdate(String sql)返回值 int
executeQuery(String sql) 返回值 ResultSet类对象
4. ResultSet 类(结果集)的方法 next使用 和循环遍历
5. 对配置文件的创建 录入方式掌握
6. Properties properties集合工具类复习和深入
7. 在使用路径的时候,为让jdbc工具类扩展性更高
简单使用了类加载器的方法 getClassLoader () 返回值ClassLoade
getResource (“src下的配置文件名”);返回值 URL路径对象
的方法path 放回当前路径值
此类我也刚刚了解

jdbc工具类

package JDBCUti;

import java.io.FileReader;
import java.io.IOException;
import java.net.URL;
import java.sql.*;
import java.util.Properties;

public class jdbcUtis {
    //定义一个静态方法进行打开
    public static String url;
    public static String root;
    public static String password;
    public static String driver;
static {

    try {
        Properties pro=new Properties ();
        //由于绝对路径的局限性 在这里 使用类加载器
        ClassLoader classLoader = jdbcUtis.class.getClassLoader ();
        //这里面有一个方法getResource  传递一个src 文件名 返回一个URL路径
        URL URLresource = classLoader.getResource ("jdbc.properties");
        //通过路径对象的方法 getpath 获取的绝对路径
        String path = URLresource.getPath ();
        System.out.println (path);
        //properties集合的方法load进行绝对路径通用方式
        pro.load (new FileReader (path));

        /*pro.load (new FileReader ("src/jdbc.properties"));*/
        //通过键与值的方式 经获取
       url= pro.getProperty ("url");
         root = pro.getProperty ("root");
         password=pro.getProperty ("password");
         driver=pro.getProperty ("driver");
         Class.forName (driver);
    } catch (IOException e) {
        e.printStackTrace ();
    } catch (ClassNotFoundException e) {
        e.printStackTrace ();
    }
}



    //释放方法的和关闭的方法
    public static Connection getconnetion() throws SQLException {

    return DriverManager.getConnection (url,root,password);


    }
   public static  void  close(Statement stmt, Connection conn){
       //传递参数进行关闭
       if (stmt!=null){
           try {
               stmt.close ();
           } catch (SQLException e) {
               e.printStackTrace ();
           }
       }
       if (conn!=null){
           try {
               conn.close ();
           } catch (SQLException e) {
               e.printStackTrace ();
           }
       }
   }
    public static  void  close(ResultSet rs,Statement stmt, Connection conn){
        //传递参数进行关闭
        if (rs!=null) {
            try {
                rs.close ();
            } catch (SQLException e) {
                e.printStackTrace ();
            }
        }
        if (stmt!=null){
            try {
                stmt.close ();
            } catch (SQLException e) {
                e.printStackTrace ();
            }
        }
        if (conn!=null){
            try {
                conn.close ();
            } catch (SQLException e) {
                e.printStackTrace ();
            }
        }
    }
}

使用 自定义jdbc工具类进行连接测试`

package JDBCUti;

import java.sql.*;
import java.util.Scanner;

public class demoAl {
    public static void main(String[] args) {
        //使用方法进行连接
        Scanner sc=new Scanner (System.in);
        //提示用户
        System.out.println ("请输入用户名:");
        String username = sc.nextLine ();
        System.out.println ("请输入密码!");
        String password = sc.nextLine ();
        //调用方法 进行传参
        boolean falg = new demoAl ().login (username, password);
        if (falg){
            System.out.println ("登陆成功!");
        }else {
            System.out.println ("用户名和密码有误!");
        }


    }
    //对jdbc的连接登录练习
    //先进行判断方法
    public boolean login(String username,String password){

        if(username!=null|| password!=null){
            return true;//直接放回false 对数据从新输入
        }
        //对数据库进行连接 使用数据库工具类进行连接
        Connection conn =null;
        Statement stmt =null;
        ResultSet rs =null;
        try {
            //数据库的连接
             conn = jdbcUtis.getconnetion ();
            //数据库语句
            String sql="select * from stuuser where username='"+username+"'and password='"+password+"'";
            //获取数据库操作对象
            stmt = conn.createStatement ();
            rs = stmt.executeQuery (sql);
            //进行判断是否有下一行
            //返回使游标向下
            return rs.next ();
        } catch (SQLException e) {
            e.printStackTrace ();
        }finally {
            //关闭资源
            jdbcUtis.close (rs,stmt,conn);
        }



     return false;
    }
}

如果觉得有用 一键三连!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值