ローカルファイルの処理に関するアイデア

好みにより、ローカルの音楽、映画、学習教材、ビデオ、写真がますます増えており、約 2T に近いデータになります。Java による再帰クエリの後、ファイル数は 6W+ に近くなります。純粋に使用する場合は、ファイルの数は 6W 以上になります。 Windows に付属のファイル マネージャーは非常に不便です。私のニーズと考えは次のとおりです。

1: ファイルをグループ化して分類でき、jpg、mepg、gif などの画像ファイルを画像グループに自動的に分類し、avi、MP4、h.264 などのビデオ ファイルをビデオ グループ、ドキュメント グループに自動的に分類します。 、オーディオ グループなど。データベースを通じてサフィックス ファイル タイプのスキャン範囲を動的に構成します。

2: 特定のファイルを複数のタグでグループ化したり、複数のタグをクエリしたり、タグを追加および削除したりできます。

3: サーバー構成パスでの最新のファイル ステータスのスキャン、動的データ更新、および削除の同期をサポートします。

4: Linux は現時点では考慮されていません Windows 環境では、bat コマンドを使用してローカル システム リソースを呼び出し、特定のファイルを直接開くことがサポートされています。

5: 後で、サーバー側のファイルを Web 側でコピー、移動、削除などするかどうかを検討します。この権限を持つ必要があるかどうかを検討しますが、これは MacOS、Linux、および Linux のコマンド ライン呼び出しの問題を考慮する必要があります。 winシステムとシステム間の違い ファイル操作文の適応問題

データベースの概念:

ファイルマスターライブラリ

テーブル etl.filemanage_file を作成
(
    id varchar(64) not null コメント '一意のキー'
        主キー、
    fileName varchar(500) null コメント 'ファイル名'、
    fileSize varchar(200) null コメント 'ファイル サイズ'、
    `exists` int(6) null コメント '存在しますか (辞書: true_false)'、
    parentFileName varchar(500) null コメント '親フォルダ名'、
    canRead int(6) null コメント '読み取り可能ですか (辞書: true_false)'、
    canWrite int(6) null コメント '書き込めるかどうか (辞書: true_false)'、
    AbsolutePath varchar(500) null コメント「絶対パス」、
    filePath varchar(500) null コメント「相対パス」、
    isDirectory int(6) null コメント 'フォルダーかどうか (辞書: true_false)'、
    isFile int(6) null コメント 'これはファイルですか (辞書: true_false)'、
    isHidden int(6) null コメント '隠し属性 (辞書: true_false) かどうか'、
    lastUpdateTime datetime null コメント '最終更新時刻'、
    groupType int(6) null コメント 'ファイル タイプ グループ (辞書ファイル タイプ)'、
    labelId varchar(64) null コメント 'ラベル グループ ID'、
    inTime datetime null コメント '受信時刻'、
    fileType varchar(256) null コメント 'ファイル タイプ (ファイル サフィックス タイプ)'、
    imageId varchar(64) null コメント '対応する画像グループ ID'、
    fromComputerCode varchar(255) null コメント 'ソース コンピューター ID'、
    fileServerName varchar(500) null コメント 'システム内のファイルの名前 (ニックネーム)'、
    ステータス int(6) null コメント '有効性'
)
    コメント 'ファイル管理';

タグライブラリ

テーブル etl.file_label を作成
(
    id varchar(64) not null コメント '主キー'
        主キー、
    fileid varchar(64) null コメント 'ファイル ID'、
    label_type varchar(200) null コメント 'ラベル名'、
    label_value varchar(64) null コメント 'ラベル値'、
    label_fileType int(6) null コメント「ラベル タイプ」、
    label_sort int(6) null コメント 'ラベルの並べ替え'、
    createtime datetime null コメント '作成時刻'、
    status int(6) null コメント '有効な値'、
    isTrunk int(6) null コメント 'ディレクトリ レベルかどうか'、
    parentID varchar(0) null コメント 'ParentID'、
    level int null コメント 'レベル'
)
    コメント 'ファイルタグテーブル';

文書画像ライブラリ

テーブル etl.file_images を作成
(
    id varchar(64) not null コメント '主キー ID'
        主キー、
    file_imageName varchar(64) null コメント '画像名'、
    file_id varchar(64) null コメント '関連ファイル ID'、
    file_imageType int(6) null コメント '画像タイプ'、
    file_msg varchar(256) null コメント '画像の説明'、
    file_size int null コメント '画像サイズ'、
    file_path varchar(256) null コメント '画像の保存パス'、
    file_host varchar(64) null コメント 'イメージ サーバー アドレス (予約済み)'、
    status int(6) null コメント '画像が有効になります'、
    createtime datetime not null コメント '作成時刻'、
    createid int not null コメント '作成者 ID'、
    updatetime datetime null コメント '最終変更時刻'、
    updateid int null コメント '最後に変更したユーザーの ID'
)
    コメント 'ファイル画像情報テーブル';

おすすめ

転載: blog.csdn.net/Zachariahs/article/details/109024875