SQLクエリを完了し、クエリ結果をベクトルコンテナに入れて、他のプログラムを使用する
/** sql queryステートメントを実行*/public static <t> vector <t> executequery(clazz、string sql、object ... args){connection conn = null; prededStatement regintStatement = null; resultet rs = null; vector <t> vecrs = new vector; jdbctools.getConnection(); preatedstatement = conn.preparestatement(sql); // sqlステートメントを使用して、(int i = 0; i <args.length; i ++){prepedstatement.setObject(i+1、args [i])クラス//結果のエイリアスの取得Street stud_id JDBCのメタデータを取得しますMetadata resultsetetmetadata rsmd = rs.getmetadata(); map <string、object> mapmetadata = new hashmap <string <string、object>(); //列の列名を印刷しますwhile(rs.next()){//要件を満たすデータテーブルのデータの行を取得i ++){string columnLabel = rsmd.getColumnLabel(i+1); object columnValue = rs.getObject(columnLabel); // System.out.println(columnLabel); mapmetadata.put(columnlabel、columnValue);} //反射If(mapmetadata.size()> 0){obj = clazz.newinstance(); for(map.entry <string、object> entry:entry:mapmetadata.entryset(); system.out.println(fieldkey + ":" + fieldvalue); Reflectionutils.setfieldValue(obj、fieldkey、fieldvalue); // reflectionを介して値を割り当てる}使用されるツールのような方法
データベース接続を取得jdbctools.getConnection()
/**データベースへの接続を取得*/public static connection getConnection()スロー例外{接続conn = null; string driver = null; string jdbcurl = null; string username = null; string objectオブジェクトプロパティ= newプロパティ(); jdbctools.class.getClassLoader()。getResourceAsStream( "jdbc.properties"); properties.load(in); driver = properties.getProperty( "driver"); jdbcurl = properties.getProperty( "jdbcurl"); properties.getProperty( "password"); class.forname(driver); conn = drivermanager.getConnection(jdbcurl、username、password); return conn;}Reflectionutils.setfieldValue(obj、fieldkey、fieldvalue);
objオブジェクトのfieldkey属性をfieldvalueに割り当てる
//オブジェクトの属性を設定public static void setfieldValue(Object obj、string fieldname、object value){field field = getdeclaredfield(obj、fieldname); if(field == null){ターゲットの新しいIllegalargumentexception( "を見つけることができなかった["+ fieldname+ "] ["+obj+"] ");} makeaccessible(field); try {field.set(obj、value);} catch(Illegalaccessexception e){system.out.println(" Excention ");}} //判断field){if(!modifier.ispublic(field.getModifiers())){field.setAccessible(true);}} // field属性を取得すると、属性は親クラスのパブリックフィールドGetDeclaredfield(オブジェクトOBJ、String fieldName)のパブリックフィールドGetDeclaredField(Object obj、string fieldname){for <? clazz = clazz.getsuperclass()){try {return clazz.getDeclaredfield(fieldName);} catch(Exception e){}} return null;}要約します
上記は、SQLステートメントを実行してクエリを実装するJavaの一般的な方法の詳細な説明です。私はそれが誰にでも役立つことを願っています。興味のある友人は、このサイトの他の関連トピックを引き続き参照できます。欠点がある場合は、それを指摘するためにメッセージを残してください。このサイトへのご支援をありがとうございました!