この記事では、準備されたステートメントインターフェイスと結果の結果セットを使用したJavaの方法について説明します。次のように、参照のために共有してください。
説明:
1.準備されたステートメントインターフェイスはステートメントを継承し、そのインスタンスにはコンパイルされたSQLステートメントが含まれており、実行速度はステートメントよりも高速です。
2。準備されたステートメントは、ステートメントのすべての機能を継承します。 3つのメソッドexecuteUpdateパラメーターexecuteQuery必要としなくなりましexecute 。
3。JDBCアプリケーションでは、一般的にステートメントの代わりに準備された測定が使用されます。
簡単に操作できるように、最初にパッケージを作成します。
接続データベースの場合、接続カプセル化の密接な場合、dbutil.javaが以前のブログで言及されています。
データベーステーブルをカプセル化します。ここに私のデータベース内のコンプテーブルの操作があります。そのため、カプセル化は次のとおりです。
パッケージcom.mysqltest.jdbc.modelcomp; public class compmenme {private int id;プライベート文字列名;プライベートインクエイジ;プライベートダブルサラリー; / ** * constructor 1 * @param name * @param age * @param salary */ public compmember(string name、int age、double Salary){super(); this.name = name; this.age = age; this.salary = salary; } / ** *オーバーロードコンストラクター * @param id * @param name * @param age * @param salary * / public compmember(int id、string name、int age、double Salary){super(); this.id = id; this.name = name; this.age = age; this.salary = salary; } / *** get、set method* / public int getid(){return id; } public void setid(int id){this.id = id; } public string getname(){return name; } public void setName(string name){this.name = name; } public int getage(){return age; } public void Setage(int age){this.age = age; } public double getSalary(){return Salary; } public void setSalary(double Salary){this.salary = salary; } @Override / *** ToStringを書き換えてディスプレイをより良くする* / public String toString(){return "["+this.id+"]+this.name+"、 "+this.age+"、 "+this.Salary; }}次に、準備整数インターフェイスを使用して、増分操作を実現します。
パッケージcom.mysqltest.jdbc.xiao1; import java.sql.connection; Import java.sql.preparedstatement; Import com.mysqltest.jdbc.modelcomp.compmember; Import com.mysqltest.jdbc.util.dbutil.dbutil.dbutil.dbutil. = new dbutil(); / ** * preatedStatementでメンバーを追加 * @param mem * @return */ private static int addmember(compmembermem)throws exception {connection con = dbutil.getcon(); string sql = "comp値に挿入(null、?、?、?)"; preatedStatement pstmt = con.preparestatement(sql); pstmt.setString(1、mem.getname()); pstmt.setint(2、mem.getage()); pstmt.setDouble(3、mem.getSalary()); int result = pstmt.executeupdate(); //中央のdbutil.close(pstmt、con)のsqlで渡す必要はありません。 // reparedStatementはサブクラスであり、親クラスで閉じても構いません。返品結果; } public static void main(string [] args)スロー例外{compmember mem = new compmember( "liu xiang"、24、8000.00); int result = addmember(mem); if(result == 1){system.out.println( "add rest sucessに"); } else {system.out.println( "add failed"); }}}次に、準備されたステートメントインターフェイスを使用してクエリを実装し、結果セットセットを使用します。
パッケージcom.mysqltest.jdbc.xiao2; import java.sql.connection; Import java.sql.preparedStatement; Import java.sql.Resultset; Import Java.util.ArrayList; Import Java.util.List; Import com.mysqltest.mysqltest.mydbc.madelcomphmer com.mysqltest.jdbc.util.dbutil; public class resultsettest {private static dbutil dbutil = new dbutil(); / ** *トラバースクエリ結果 * @Throws例外 */ @SuppressWarnings( "Unsuse")private static void listmem1()throws exception {connection con = dbutil.getcon(); //接続文字列sql = "select * from comp"; preatedStatement pstmt = con.preparestatement(sql);結果rs = pstmt.executequery(); //結果セットを返します// next()next()while while while(rs.next()){int id = rs.getint(1); double Salary = rs.getDouble(4); System.out.println( "no。:" + id + "name:" + name + "age:" + age + "salary:" + salary); System.out.println( "+================================================================================= ============================================================================================================================================== ============================================================================================================================================== ============================================================================================================================================== listmem2()スロー{接続con = dbutil.getcon(); // select * from comp "; rs.getint( "id"); //最初の列ID文字列名= rs.getString( "name"); System.out.println( "+================================================================================================= ========================================================================== ========================================================================== ===================================================================== ========================================================================== ========================================================================== ========================================================================== dbutil.getCon();最初の列IDの名前= rs.getString( "name"); listmem1(); // listmem2();Java関連のコンテンツの詳細については、このサイトのトピックをご覧ください:「Java+MySQLデータベースプログラミングの概要」、「Javaデータ構造とアルゴリズムのチュートリアル」、「Javaファイルとディレクトリ運用スキルの概要」、「Java Operation Dom Node Skills Summary」、および「Java Cache操作スキル」
この記事がみんなのJavaプログラミングに役立つことを願っています。