IT教育に携わっています。
現時点では、西部のMOOCプラットフォーム向けのコース「JDBC for Java Developer」を準備しています。 この詳細な計画は、面接の準備をするのに役立つと思います。
オンライン教育プラットフォームudemy.comでScala for Java Developersコースも教えています(Coursera / EdXに似ています)。
ある考えでは、4〜5時間で、ビデオ(プラットフォームの標準形式)、5〜10分の断片で説明できる有用なものの最大部分が最初の部分(6トピック: 「イントロ」 、 「データベースに接続」 、 「クエリデータベース」 、 「ResultSet」 、 「最適化」 、 「トランザクション」 + 35のネストされたサブトピック)。
価値はありますが、適合しませんでしたが、パート2に進みました(3つのトピック: 「ThreadLocal Tx-Manager」 、 「Distributed Transactions」 、 「Query Meta-Information」 + 10個のネストされたサブトピック)。
コース終了後の学生は、JDBC- Spring JDBC Template 、 JavaEEトランザクション 、 ORMの後、「次のレベル」の技術を開始する準備ができていることが期待されます。
合理的な発言は、「JDBC 4.2仕様を読むだけでよい」ということです。 はい、できます。 この計画は、仕様+提案されたターゲットユースケース( Dao Patter 、 TxManager 、 接続プーリングなど)の分析として構築されます。
前編
- イントロ
- MySQL RDBMS + MySQL Workbenchをインストールします
- RDBMS vs DB、データベース作成
- JDBCアーキテクチャ:JDBC API + JDBCドライバー
- JDBCドライバータイプ、トランスポートタイプ
- コネクタ/ J:MySQLへのJDBCドライバー
- JDBC / SQLバージョン、SQLダイアレクト
- データベースに接続する
- ドライバー、DriverManager、DataSource
- 接続
- JDBC URL
- コネクタ/ Jプロパティ
- クエリデータベース
- DDLおよびDML(TEXT)
- 声明
- Statement.executeUpdate:INSERT、UPDATE、DELETE
- 自動生成キーを取得する
- Statement.executeQuery:SELECT、ResultSet
- Statement.execute
- SQLException:errorCodeおよびerrorState
- DAOパターン
- DAOの代替:トランザクションスクリプト、アクティブレコード、ORM
- ResultSet
- ResultSet:位置決めと遷移
- ResultSet:タイプ
- ResultSet:並行性
- ResultSet:保持性
- 最適化
- PreparedStatement = +プリコンパイル-SQLインジェクション
- バッチ更新=ベクトル化
- 接続プーリング
- 取引
- ACIDプロパティ
- トランザクション境界
- セーブポイント
- トランザクション分離レベル
- MySQLトランザクション:MyISAMとInnoDB
- 非読解、ダーティリード「現象」を読む
- コミットされた読み取り、繰り返し不可の読み取り「現象」
- 繰り返し読み取り、ファントム読み取り「現象」
- シリアライズ可能
第二部
- ローカルTxマネージャー:手で
- 基本実装:ThreadLocal Tx-context
- @Transactionalアノテーション
- @TransactionalのAOP実装
- アプリケーションサーバー= Tx-context + Auth-context +スレッド管理
- 分散トランザクション
- 2PCプロトコル
- javax.jdbc.xa。*-2PCクライアントのXA-standart実装
- Distribured-Tx Managerアーキテクチャ
- メタ情報のクエリ
- データベースのメタ情報
- テーブルのメタ情報
- 行メタ情報
PSサードパーティプラットフォーム用にこのコースを準備することに加えて(英語の翻訳バージョンが準備中です。ロシア語の原本にはまだ置く場所がありません)、2月27日に、著者はJava開発者向けの16のWebセミナー(3か月)を開始します。
連絡先の詳細:
スカイプ:GolovachCourses
メール:GolovachCourses@gmail.com