実際の開発DAOは、エンティティがどのように自動的にコードを生成するには?あなたのためのツール

01

「小さな猿応力」友人を懸念、前回の記事では、提唱してきたことをすべて知ってはCRUDを拒否し、最終的にCRUDは何でありますか?今日は、データベースの相互作用を持つ老人の妹の事のJava猿をお話します。

 

製品Nanxiaowang朗々は言った:小さな猿の学生は、私たちは最近プッシュする爆発モデル製品のを、あなたは最初に基本的なユーザー・ログイン機能を実現します。

 

地獄?小猿の心駄々をこねる:製品の爆発でなく、基本的なログインは、なぜユーザーのCRUD(CRUD)を達成されていないこと?

 

シャオ王単語、疲れ軍。午前中のセッションを論争することは終わった、彼はお持ち帰りと呼ばれる小さな猿は、後の胃の空虚を埋める、心の習慣の小さな類人猿は、製品の0-1爆発のモデルからマインドマップを構築するために始めました。

 

640?wx_fmt = PNG

 

王はポイントを逃し機能に対する需要があるだろうかどうかを確認する必要があり、製品の最初の分析、そしてデータベースのテーブル構造設計、そして小さな猿ソースのオペレーティングコードのようなものです:小猿の考えはこれです。

 

ウェイ小さな猿コードコード、それは真剣に非常に特別な名前であるので、我々は見物人を集めました。

 

ただ伝聞前に、今日は確かに見ました。最初sqlmapsで唯一の小さな猿のファイル多くの労力、手紙、マッピングファイルを書き込むための句読点を受け、その後、別のエンティティは、データベーステーブルのフィールドがマッピングされ、クラスを定義するために、次に同じ深刻なを使用DAO書き込みコードへの道、そして最後には、エンティティクラスかどうか、データベースのテーブルとフィールドの対応を確認するために戻ってきます。

 

私は確かに真剣に少し猿で立派に見えました。しかし、コードの小さな猿コードを見た後、私は腎臓の痛みを参照してください、これは反復作業が何であるかではない、それは本当に小さな猿に良い方法は、それをお勧めすることはできませんでしょうか?

 

02

 

小さな手で作られたツールと猿。

 

あなたが名前を付け、フォルダを作成し、あなたが好むディレクトリを比較見つける小型の猿、MyBatisの発電機は、実際には、問題ああ、これはあなたのツールキットのディレクトリです何名から、次のようなものは、このディレクトリに置かれていません。

 

小型類人猿は、私は煙のルートに行き、あなたにそれが後で使用されるダウンロードのjarパッケージへの分を与える、のは、ダウンロードを持っているあなたのダウンロードリンクを提供しないようにしましょう、お使いのコンピュータには接続ドライバパッケージデータベースを参照してくださいません煙。

https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.38/mysql-connector-java-5.1.38.jar

さて、あなたは小さな猿をダウンロードし、私はタバコを吸っていなかった友人です。

 

コンピュータにはパッケージが存在しない場合は今、あなたが終わっダウンロードすること、それは、見ることがMyBatisの-ジェネレータコア-1.3.2.jarが、それは後で使用するためにとにかくそれをダウンロードするには、次のアドレスに応じているしていない、それは使用しないやっているかどうか、へ。

https://repo1.maven.org/maven2/org/mybatis/generator/mybatis-generator-core/1.3.2/mybatis-generator-core-1.3.2.jar

  

小猿は、これまで私たちの仕事はほとんど準備ができているが、あなたはまた、直接の行にそれを変更するためにそれを変更するには、次のコードを乗り越えるために、設定ファイルgeneratorConfig.xmlを作成するために、ファイルの内容についての心配をしていない必要があります。注関与ディレクトリ内で行う必要があり、コンピュータ上のディレクトリになっていた、あなたは最初しばらくの修正、私はコーヒーを飲みに行きました。以下のように(注私たちは、ディレクトリを変更しなければならないこと)

<XMLバージョン= "1.0"エンコード= "UTF-8"?> 
<DOCTYPE generatorConfiguration!
        PUBLIC " - // mybatis.org//DTD MyBatisのジェネレーターの設定1.0 // EN" 
        「http://mybatis.org/dtd /mybatis-generator-config_1_0.dtd "> 
<generatorConfiguration> 
  <! -指定数据连接驱动瓶地址- > 
  <classPathEntry 
    場所=" /アプリ/ MyBatisの発電機/ mysqlのコネクタ-javaの-5.1.38.jar」 /> 

  <! -指定数据连接驱动瓶地址- > 
  <コンテキストID = "db2Tables" targetRuntime = "MyBatis3"> 
    <プラグインタイプ= "org.mybatis.generator.plugins.SerializablePlugin" /> 
    <commentGenerator> 
      <プロパティ名前= "javaFileEncoding"=値"UTF-8" /> 
      <! -タイムスタンプ注釈を生成するかどうかを生成- >  
      「真の」<プロパティ名=「suppressDate」値= />
      <! -注釈をキャンセルするかどうか- > 
      <プロパティ名= "suppressAllComments"値= "偽" /> 
    </ commentGenerator> 

    < -データベース接続情報:!クラスドライバ、接続アドレス、ユーザー名、パスワード- > 
    <JDBCConnectionのdriverClass = "はcom.mysql.jdbc.Driver" 
      connectionURLは= "JDBC:MySQLの:// localhostを:3306 / baokuan" 
      はuserId = "ルート"パスワード= "ルート" /> 

    < - targetProjectは、格納されたエンティティークラスを生成:!ディレクトリ- > 
    <javaModelGenerator targetPackage = "com.cool.baokuan.modules.model" 
      targetProject = "/アプリケーション/ MyBatisの-ジェネレータ/ SRC"> 
      <プロパティ名= "trueに" "enableSubPackages" =値/> 
      <プロパティ名= "trimStrings"値= "真「/>に
    </ javaModelGenerator> 

    targetProject :!マッパーマッピングファイル生成場所- - <>
    <sqlMapGenerator targetPackage = "com.cool.baokuan.modules.dao" 
      targetProject = "/アプリ/ MyBatisの発電機/ SRC"> 
      <プロパティ名= "enableSubPackages"値= "true"を/> 
    </ sqlMapGenerator> 

    <! - targetPackage:マッパー接口生成的位置- > 
    <javaClientGenerator targetPackage = "com.cool.baokuan.modules.dao" 
      targetProject = "/アプリ/ MyBatisの発電機/ SRC"タイプ= "XMLMAPPER"> 
      <プロパティ名= "enableSubPackages"値= "true"を/> 
    </ javaClientGenerator> 

    <! -指定数据库表- > 
    <表tableNameの= "T_USER" domainObjectName = "ユーザー" 
      enableCountByExample =」偽」enableUpdateByExample = "false"を
      enableDeleteByExample = "false"をenableSelectByExample = "false"に
      selectByExampleQueryId = "偽" /> 
      
  </コンテキスト> 
</ generatorConfiguration>

  

小猿、完全に右、ディレクトリを変更?

 

そして、以上の変更、最後の工程との間に差は、スクリプトの実行を作成し、あなたのシステムがWindowsであるため、スクリプト名がある場合run.bat私のスクリプトがあるので、私は、マックだrun.sh以下のコンテンツが作成され、それにコピーされます。

Javaの-jar MyBatisの発電機コア-1.3.2.jar -configfile generatorConfig.xml -overwrite

  

まあ、少し猿、おめでとう、あなたは満足して、結果を確認するために、独自のを構築するためのハンドツールキットを完了していませんか?

 

640?wx_fmt = PNG

 

小型の猿は、ラバは馬で、私たちはヨーヨーを抜く必要があります。時間によって、あなたは小さなチョッパー、歌の友人を試してみてください。実行のrun.batまたはrun.sh試みへの鍵。

 

640?wx_fmt = JPEG

 

このツールを使用して、将来的にはもはや、マッピングファイルの書き込みを繰り返す必要があり、書き込みエンティティクラス、DAOを書き、あなただけのラインで構成データベースのテーブル名を設定するためうわー、上記の効果を参照してください、小さな猿は本当に、あなたに衝撃を与えません単にハンサムな友人。

 

小猿、過度の喜びを控えています。あなたが将来的にこのツールを使用すると、我々は、変更に注意を払う必要がありますgeneratorConfig.xmlをローカルファイル以下、または単一の蛾はなります。

1.変更アドレスジャーに接続され、指定されたデータ・ドライバ;	 
2.変更データベース接続URL、ユーザー名、パスワード;	 
3.コンピュータのためのあなたのtargetProjectディレクトリを変更;	 
4.修正データベーステーブル。

  

まあ、個々の、あなた自身の良い占いの後に、それをマスタードアの練習に少し猿、猿を見ていること(?)。

 

03

 

早業、忙しい小さな猿が募集したいと思います。

 

製品ラインにわずか数日後には、ユーザーがもっとゆっくり、急激本当に爆発的な製品ああ、ユーザーのクエリを増加させました。

 

シャオ王香港香港を破り製品の牛は、言った:小さな猿が、最近遅く多くのユーザーの経験と遅く、反応系があり、コードはバグああがありませんか?

 

地獄、コードは、コードがバグを持っていることか、バグがあります!実際には、鏡のような小さな猿の心、あなたは誰よりも知っている、ユーザテーブルは、我々が想定さクエリが、それをすることに遅すぎるので、大きすぎるのですか?

 

唯一の小さな猿、神は、ペンを取り出した問題について、多くの本を書いた、「サブライブラリーサブテーブル」は、小猿の数学的なスキルを賞賛する必要があり、サブライブラリーサブテーブル燃え脳のシリーズをチェックする処理を開始しました小型類人猿は注意を払っていないが、私はあなたとささいな窃盗の数、および迅速シェアを覚えています。

 

サブライブラリーサブテーブルのルール

 

マスタノードMのデータベース場合は、データテーブルをサブテーブルのN個の合計に分割、テーブルを分割することができるフィールドが数値Xに変換され、データベースインスタンスのX%のMの数、  回数データテーブルがX%Nです。

 

たとえば、次の場合、マスターノード番号M = 6、スプリットN = 1200のテーブルの総数は、単一のサブ区画200のテーブル番号、データベースインスタンスのX%6の数、X%で1200の番号のデータテーブル。

 

その後、番号がデータベースに0であり、番号0,6,12,18 ...データテーブルが存在する; データベース内の番号1、...などのシリアル・データ・テーブル1,7,13,19あります。

 

テーブル機構の数値フィールドを分割

 

フィールドによってテーブルを分割取るCRC32は、絶対値の後、それらを取る、すなわち、上記X「サブサブテーブルリポジトリ式」で

 

私はまた、このセグメントの擬似コードのために特別に書いた、小さな猿を期待していませんでした。

CRC32 =新しい新java.util.zip.CRC32 java.util.zip.CRC32();	 
//分割はCRC32フィールド	 
crc32.update(splitField.getBytes(default_encodingを));	 
ロングjava.lang.Math.abs X =( crc32.getValue());	 

	
//インデックスデータベース	 
ロング= X N-dbNum%;	 
列dbPos String.Formatの=( "%02D"、N-);	 
のSystem.out.println( "添字データベース:" + dbPos) ;	 

	
//テーブル添字	 
ロングM = X%のtableNum、	 
文字列tablePos String.Formatの=( "%03D"、M);	 
のSystem.out.println( "添え字表:" + tablePos)。

  

また、小さな猿最終原稿が刻まれたときに、また3回を書いた:シャーディング-JDBC、シャーディング-JDBC、シャーディング-対応のJDBC。特に3回、そうあなたを作るあなたは、自分の脳にこのようなものを見てみたいものを教えてください、または小猿の友人のリズムであり追いつくことはありませんが書かれました。

 

04

確かに一緒に私は小さな猿のORZ崇拝を見ることができる小さな猿が、群衆に皆を許可します。引用古典:あなたの叔父やあなたの叔父が、少し猿はCRUD小さな猿の友人を繰り返す前に、もはやありません。3日間の待機を行い、参照、そうヨの周りのすべての小さな猿を過小評価しない人。

 

 

おすすめ

転載: www.cnblogs.com/socoool/p/12629793.html