誰もがJDBCに精通していると思います。あなたがJavaの人である限り、あなたが最初にJ2Eと接触したとき、あなたはそのようなことを学ばなければなりません。プログラムはデータベースに対処しなければならないと誰が言いますか? JDBCは、データベースに対処するための非常に基本的な知識であり、基礎となるレベルにも比較的近いものです。実際の作業では、人々は冬眠やMyBatisなどのより成熟したフレームワークを使用しています。
ただし、これらの成熟したフレームワークの根底にあるJDBCとして、マスターする必要があります。 JDBCの追加、削除、修正、クエリを理解することによってのみ、これらの成熟したフレームワークが、将来の冬眠またはMyBatisのソースコードの研究に関心がある場合、追加、削除、変更、クエリをどのように実装するかをよりよく理解できます。
トピックに戻って、開発環境を見てみましょう。
Java Language、Eclipse Development Tools、MySQLデータベース、NAVICATデータベース視覚化ツール。
開発環境の設置、建設、使用については、自分で情報を確認してください(非常に簡単)、ここでは詳細に説明しません。
最初のステップは、データベースを作成し、NAVICATデータベース視覚化ツールを使用してデータベースを作成し、データベースにテーブルを作成し、テーブル内のいくつかのフィールドを提供します(IDフィールド、一意のプライマリキー、自己具体的なシーケンスを提供することを忘れないでください)。
2番目のステップはデータベースを開くことです(誰もが自分でこの例をタップできることを願っていますが、これには時間がかかりません。JDBCがデータベースをどのように扱うかに精通しているので、図に表示します)。図に示されているように:
3番目のステップは、 Dbutilクラスを変換して、DAOレイヤーでのデータベース接続の取得を容易にすることです。コードは次のとおりです。
パッケージcom.czgo.db; import java.sql.connection; Import java.sql.drivermanager; import java.sql.sql.sqlecception; public static final string url = "jdbc:mysql://127.0.0.0.1:3306/imooc";プライベート静的最終文字列uname = "root"; private static final string pwd = "root";プライベート静的接続conn = null; static {try {// 1。ドライバーclass.forname( "com.mysql.jdbc.driver"); //2。データベースへの接続を取得= drivermanager.getConnection(url、uname、pwd); } catch(classNotFoundException e){e.printstacktrace(); } catch(sqlexception e){e.printstacktrace(); }} public static Connection getConnection(){return conn; }}ステップ4:エンティティクラスを作成します(上の図に示すように、誰もがパッケージの割り当てを観察します。MVCのアイデアを使用してこの例を設計します。MVCに関するデザインのアイデアがあります。
パッケージcom.czgo.model;インポートjava.io.serializable;/** * entityクラス:女神クラス * * @author alanlee * * */public class goddessはシリアル化可能{private static final long serialversionuid = 1l; / ***一意のプライマリキー*/プライベート整数ID; / ***名前*/プライベート文字列名; / ***携帯電話番号*/ private string mobie; / ***電子メール*/プライベート文字列メール; / ***ホームアドレス*/プライベート文字列アドレス。 public Integer getId(){return id; } public void setid(integer id){this.id = id; } public string getname(){return name; } public void setName(string name){this.name = name; } public string getMobie(){return mobie; } public void setMobie(string mobie){this.mobie = mobie; } public string getemail(){return email; } public void setemail(string email){this.email = email; } public string getAddress(){return Address; } public void setAddress(stringアドレス){this.address = address; }}ステップ5、 DAOレイヤーの実装(ここでは、小さな例であるため、実際の作業には大規模なプロジェクトの執筆インターフェイスはありません。これは、プログラムのメンテナンスと拡張に便利です)。コードは次のとおりです。
パッケージcom.czgo.dao;インポートjava.sql.connection; Import java.sql.preparedStatement; Import java.sql.Resultset; Import java.sql.sqlecception; Import java.util.ArrayList; Import Java.util.List; import com.czgo.db.dbutil com.czgo.model.goddess;/** *データレイヤー処理クラス * * @author alanlee * */public class goddessdao {/** * query query all goddesses * * @return * @throws sqlecception */public list <goddess> query()throws sqlex { //データベース接続を取得しますconn = dbutil.getConnection(); stringbuilder sb = new StringBuilder(); sb.append( "id、name、mobie、email、address from goddess"); //データベース接続を介してデータベースを操作して、追加、削除、修正、および検索ptmt = conn.preparestatement(sb.tostring())を実現します。結果rs = ptmt.executequery();女神女神=ヌル; while(rs.next()){goddess = new Goddess(); goddess.setid(rs.getint( "id")); goddess.setname(rs.getString( "name")); goddess.setmobie(rs.getstring( "mobie")); goddess.setemail(rs.getString( "email")); goddess.setaddress(rs.getString( "address")); goddess.setaddress(rs.getString( "address")); goddesslist.add(女神); } goddesslistを返します。 } / ** * query single goddess * * @return * @throws sqlexception * / public goddess querybyid(integer id)throws sqlexception {goddess g = null;接続conn = dbutil.getConnection();文字列sql = "" + "select * from imooc_goddess" + "where id =?"; preatedStatement ptmt = conn.preparestatement(sql); ptmt.setint(1、id);結果rs = ptmt.executequery(); while(rs.next()){g = new Goddess(); g.setId(rs.getint( "id")); g.setName(rs.getString( "name")); G.SetMobie(rs.getString( "Mobie")); g.setemail(rs.getString( "email")); g.setAddress(rs.getString( "アドレス")); } gを返します。 } / ** * add dodess * * @throws sqlexception * / public void addgoddess(goddess goddess)throws sqlexception {//データベース接続を取得conn = dbutil.getConnection(); string sql = "女神に挿入(名前、mobie、email、address)values(?、?、?、?)"; preatedStatement ptmt = conn.preparestatement(sql); ptmt.setString(1、goddess.getName()); ptmt.setString(2、goddess.getMobie()); ptmt.setString(3、goddess.getemail()); ptmt.setString(4、goddess.getAddress()); ptmt.execute(); } / ** *女神情報の変更 * * @throws sqlexception * / public void updategoddess(goddess goddess)throws sqlexception {connection conn = dbutil.getConnection(); string sql = "update daddess set name =?、、mobie =?、email =?、address =?where id =?"; preatedStatement ptmt = conn.preparestatement(sql); ptmt.setString(1、goddess.getName()); ptmt.setString(2、goddess.getMobie()); ptmt.setString(3、goddess.getemail()); ptmt.setString(4、goddess.getAddress()); ptmt.execute(); } / ** * delete goddess * * @throws sqlexception * / public void deletegoddess(integer id)throws sqlexception {connection conn = dbutil.getConnection();文字列sql = "delete from goddess where id =?"; preatedStatement ptmt = conn.preparestatement(sql); ptmt.setint(1、id); ptmt.execute(); }}ステップ6:制御レイヤーの実装(制御レイヤーは、ここで制御レイヤーとインターフェイスを模倣し、ここに直接データを構築するために使用されます。インターフェイスのデータである場合、リクエストを使用して受信パラメーターを渡すことができます。実際の状況に応じて、制御レイヤーのコードを変更および改善できます。コードは次のとおりです。
パッケージcom.czgo.action; import java.sql.sqlexception; Import java.util.list; import com.czgo.dao.goddessdao; import com.czgo.model.goddess;同じことが真実です * * @author alanlee * */public class goddessaction {/** * addded dodess * * @param goddess * @throws例外 */public void add(goddess goddess)throws exception {goddessdao dao = new goddessdao(); goddess.setname( "aoi sora"); goddess.setmobie( "52220000"); goddess.setemail( "[email protected]"); goddess.setaddress( "Beijing Red Light District"); dao.addgoddess(女神); } / ** * query single goddess * * @param id * @return * @throws sqlexception * / public goddess get(integer id)throws sqlexception {goddessdao dao = new goddessdao(); dao.querybyid(id)を返します。 } / ** *女神の変更 * * @param女神 * @throws例外 * / public void edit(goddess goddess)スロー例外{goddessdao dao = new goddessdao(); dao.updategoddess(女神); } / ** * delete goddess * * @param id * @throws sqlexception * / public void del(integer id)throws sqlexception {goddessdao dao = new goddessdao(); dao.deletegoddess(id); } / ** * queryすべての女神 * * @return * @throws例外 * / publicリスト<goddess> query()throws exception {goddessdao dao = new goddessdao(); dao.query()を返します。 } / ** *それが成功したかどうかをテスト * * @param args * @throws sqlexception * / public static void main(string [] args)throws sqlexception {goddesdao goddessdao = new goddessdao();リスト<Goddess> goddesslist = goddessdao.Query(); for(女神女神:goddesslist){system.out.println(goddess.getname() + "、" + goddess.getmobie() + "、" + goddess.getemail()); }}}最後に、メインメソッドが正常に実行されるかどうかを確認しましょう。
このようにして、MySQLデータベースへの単純なJava JDBC接続が完了して、追加、削除、変更、およびクエリが完了します。クエリ、つまり、JDBCの使用を統合するためのマルチコンディショナルクエリに基づいて高度なクエリを実行することを試みることができます。
上記はこの記事のすべての内容です。みんなの学習に役立つことを願っています。誰もがwulin.comをもっとサポートすることを願っています。