<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    qileilove

    blog已經(jīng)轉(zhuǎn)移至github,大家請訪問 http://qaseven.github.io/

    JDBC連接常用數(shù)據(jù)庫 基本的CURD

     JDBC連接各個數(shù)據(jù)庫的className與url

    JDBC連接DB2
     private String className="com.ibm.db2.jdbc.net.DB2Driver";
       private String url="jdbc:db2://localhost:8080/lwc";
    JDBC連接Microsoft SQLServer(microsoft)
     private String className="com.microsoft.jdbc.sqlserver.SQLServerDriver";
     private String url="jdbc:microsoft:sqlserver://
      localhost:1433;SelectMethod=Cursor;dataBaseName=lwc";
    JDBC連接Sybase(jconn2.jar)
     private String className="com.sybase.jdbc2.jdbc.SybDriver";
       private String url="jdbc:sybase:Tds:localhost:2638";
    JDBC連接MySQL(mm.mysql-3.0.2-bin.jar)
       private String className="org.gjt.mm.mysql.Driver";
       private String url="jdbc:mysql://localhost:3306/lwc";
    JDBC連接PostgreSQL(pgjdbc2.jar)
       private String className="org.postgresql.Driver";
       private String url="jdbc:postgresql://localhost/lwc";
    JDBC連接Oracle(classes12.jar)
       private String className="oracle.jdbc.driver.OracleDriver";
       private String url="jdbc:oracle:thin:@localhost:1521:lwc";

      JDBC連接數(shù)據(jù)庫案例

    package com.itlwc;

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;

    public class DBConnection {
     private static Connection conn = null;
     private String user = "";
     private String password = "";
     private String className = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
     private String url = "jdbc:microsoft:sqlserver://"
       + "localhost:1433;SelectMethod=Cursor;dataBaseName=lwc";

     private DBConnection() {
      try {
       Class.forName(this.className);
       conn = DriverManager.getConnection(url, user, password);
       System.out.println("連接數(shù)據(jù)庫成功");
      } catch (ClassNotFoundException e) {
       System.out.println("連接數(shù)據(jù)庫失敗");
      } catch (SQLException e) {
       System.out.println("連接數(shù)據(jù)庫失敗");
      }
     }

     public static Connection getConn() {
      if (conn == null) {
       conn = (Connection) new DBConnection();
      }
      return conn;
     }

     // 關(guān)閉數(shù)據(jù)庫
     public static void close(ResultSet rs, Statement state, Connection conn) {
      if (rs != null) {
       try {
        rs.close();
       } catch (SQLException e) {
        e.printStackTrace();
       }
       rs = null;
      }
      if (state != null) {
       try {
        state.close();
       } catch (SQLException e) {
        e.printStackTrace();
       }
       state = null;
      }
      if (conn != null) {
       try {
        conn.close();
       } catch (SQLException e) {
        e.printStackTrace();
       }
       conn = null;
      }
     }

     // 測試數(shù)據(jù)庫連接是否成功
     public static void main(String[] args) {
      getConn();
     }
    }

     基本CURD

    獲取數(shù)據(jù)庫連接請查考JDBC連接常用數(shù)據(jù)庫
    private Connection conn = DBConnection.getConn();

      增加方法

    使用拼sql增加
    public void add1(Student student) {
     String sql = "insert into student values(" + student.getId() + ",'"
       + student.getCode() + "','" + student.getName() + "',"
       + student.getSex() + "," + student.getAge() + ")";
     PreparedStatement ps = null;
     try {
      ps = conn.prepareStatement(sql);
      ps.executeUpdate();
     } catch (SQLException e) {
      e.printStackTrace();
     }
     DBConnection.close(null, ps, conn);
    }
    使用替換變量增加
    public void add2(Student student) {
     String sql = "insert into student values(?,?,?,?,?)";
     PreparedStatement ps = null;
     try {
      ps = conn.prepareStatement(sql);
      ps.setString(1, student.getCode());
      ps.setString(2, student.getName());
      ps.setString(3, student.getSex());
      ps.setString(4, student.getAge());
      ps.setString(5, student.getId());
      ps.executeUpdate();
     } catch (SQLException e) {
      e.printStackTrace();
     }
     DBConnection.close(null, ps, conn);
    }

      刪除方法

    使用拼sql刪除
    public void delete1(String id) {
     String sql = "delete from student where id='" + id+"'";
     PreparedStatement ps = null;
     try {
      ps = conn.prepareStatement(sql);
      ps.executeUpdate();
     } catch (SQLException e) {
      e.printStackTrace();
     }
     DBConnection.close(null, ps, conn);
    }
    使用替換變量刪除
    public void delete2(String id) {
     String sql = "delete from student where id=?";
     PreparedStatement ps = null;
     try {
      ps = conn.prepareStatement(sql);
      ps.setString(1, id);
      ps.executeUpdate();
     } catch (SQLException e) {
      e.printStackTrace();
     }
     DBConnection.close(null, ps, conn);
    }

     修改方法

    使用拼sql修改
    public void update1(Student student) {
     String sql = "update student set code='" + student.getCode()
       + "',name='" + student.getName() + "',sex=" + student.getSex()
       + ",age=" + student.getAge() + " where id=" + student.getId();
     PreparedStatement ps = null;
     try {
      ps = conn.prepareStatement(sql);
      ps.executeUpdate();
     } catch (SQLException e) {
      e.printStackTrace();
     }
     DBConnection.close(null, ps, conn);
    }
    使用替換變量修改
    public void update2(Student student) {
     String sql = "update student set code=?,name=?,sex=?,age=? where id=?";
     PreparedStatement ps = null;
     try {
      ps = conn.prepareStatement(sql);
      ps.setString(1, student.getCode());
      ps.setString(2, student.getName());
      ps.setString(3, student.getSex());
      ps.setString(4, student.getAge());
      ps.setString(5, student.getId());
      ps.executeUpdate();
     } catch (SQLException e) {
      e.printStackTrace();
     }
     DBConnection.close(null, ps, conn);
    }

      查詢方法

    查詢得到一個對象
    public Student findById(int id) {
     String sql = "select * from student where id=" + id;
     Student student = new Student();
     PreparedStatement ps = null;
     ResultSet rs = null;
     try {
      ps = conn.prepareStatement(sql);
      rs = ps.executeQuery();
      if (rs.next()) {
       student.setId(rs.getString(1));
       student.setCode(rs.getString(2));
       student.setName(rs.getString(3));
       student.setSex(rs.getString(4));
       student.setAge(rs.getString(5));
      }
     } catch (SQLException e) {
      e.printStackTrace();
     }
     DBConnection.close(rs, ps, conn);
     return student;
    }
    查詢得到一組數(shù)據(jù)
    @SuppressWarnings("unchecked")
    public List find() {
     String sql = "select * from student";
     List list = new ArrayList();
     PreparedStatement ps = null;
     ResultSet rs = null;
     try {
      ps = conn.prepareStatement(sql);
      rs = ps.executeQuery();
      while (rs.next()) {
       Student student = new Student();
       student.setId(rs.getString(1));
       student.setCode(rs.getString(2));
       student.setName(rs.getString(3));
       student.setSex(rs.getString(4));
       student.setAge(rs.getString(5));
       list.add(student);
      }
     } catch (SQLException e) {
      e.printStackTrace();
     }
     DBConnection.close(rs, ps, conn);
     return list;
    }


     統(tǒng)計數(shù)據(jù)庫總條數(shù)

    public int getRows() {
     int totalRows = 0;
     String sql = "select count(*) as totalRows from student";
     PreparedStatement ps = null;
     ResultSet rs = null;
     try {
      ps = conn.prepareStatement(sql);
      rs = ps.executeQuery();
      if (rs.next()) {
       totalRows = Integer.valueOf(rs.getString("totalRows"));
      }
     } catch (SQLException e) {
      e.printStackTrace();
     }
     DBConnection.close(rs, ps, conn);
     return totalRows;
    }

      執(zhí)行存儲過程

    第一種
     public String retrieveId(String tableName,String interval) throws SQLException {  
         Connection conn = DBConnection.getConn();  
         String sql = "exec p_xt_idbuilder '" + tableName + "','" + interval+ "'";  
         PreparedStatement ps = conn.prepareStatement(sql);
      ResultSet rs = ps.executeQuery();
         String maxId = "";  
         if(rs.next()){  
             maxId = rs.getString("bh");  
         }  
         DBConnection.close(rs, ps, conn);  
         return maxId;  
     }
    第二種
     public String retrieveId(String tableName,String interval) throws SQLException {
      Connection conn = DBConnection.getConn();
      CallableStatement cs = conn.prepareCall("{call p_xt_idbuilder(?,?,?)}");
         cs.setString(1, tableName);
         cs.setString(2, interval);
         cs.registerOutParameter(3,java.sql.Types.VARCHAR);
         cs.executeUpdate();
         String maxId = "";
         maxId=cs.getString(3);   
      DBConnection.close(null, cs, conn);
      return maxId;
     }


    posted on 2013-09-22 09:35 順其自然EVO 閱讀(294) 評論(0)  編輯  收藏 所屬分類: 數(shù)據(jù)庫

    <2013年9月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    293012345

    導(dǎo)航

    統(tǒng)計

    常用鏈接

    留言簿(55)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 岛国av无码免费无禁网站| 亚洲精品无码你懂的网站| 亚洲精品av无码喷奶水糖心| 国产jizzjizz视频全部免费| 中文在线免费看视频| 亚洲人成电影网站| 亚洲精品成人久久久| 3344免费播放观看视频| 国内成人精品亚洲日本语音| 亚洲乱码精品久久久久..| 成人片黄网站A毛片免费| sss在线观看免费高清| 亚洲成无码人在线观看| 亚洲色偷偷综合亚洲AV伊人| 麻豆视频免费观看| 精品人妻系列无码人妻免费视频| 亚洲免费网站在线观看| 久久亚洲中文字幕精品一区| 在线观看av永久免费| 中文字幕一区二区免费| 亚洲成a人无码亚洲成www牛牛| 亚洲av永久无码精品网站| 国产麻豆剧传媒精品国产免费| 一级毛片在线观看免费| 草久免费在线观看网站| 亚洲午夜在线播放| 亚洲精品天天影视综合网| 免费日本黄色网址| 2021久久精品免费观看| 日本一区二区免费看| 无码精品人妻一区二区三区免费 | 亚洲色中文字幕无码AV| 成人免费视频试看120秒| a级日本高清免费看| 免费夜色污私人影院网站| 国产精品高清视亚洲精品| 亚洲国产人成在线观看69网站 | 亚洲av午夜福利精品一区| 亚洲精品国产精品乱码不卞| 久久久www成人免费毛片| 在线观看H网址免费入口|