⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jdbctraining.java

📁 对入学者很实用用JAVA的基本语言写的
💻 JAVA
字号:
package page;


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.SortedMap;

import javax.naming.InitialContext;
import javax.naming.NamingException;

import javax.sql.DataSource;

public class JDBCTraining {

    @SuppressWarnings("unchecked")
    public static void main(String[] args) {
        System.out.println("开始创建连接....");
        String sql = "select * from area_info ";

    }
    
    public static long testJDBCConn(int count){
        long costTime = 0;
        long startTime = System.currentTimeMillis();
        for (int i = 0; i < count; i++) {
            try {
                createConn().close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        costTime = System.currentTimeMillis() - startTime;
        return costTime;
    }
    
    public static long testJNDIConn(int count){
        DataSource ds = null;
        try {
            ds = (DataSource)new InitialContext().lookup("java:comp/env/jdbc/TrainingDS");
        } catch (NamingException e1) {
            e1.printStackTrace();
        }
        long costTime = 0;
        long startTime = System.currentTimeMillis();
        for (int i = 0; i < count; i++) {
            try {
                ds.getConnection().close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        costTime = System.currentTimeMillis() - startTime;
        return costTime;
    }
    private static DataSource ds ;
      
    public static DataSource getDs() {
        return ds;
    }

    public static void setDs(DataSource ds) {
        JDBCTraining.ds = ds;
    }
    private static Connection createConn() {
        try {
            return ds.getConnection();
        } catch (Exception e) {
         //   throw new SystemException("数据源配置不对");
        }
        return null;
    }
    private static Connection createConn1() {
        // 驱动名
        String driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
        // 连接地址
        String url = "jdbc:sqlserver://localhost:1433;databaseName=s2";
        // 用户名
        String user = "sa";
        // 密码
        String password = "sa";
        try {
            // 加载驱动
            Class.forName(driver);
            // 创建连接
            return DriverManager.getConnection(url, user, password);
        } catch (ClassNotFoundException e) {
        	e.printStackTrace();
          //  throw new SystemException("驱动类没有发现");
        } catch (SQLException e) {
        	e.printStackTrace();
           // throw new SystemException("无法创建连接");
        }
        return null;
    }

    @SuppressWarnings("unchecked")
    public static List<?> query(String sql, Object... argus) {
        // 调用连接
        Connection conn = createConn1();
        ResultSet rs = null;
        PreparedStatement prst = null;
        List list = new ArrayList();
        try {
            // 准备执行SQL
            prst = conn.prepareStatement(sql);
            // 设定SQL中的参数
            for (int i = 0; i < argus.length; i++) {
                prst.setObject(i + 1, argus[i]);
            }
            // 执行查询
            rs = prst.executeQuery();
            while(rs.next()){
            	Student stu = new Student();
            	stu.setId(rs.getInt("id"));
            	stu.setName(rs.getString("name"));
            	stu.setPass(rs.getString("pass"));
            	list.add(stu);
            }
            return list;// return ResultSupport.toResult(rs);
        } catch (SQLException e) {
            // 异常处理
        	e.printStackTrace();
          //  throw new SystemException("无法查询");
        } finally {
            // 关闭资源(注意关闭顺序)
            try {
                rs.close();
                prst.close();
                conn.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        return null;
    }

    @SuppressWarnings("unused")
    public static int update(String sql, Object... argus) {
        // 调用连接
        Connection conn = createConn1();
        PreparedStatement prst = null;
        try {
            // 准备执行SQL
            prst = conn.prepareStatement(sql);
            // 设定SQL中的参数
            for (int i = 0; i < argus.length; i++) {
                prst.setObject(i + 1, argus[i]);
            }
            // 执行更新
            return prst.executeUpdate();
        } catch (SQLException e) {
        	e.printStackTrace();
           // throw new SystemException("无法更新");
        } finally {
            // 关闭资源
            try {
                prst.close();
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        return 0;
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -