diff --git a/.project b/.project
new file mode 100644
index 0000000..a0dc2ef
--- /dev/null
+++ b/.project
@@ -0,0 +1,23 @@
+
+
+ development-empmanager
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ org.eclipse.wst.validation.validationbuilder
+
+
+
+
+
+ org.eclipse.wst.jsdt.core.jsNature
+ org.eclipse.jdt.core.javanature
+
+
diff --git a/bin/.project b/bin/.project
new file mode 100644
index 0000000..a0dc2ef
--- /dev/null
+++ b/bin/.project
@@ -0,0 +1,23 @@
+
+
+ development-empmanager
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ org.eclipse.wst.validation.validationbuilder
+
+
+
+
+
+ org.eclipse.wst.jsdt.core.jsNature
+ org.eclipse.jdt.core.javanature
+
+
diff --git a/bin/README.md b/bin/README.md
new file mode 100644
index 0000000..14fce5e
--- /dev/null
+++ b/bin/README.md
@@ -0,0 +1,255 @@
+# オブジェクト指向総合演習
+
+## はじめに(演習の⽬的と取り組み⽅)
+当演習は、講義で学んだことを⾃⼒で実践できるようになるために実施します。 そのために以下の内容を守って演習に取り組んでください。
+
+### 納品物、納期を守りましょう
+この演習は、実際の仕事を想定した内容です。
+提出物の内容と提出期限は必ず守ってください。
+作業が間に合わない、提出物に問題が出そうな場合は、**必ずルールにしたがって適切な相⼿に相談してください**。
+
+### 適切な⼿順で開発しましょう
+プログラムを書き始める前に、**README.md** や**仕様書**(配布されている場合) を必ず読んでください。
+「**何を作るのか**」、「**どこまで作ればよいのか**」を理解してから作業を始めてください。
+
+### 知らないことは⾃分で調べましょう
+この演習には、**講義で扱っていない内容が⼀部含まれています**。
+その場合は、インターネットなどで⾃分で調べながら進めてください。
+調べることも、エンジニアにとって⼤切なスキルの⼀つです。
+
+## 各種説明
+
+### 演習目的
+
+オブジェクト指向の概念や機能を組み合わせた、オブジェクト指向総合演習課題です。
+学習した知識のアウトプット、オブジェクト指向の活用法の学習として実施していただきます。
+また、課題をとおして以下のようなビジネススキルも合わせて学習していただきます。
+
+- 納期の重要さ
+- 開発の進め方
+- 調査力
+- 質問力
+
+### システム名
+
+社員メンテナンス(ファイルシステム版)
+
+### システム説明
+
+社員情報(CSVファイル)のCRUDシステム
+
+- ※CRUDとは
+ - Create(生成)、Read(読み取り)、Update(更新)、Delete(削除)の機能を有したシステムのこと。
+
+### 配布物
+
+##### docフォルダ
+
+ - API仕様書(JavaDoc)
+ - 今回作っていただくMain.javaとEmployeeに関しては、回答例のメソッド構成が載っています。
+ - 参考にしていただいても構いませんし、独自の作り方をしていただいても構いません。
+
+
+##### fileフォルダ
+
+ - EmployeeData.csv
+ - 従業員データ一覧のCSVファイル
+ - DepartmentData.csv
+ - 部署データ一覧のCSVファイル(追加課題用)
+
+
+##### srcフォルダ
+ - com.rhizome.example.access.BaseAccess.java
+ - ファイルアクセスのクラスに継承するベースクラス
+ - com.rhizome.example.access.EmployeeAccess.java
+ - 従業員データの検索・登録・更新・削除を行うクラス
+ - com.rhizome.example.data.BaseData.java
+ - ファイルから取得したデータの格納用クラスに継承するベースクラス
+ - com.rhizome.example.data.EmployeeData.java
+ - EmployeeData.csvから取得した従業員データを格納するためのクラス
+ - com.rhizome.example.main.Main.java
+ - システムのメイン処理を書くクラス
+
+
+##### 実行例
+ - エクスプローラ上で「このファイルを実行してください.bat」ファイルを実行してください
+
+### 納品物
+
+作成したプログラム
+
+### 進め方
+
+1. 各種説明をじっくり読んで把握しましょう
+ 1. 把握できなければ質問してください。
+2. プロジェクトにどのファイルがあるかをすべて確認してください
+3. 確認できたら、1段階目から順に進めてください
+ 1. 問題内容を見て、何をしたいのか最初に把握するようにしてください
+ 2. そして「実行例」を見て、
+ 3. どう作るのかを考えてから作成に入りましょう。
+4. 配布物のクラスを修正、もしくは新規クラスを追加して作成してください
+
+
+### ゴール
+
+この問題を解き終わったら、ファイルを使った社員のCRUDシステムが完成します。
+問題を通して、以下のことができるようになることがゴールです。
+すべて身につけられた方は素晴らしいです。
+もちろんすべては難しくても、いくつかは達成できるように取り組みましょう。
+
+- 実践的なプログラムにおけるオブジェクト指向の3大機能の目的・メリット・使用方法を理解する
+ - 継承(抽象クラスを継承し、抽象メソッドをオーバーライドしてクラス作成)
+ - 多態性(データクラスを親クラスの型で扱うことで汎用化)
+ - カプセル化(社員データクラスのprivateフィールド操作や、ファイルアクセス親クラスのprotectedメソッド利用)
+- 例外処理の使用方法、止まらないシステムの作り方を理解する
+- コレクション(ArrayList)の使用方法を理解する
+- 既存のメソッドを利用する意識を付ける(汎用化・冗長性の排除)
+- 調査(検索)力をつける / 調査する癖をつける
+- ピンポイントで質問できるようになる
+
+----
+
+## 問題
+
+### 前提
+
+このシステムは社員情報をメンテナンスするためのシステムです。
+しかし、納品先の担当者より
+
+```
+社員一覧を表示する機能がほしい。
+毎回社員IDを聞くのは手間なので、一覧があるとすごく便利
+```
+
+との要望を頂いたため、改修するに至りました。
+
+- 基本的にどこに手を入れていただいても構いません
+ - 既存メソッド/既存クラスに手を入れてもOKです
+
+
+### 1段階目(検索メニューの追加)
+
+検索機能に遷移した後、全件検索なのか条件検索なのかの振り分けメニューを追加してください。
+1:全件検索 2:条件検索 それ以外:戻る
+と表示させてください。
+
+<実行例>
+
+```
+システムを開始します
+
+1:検索 2:登録 3:更新 4:削除 0:終了
+1 ←1を入力
+
+1:全検索 2:条件検索 それ以外:戻る ←このメニュー追加してください
+IDを入力してください ←この機能は実装済みです
+```
+
+### 2段階目(検索メニューの条件検索機能実装)
+
+検索メニュー(1:全検索 2:条件検索 それ以外:戻る)に対して、ユーザー入力に対応した機能を実装してください。
+2段階目の対象は、 `2:条件検索` の部分になります。
+検索メニューにて2が入力された場合、今までのID検索機能に遷移するようにしてください。
+
+<実行例>
+
+```
+システムを開始します
+
+1:検索 2:登録 3:更新 4:削除 0:終了
+1 ←1を入力
+
+1:全検索 2:条件検索 それ以外:戻る
+2 ←2を入力
+
+IDを入力してください ←この機能は実装済みです
+```
+
+### 3段階目(検索メニューの戻る機能実装)
+
+検索メニュー(1:全検索 2:条件検索 それ以外:戻る)に対して、ユーザー入力に対応した機能を実装してください。
+3段階目の対象は、 `3:戻る` の部分になります。
+検索メニューにて1/2以外が入力された場合、メインメニュー(1:検索 2:登録 3:更新 4:削除 0:終了)に戻るようにしてください。
+
+<実行例>
+
+```
+システムを開始します
+
+1:検索 2:登録 3:更新 4:削除 0:終了
+1 ←1を入力
+
+1:全検索 2:条件検索 それ以外:戻る
+a ←1 or 2以外を入力
+
+1:検索 2:登録 3:更新 4:削除 0:終了 ←メインメニューに戻ります
+```
+
+### 4段階目(検索メニューの全件検索機能実装)
+
+検索メニュー(1:全検索 2:条件検索 それ以外:戻る)に対して、ユーザー入力に対応した機能を実装してください。
+4段階目の対象は、 `1:全件検索` の部分になります。
+検索メニューにて1が入力された場合、EmployeeData.csvファイルに記載されている情報が一覧で表示されるようにしてください。
+一覧が表示された後は、メインメニューに戻るような形にしてください。
+
+<実行例>
+
+```
+システムを開始します
+
+1:検索 2:登録 3:更新 4:削除 0:終了
+1
+1:全検索 2:条件検索 それ以外:戻る
+1 ←1を入力
+10000 山田龍也 ヤマダタツヤ yamada@hoge.jp aaa 10
+10001 高橋準 タカハシジュン jtaka@hoge.jp bbb 10
+10002 麻枝史明 マエダフミアキ fmak@hoge.jp ccc 11
+10003 丸戸章介 マルトショウスケ marusyo@hoge.jp ddd 12
+10004 三宅武 ミヤケタケシ miya@hoge.jp eee 13
+10005 丸井悠 マルイハルカ haru@hoge.jp fff 13
+10006 涼元香織 スズモトカオリ suzumoto@hoge.jp ggg 13
+10007 葉山稔 ハヤマミノル mhayama@hoge.jp hhh 14
+10008 川上朱里 カワカミアカリ kawakami@hoge.jp iii 14
+10009 杉井肇 スギイハジメ sugi@hoge.jp jjj 15
+
+1:検索 2:登録 3:更新 4:削除 0:終了 ←メインメニューに戻る
+```
+
+----
+
+## <以下、時間が余った人向け>
+
+### 5段階目(リファクタリング)
+
+作成したプログラムや既存のプログラム修正
+
+
+
+### 6段階目(実行例の仕様確認)
+
+作成したシステムの総合テストを行いましょう。
+実行例通り動いているか確認してください。
+以下の点を調査しながら、自身で項目を考えてみましょう。
+
+- 正常系・異常系
+- ブラックボックス・ホワイトボックス
+- 分岐網羅・命令網羅
+
+
+### 7段階目(部署マスター管理作成)
+
+EmployeeAccess、EmployeeDataを参考にDepartmentAccess、DepartmentDataを作成し、部署で全検索、条件検索、削除、登録、変更を実装してください。
+また、「9:データ切り替え」切替を行うたびに社員と部署のデータを切り替えるようにしましょう。
+メニューが以下となります。
+`1:検索 2:登録 3:更新 4:削除 9:データ切り替え 0:終了 (管理対象:xxxx)`
+
+<実行例>
+
+```
+システムを開始します
+
+1:検索 2:登録 3:更新 4:削除 9:データ切り替え 0:終了 (管理対象:Employee)
+9 ←9を入力
+
+1:検索 2:登録 3:更新 4:削除 9:データ切り替え 0:終了 (管理対象:Department)
+````
\ No newline at end of file
diff --git a/bin/doc/allclasses-index.html b/bin/doc/allclasses-index.html
new file mode 100644
index 0000000..61afb74
--- /dev/null
+++ b/bin/doc/allclasses-index.html
@@ -0,0 +1,178 @@
+
+
+
+
+
+すべてのクラス
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/doc/allclasses.html b/bin/doc/allclasses.html
new file mode 100644
index 0000000..1c18fbd
--- /dev/null
+++ b/bin/doc/allclasses.html
@@ -0,0 +1,32 @@
+
+
+
+
+
+すべてのクラス
+
+
+
+
+
+
+
+
+
+
+
+
+すべてのクラス
+
+
+
+
+
diff --git a/bin/doc/allpackages-index.html b/bin/doc/allpackages-index.html
new file mode 100644
index 0000000..f52c087
--- /dev/null
+++ b/bin/doc/allpackages-index.html
@@ -0,0 +1,172 @@
+
+
+
+
+
+すべてのパッケージ
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/doc/com/rhizome/example/access/BaseAccess.html b/bin/doc/com/rhizome/example/access/BaseAccess.html
new file mode 100644
index 0000000..bcd8521
--- /dev/null
+++ b/bin/doc/com/rhizome/example/access/BaseAccess.html
@@ -0,0 +1,511 @@
+
+
+
+
+
+BaseAccess
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- java.lang.Object
+-
+
+- com.rhizome.example.access.BaseAccess
+
+
+
+
+
+
+-
+
+
+
+-
+
+
+
コンストラクタの概要
+
+コンストラクタ
+
+| 修飾子 |
+コンストラクタ |
+説明 |
+
+
+protected |
+BaseAccess(java.lang.String filePath) |
+
+ 引数のファイルパスでファイルオブジェクトを生成して、
+ 対象ファイルフィールドを初期化します
+ |
+
+
+
+
+
+
+
+
+-
+
+
+
メソッドの概要
+
+すべてのメソッド インスタンス・メソッド abstractメソッド concreteメソッド
+
+| 修飾子とタイプ |
+メソッド |
+説明 |
+
+
+protected void |
+addData(BaseData data) |
+
+ 対象ファイルにBaseDataの中身のCSV表現を追記します
+ |
+
+
+abstract void |
+delete(java.lang.String key) |
+
+ ファイルから主キーが指定されたkeyに合致する行を削除する
+ 利用メソッド:updateData()
+ |
+
+
+abstract void |
+insert(BaseData data) |
+
+ ファイルに指定データを追加する
+ 利用メソッド:addData()
+ |
+
+
+protected java.util.List<java.lang.String> |
+readData() |
+
+ 対象ファイルの中を全件読み込んで、
+ Listの形式で返却します
+ |
+
+
+abstract java.util.List<BaseData> |
+selectAll() |
+
+ ファイルの情報を全件取得する
+ 利用メソッド:readData()
+ |
+
+
+abstract java.util.List<BaseData> |
+selectById(java.lang.String key) |
+
+ ファイルの主キーが指定されたkeyに合致する情報を取得する
+ 利用メソッド:readData()
+ |
+
+
+abstract void |
+update(BaseData data) |
+
+ ファイルの指定データと主キーが一致する行を更新する
+ 利用メソッド:updateData()
+ |
+
+
+protected void |
+updateData(java.util.List<BaseData> list) |
+
+ 対象ファイルの内容を更新対象リストの内容に上書きします
+ |
+
+
+
+-
+
+
+
クラスから継承されたメソッド java.lang.Object
+clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/doc/com/rhizome/example/access/EmployeeAccess.html b/bin/doc/com/rhizome/example/access/EmployeeAccess.html
new file mode 100644
index 0000000..be6107a
--- /dev/null
+++ b/bin/doc/com/rhizome/example/access/EmployeeAccess.html
@@ -0,0 +1,449 @@
+
+
+
+
+
+EmployeeAccess
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- java.lang.Object
+-
+
+
+
+
+
+
+-
+
+
+
+
+
+-
+
+
+
メソッドの概要
+
+すべてのメソッド インスタンス・メソッド concreteメソッド
+
+| 修飾子とタイプ |
+メソッド |
+説明 |
+
+
+void |
+delete(java.lang.String key) |
+
+ ファイルから主キーが指定されたkeyに合致する行を削除する
+ 利用メソッド:updateData()
+ |
+
+
+void |
+insert(BaseData data) |
+
+ ファイルに指定データを追加する
+ 利用メソッド:addData()
+ |
+
+
+java.util.List<BaseData> |
+selectAll() |
+
+ ファイルの情報を全件取得する
+ 利用メソッド:readData()
+ |
+
+
+java.util.List<BaseData> |
+selectById(java.lang.String key) |
+
+ ファイルの主キーが指定されたkeyに合致する情報を取得する
+ 利用メソッド:readData()
+ |
+
+
+void |
+update(BaseData updateData) |
+
+ ファイルの指定データと主キーが一致する行を更新する
+ 利用メソッド:updateData()
+ |
+
+
+
+
+-
+
+
+
クラスから継承されたメソッド java.lang.Object
+clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+
+
+
+
+
+
+
+
+
+-
+
+
+
+-
+
+
+
コンストラクタの詳細
+
+
+
+
+-
+
EmployeeAccess
+public EmployeeAccess()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/doc/com/rhizome/example/access/package-summary.html b/bin/doc/com/rhizome/example/access/package-summary.html
new file mode 100644
index 0000000..18af5bd
--- /dev/null
+++ b/bin/doc/com/rhizome/example/access/package-summary.html
@@ -0,0 +1,168 @@
+
+
+
+
+
+com.rhizome.example.access
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/doc/com/rhizome/example/access/package-tree.html b/bin/doc/com/rhizome/example/access/package-tree.html
new file mode 100644
index 0000000..0e58e7d
--- /dev/null
+++ b/bin/doc/com/rhizome/example/access/package-tree.html
@@ -0,0 +1,165 @@
+
+
+
+
+
+com.rhizome.example.access クラス階層
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/doc/com/rhizome/example/data/BaseData.html b/bin/doc/com/rhizome/example/data/BaseData.html
new file mode 100644
index 0000000..62b0506
--- /dev/null
+++ b/bin/doc/com/rhizome/example/data/BaseData.html
@@ -0,0 +1,359 @@
+
+
+
+
+
+BaseData
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- java.lang.Object
+-
+
+- com.rhizome.example.data.BaseData
+
+
+
+
+
+
+-
+
+
+
+-
+
+
+
コンストラクタの概要
+
+コンストラクタ
+
+| コンストラクタ |
+説明 |
+
+
+BaseData() |
+ |
+
+
+
+
+
+
+
+
+-
+
+
+
メソッドの概要
+
+すべてのメソッド インスタンス・メソッド abstractメソッド
+
+| 修飾子とタイプ |
+メソッド |
+説明 |
+
+
+abstract java.lang.String |
+getPrimaryKeyValue() |
+
+ ファイルの主キーの値を取得
+ |
+
+
+abstract java.lang.String |
+toCSV() |
+
+ インスタンスのフィールドの値をカンマ区切りで連結して返却
+ |
+
+
+abstract java.lang.String |
+toString() |
+
+ インスタンスのフィールドの値をタブ区切りで連結して返却
+ |
+
+
+
+-
+
+
+
クラスから継承されたメソッド java.lang.Object
+clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+
+
+
+
+
+
+
+
+
+-
+
+
+
+-
+
+
+
コンストラクタの詳細
+
+
+
+
+-
+
BaseData
+public BaseData()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/doc/com/rhizome/example/data/EmployeeData.html b/bin/doc/com/rhizome/example/data/EmployeeData.html
new file mode 100644
index 0000000..35b1c2c
--- /dev/null
+++ b/bin/doc/com/rhizome/example/data/EmployeeData.html
@@ -0,0 +1,582 @@
+
+
+
+
+
+EmployeeData
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- java.lang.Object
+-
+
+
+
+
+
+
+-
+
+
+
+
+
+-
+
+
+
メソッドの概要
+
+
+-
+
+
+
クラスから継承されたメソッド java.lang.Object
+clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+
+
+
+
+
+
+
+
+
+-
+
+
+
+-
+
+
+
コンストラクタの詳細
+
+
+
+
+-
+
EmployeeData
+public EmployeeData()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/doc/com/rhizome/example/data/package-summary.html b/bin/doc/com/rhizome/example/data/package-summary.html
new file mode 100644
index 0000000..352c786
--- /dev/null
+++ b/bin/doc/com/rhizome/example/data/package-summary.html
@@ -0,0 +1,168 @@
+
+
+
+
+
+com.rhizome.example.data
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/doc/com/rhizome/example/data/package-tree.html b/bin/doc/com/rhizome/example/data/package-tree.html
new file mode 100644
index 0000000..cb70f78
--- /dev/null
+++ b/bin/doc/com/rhizome/example/data/package-tree.html
@@ -0,0 +1,165 @@
+
+
+
+
+
+com.rhizome.example.data クラス階層
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+クラス階層
+
+- java.lang.Object
+
+- com.rhizome.example.data.BaseData
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/doc/com/rhizome/example/main/Main.html b/bin/doc/com/rhizome/example/main/Main.html
new file mode 100644
index 0000000..5d410ad
--- /dev/null
+++ b/bin/doc/com/rhizome/example/main/Main.html
@@ -0,0 +1,447 @@
+
+
+
+
+
+Main
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- java.lang.Object
+-
+
+- com.rhizome.example.main.Main
+
+
+
+
+
+
+-
+
+
+
+-
+
+
+
コンストラクタの概要
+
+コンストラクタ
+
+| コンストラクタ |
+説明 |
+
+
+Main() |
+ |
+
+
+
+
+
+
+
+
+-
+
+
+
メソッドの概要
+
+
+-
+
+
+
クラスから継承されたメソッド java.lang.Object
+clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+
+
+
+
+
+
+
+
+
+-
+
+
+
+-
+
+
+
コンストラクタの詳細
+
+
+
+
+-
+
Main
+public Main()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/doc/com/rhizome/example/main/package-summary.html b/bin/doc/com/rhizome/example/main/package-summary.html
new file mode 100644
index 0000000..de1c2c6
--- /dev/null
+++ b/bin/doc/com/rhizome/example/main/package-summary.html
@@ -0,0 +1,164 @@
+
+
+
+
+
+com.rhizome.example.main
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+-
+
+クラスの概要
+
+| クラス |
+説明 |
+
+
+
+| Main |
+ |
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/doc/com/rhizome/example/main/package-tree.html b/bin/doc/com/rhizome/example/main/package-tree.html
new file mode 100644
index 0000000..e03107d
--- /dev/null
+++ b/bin/doc/com/rhizome/example/main/package-tree.html
@@ -0,0 +1,161 @@
+
+
+
+
+
+com.rhizome.example.main クラス階層
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+クラス階層
+
+- java.lang.Object
+
+- com.rhizome.example.main.Main
+
+
+
+
+
+
+
+
+
diff --git a/bin/doc/constant-values.html b/bin/doc/constant-values.html
new file mode 100644
index 0000000..1189025
--- /dev/null
+++ b/bin/doc/constant-values.html
@@ -0,0 +1,148 @@
+
+
+
+
+
+定数フィールド値
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/doc/deprecated-list.html b/bin/doc/deprecated-list.html
new file mode 100644
index 0000000..6dd5e8f
--- /dev/null
+++ b/bin/doc/deprecated-list.html
@@ -0,0 +1,146 @@
+
+
+
+
+
+非推奨APIのリスト
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/doc/element-list b/bin/doc/element-list
new file mode 100644
index 0000000..ec01135
--- /dev/null
+++ b/bin/doc/element-list
@@ -0,0 +1,3 @@
+com.rhizome.example.access
+com.rhizome.example.data
+com.rhizome.example.main
diff --git a/bin/doc/help-doc.html b/bin/doc/help-doc.html
new file mode 100644
index 0000000..77c014e
--- /dev/null
+++ b/bin/doc/help-doc.html
@@ -0,0 +1,272 @@
+
+
+
+
+
+APIヘルプ
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+-
+
+
概要
+概要ページはAPIドキュメントのフロント・ページで、各パッケージの概要を含む全パッケージのリストが表示されます。一連のパッケージの概要説明も表示されます。
+
+
+-
+
+
パッケージ
+各パッケージには、そのパッケージのクラスおよびインタフェースのリストと、それぞれの概要を含むページがあります。これらのページは6つのカテゴリで構成されます。
+
+- インタフェース
+- クラス
+- 列挙型
+- 例外
+- エラー
+- 注釈型
+
+
+
+-
+
+
クラスまたはインタフェース
+各クラス、インタフェース、ネストされたクラスおよびネストされたインタフェースには個別のページがあります。各ページには次のように、クラスまたはインタフェースの説明と、概要表およびメンバーの詳細説明が含まれます。
+
+- クラス階層表示
+- 直系のサブクラス
+- 既知のサブインタフェースのリスト
+- 既知の実装クラスのリスト
+- クラスまたはインタフェースの宣言
+- クラスまたはインタフェースの説明
+
+
+
+- ネストされたクラスの概要
+- フィールドの概要
+- プロパティの概要
+- コンストラクタの概要
+- メソッドの概要
+
+
+
+- フィールドの詳細
+- プロパティの詳細
+- コンストラクタの詳細
+- メソッドの詳細
+
+各概要エントリには、その項目の詳細な説明の中から1行目の文が表示されます。詳細な説明はソース・コードに現れる順に並べられますが、概要エントリはアルファベット順に並べられます。これによって、プログラマが設定した論理的なグループ分けが保持されます。
+
+
+-
+
+
注釈型
+各注釈型には、それ自身の個別のページと次のセクションがあります:
+
+- 注釈型の宣言
+- 注釈型の説明
+- 必須要素の概要
+- 任意要素の概要
+- 要素の詳細
+
+
+
+-
+
+
列挙型
+各列挙型には、それ自身の個別のページと次のセクションがあります:
+
+- 列挙宣言
+- 列挙型の説明
+- 列挙型定数の概要
+- 列挙型定数の詳細
+
+
+
+-
+
+
階層ツリー(クラス階層)
+すべてのパッケージにはクラス階層ページがあり、さらに各パッケージの階層があります。各階層ページは、クラスのリストとインタフェースのリストを含みます。クラスはjava.lang.Objectを開始点とする継承構造で編成されます。インタフェースは、java.lang.Objectからは継承しません。
+
+- 概要ページを表示しているときに「階層ツリー」をクリックすると、全パッケージの階層が表示されます。
+- 特定のパッケージ、クラスまたはインタフェースのページを表示しているときに「階層ツリー」をクリックすると、該当するパッケージのみの階層が表示されます。
+
+
+
+-
+
+
推奨されていないAPI
+推奨されていないAPIページは、推奨されていないすべてのAPIのリストを表示します。非推奨APIとは、機能改良などの理由から使用をお薦めできなくなったAPIのことで、通常はそれに代わるAPIが提供されます。非推奨APIは今後の実装で削除される可能性があります。
+
+
+-
+
+
索引
+索引には、すべてのクラス、インタフェース、コンストラクタ、メソッドおよびフィールドのアルファベット順のインデックスと、すべてのパッケージおよびすべてのクラスのリストが含まれます。
+
+
+-
+
+
すべてのクラス
+すべてのクラスリンクには、すべてのクラスおよびインタフェース(非staticのネストされた型を除く)が表示されます。
+
+
+-
+
+
直列化された形式
+直列化可能または外部化可能な各クラスは、直列化フィールドとメソッドの説明を含みます。この情報は、APIを使用する開発者ではなく、再実装を行う担当者に役立ちます。ナビゲーション・バーにリンクがない場合、直列化されたクラスに移動して、クラス記述の「関連項目」セクションにある「直列化された形式」をクリックすることにより、この情報を表示できます。
+
+
+-
+
+
定数フィールド値
+定数フィールド値ページには、static finalフィールドとその値のリストがあります。
+
+
+-
+
+
検索
+モジュール、パッケージ、タイプ、フィールド、メソッド、およびAPIで定義されているその他の語を、名前の一部または全体を使用して検索できます。キャメルケースの省略形がサポートされています: たとえば、"InpStr"と指定すると"InputStream"と"InputStreamReader"が検索されます。
+
+
+
+
+
このヘルプ・ファイルは、標準docletによって生成されたAPIドキュメントに適用されます。
+
+
+
+
diff --git a/bin/doc/index-all.html b/bin/doc/index-all.html
new file mode 100644
index 0000000..954be8f
--- /dev/null
+++ b/bin/doc/index-all.html
@@ -0,0 +1,364 @@
+
+
+
+
+
+索引
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+A B C D E G I M R S T U すべてのクラス すべてのパッケージ
+
+
+
A
+
+- addData(BaseData) - クラス のメソッドcom.rhizome.example.access.BaseAccess
+-
+
対象ファイルにBaseDataの中身のCSV表現を追記します
+
+
+
+
+
+
B
+
+- BaseAccess - com.rhizome.example.accessのクラス
+-
+- BaseAccess(String) - クラス のコンストラクタcom.rhizome.example.access.BaseAccess
+-
+
引数のファイルパスでファイルオブジェクトを生成して、
+ 対象ファイルフィールドを初期化します
+
+- BaseData - com.rhizome.example.dataのクラス
+-
+- BaseData() - クラス のコンストラクタcom.rhizome.example.data.BaseData
+-
+
+
+
+
+
C
+
+- com.rhizome.example.access - パッケージ com.rhizome.example.access
+-
+- com.rhizome.example.data - パッケージ com.rhizome.example.data
+-
+- com.rhizome.example.main - パッケージ com.rhizome.example.main
+-
+
+
+
+
+
D
+
+- delete(String) - クラス のメソッドcom.rhizome.example.access.BaseAccess
+-
+
ファイルから主キーが指定されたkeyに合致する行を削除する
+ 利用メソッド:updateData()
+
+- delete(String) - クラス のメソッドcom.rhizome.example.access.EmployeeAccess
+-
+
+
+
+
+
E
+
+- empDelete() - クラス のメソッドcom.rhizome.example.main.Main
+-
+
社員ファイルの情報を削除する
+
+- empInsert() - クラス のメソッドcom.rhizome.example.main.Main
+-
+
社員ファイルに情報を登録する
+
+- EmployeeAccess - com.rhizome.example.accessのクラス
+-
+- EmployeeAccess() - クラス のコンストラクタcom.rhizome.example.access.EmployeeAccess
+-
+- EmployeeData - com.rhizome.example.dataのクラス
+-
+- EmployeeData() - クラス のコンストラクタcom.rhizome.example.data.EmployeeData
+-
+- empSelect() - クラス のメソッドcom.rhizome.example.main.Main
+-
+
社員ファイルから情報を検索する
+
+- empUpdate() - クラス のメソッドcom.rhizome.example.main.Main
+-
+
社員ファイルの情報を更新する
+
+
+
+
+
+
G
+
+- getIdDepartment() - クラス のメソッドcom.rhizome.example.data.EmployeeData
+-
+- getIdEmployee() - クラス のメソッドcom.rhizome.example.data.EmployeeData
+-
+- getKnEmployee() - クラス のメソッドcom.rhizome.example.data.EmployeeData
+-
+- getMailAddress() - クラス のメソッドcom.rhizome.example.data.EmployeeData
+-
+- getNmEmployee() - クラス のメソッドcom.rhizome.example.data.EmployeeData
+-
+- getPassword() - クラス のメソッドcom.rhizome.example.data.EmployeeData
+-
+- getPrimaryKeyValue() - クラス のメソッドcom.rhizome.example.data.BaseData
+-
+
ファイルの主キーの値を取得
+
+- getPrimaryKeyValue() - クラス のメソッドcom.rhizome.example.data.EmployeeData
+-
+
+
+
+
+
I
+
+- inputCheck(String, boolean) - クラス のstaticメソッドcom.rhizome.example.main.Main
+-
+
入力値を判定し、返却する
+
+- insert(BaseData) - クラス のメソッドcom.rhizome.example.access.BaseAccess
+-
+
ファイルに指定データを追加する
+ 利用メソッド:addData()
+
+- insert(BaseData) - クラス のメソッドcom.rhizome.example.access.EmployeeAccess
+-
+
+
+
+
+
M
+
+- main(String[]) - クラス のstaticメソッドcom.rhizome.example.main.Main
+-
+
処理開始位置
+
+- Main - com.rhizome.example.mainのクラス
+-
+- Main() - クラス のコンストラクタcom.rhizome.example.main.Main
+-
+
+
+
+
+
R
+
+- readData() - クラス のメソッドcom.rhizome.example.access.BaseAccess
+-
+
対象ファイルの中を全件読み込んで、
+ Listの形式で返却します
+
+
+
+
+
+
S
+
+- selectAll() - クラス のメソッドcom.rhizome.example.access.BaseAccess
+-
+
ファイルの情報を全件取得する
+ 利用メソッド:readData()
+
+- selectAll() - クラス のメソッドcom.rhizome.example.access.EmployeeAccess
+-
+- selectById(String) - クラス のメソッドcom.rhizome.example.access.BaseAccess
+-
+
ファイルの主キーが指定されたkeyに合致する情報を取得する
+ 利用メソッド:readData()
+
+- selectById(String) - クラス のメソッドcom.rhizome.example.access.EmployeeAccess
+-
+- setIdDepartment(String) - クラス のメソッドcom.rhizome.example.data.EmployeeData
+-
+- setIdEmployee(String) - クラス のメソッドcom.rhizome.example.data.EmployeeData
+-
+- setKnEmployee(String) - クラス のメソッドcom.rhizome.example.data.EmployeeData
+-
+- setMailAddress(String) - クラス のメソッドcom.rhizome.example.data.EmployeeData
+-
+- setNmEmployee(String) - クラス のメソッドcom.rhizome.example.data.EmployeeData
+-
+- setPassword(String) - クラス のメソッドcom.rhizome.example.data.EmployeeData
+-
+- start() - クラス のメソッドcom.rhizome.example.main.Main
+-
+
処理選択を行う
+
+
+
+
+
+
T
+
+- toCSV() - クラス のメソッドcom.rhizome.example.data.BaseData
+-
+
インスタンスのフィールドの値をカンマ区切りで連結して返却
+
+- toCSV() - クラス のメソッドcom.rhizome.example.data.EmployeeData
+-
+- toString() - クラス のメソッドcom.rhizome.example.data.BaseData
+-
+
インスタンスのフィールドの値をタブ区切りで連結して返却
+
+- toString() - クラス のメソッドcom.rhizome.example.data.EmployeeData
+-
+
インスタンスのフィールドの値をタブ区切りで連結して返却
+
+
+
+
+
+
U
+
+- update(BaseData) - クラス のメソッドcom.rhizome.example.access.BaseAccess
+-
+
ファイルの指定データと主キーが一致する行を更新する
+ 利用メソッド:updateData()
+
+- update(BaseData) - クラス のメソッドcom.rhizome.example.access.EmployeeAccess
+-
+- updateData(List<BaseData>) - クラス のメソッドcom.rhizome.example.access.BaseAccess
+-
+
対象ファイルの内容を更新対象リストの内容に上書きします
+
+
+
A B C D E G I M R S T U すべてのクラス すべてのパッケージ
+
+
+
+
diff --git a/bin/doc/index.html b/bin/doc/index.html
new file mode 100644
index 0000000..2e32384
--- /dev/null
+++ b/bin/doc/index.html
@@ -0,0 +1,165 @@
+
+
+
+
+
+概要
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/doc/jquery/external/jquery/jquery.js b/bin/doc/jquery/external/jquery/jquery.js
new file mode 100644
index 0000000..5093733
--- /dev/null
+++ b/bin/doc/jquery/external/jquery/jquery.js
@@ -0,0 +1,10872 @@
+/*!
+ * jQuery JavaScript Library v3.5.1
+ * https://jquery.com/
+ *
+ * Includes Sizzle.js
+ * https://sizzlejs.com/
+ *
+ * Copyright JS Foundation and other contributors
+ * Released under the MIT license
+ * https://jquery.org/license
+ *
+ * Date: 2020-05-04T22:49Z
+ */
+( function( global, factory ) {
+
+ "use strict";
+
+ if ( typeof module === "object" && typeof module.exports === "object" ) {
+
+ // For CommonJS and CommonJS-like environments where a proper `window`
+ // is present, execute the factory and get jQuery.
+ // For environments that do not have a `window` with a `document`
+ // (such as Node.js), expose a factory as module.exports.
+ // This accentuates the need for the creation of a real `window`.
+ // e.g. var jQuery = require("jquery")(window);
+ // See ticket #14549 for more info.
+ module.exports = global.document ?
+ factory( global, true ) :
+ function( w ) {
+ if ( !w.document ) {
+ throw new Error( "jQuery requires a window with a document" );
+ }
+ return factory( w );
+ };
+ } else {
+ factory( global );
+ }
+
+// Pass this if window is not defined yet
+} )( typeof window !== "undefined" ? window : this, function( window, noGlobal ) {
+
+// Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1
+// throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode
+// arguments.callee.caller (trac-13335). But as of jQuery 3.0 (2016), strict mode should be common
+// enough that all such attempts are guarded in a try block.
+"use strict";
+
+var arr = [];
+
+var getProto = Object.getPrototypeOf;
+
+var slice = arr.slice;
+
+var flat = arr.flat ? function( array ) {
+ return arr.flat.call( array );
+} : function( array ) {
+ return arr.concat.apply( [], array );
+};
+
+
+var push = arr.push;
+
+var indexOf = arr.indexOf;
+
+var class2type = {};
+
+var toString = class2type.toString;
+
+var hasOwn = class2type.hasOwnProperty;
+
+var fnToString = hasOwn.toString;
+
+var ObjectFunctionString = fnToString.call( Object );
+
+var support = {};
+
+var isFunction = function isFunction( obj ) {
+
+ // Support: Chrome <=57, Firefox <=52
+ // In some browsers, typeof returns "function" for HTML