雑多な覚書
圧縮
GZIPOutputStream
を使用するとデータをgzip圧縮して送信できる。
現在の多くのブラウザではgzipに対応しているため
サーバー側でエンコードして送信、ブラウザ側でデコードして表示、が可能。
cronとrsync
cron(クーロン)は、定期的にジョブを実行するための機能。
cronを利用するには、crondサービス(cronデーモン)が動作している必要がある。
通常はLinuxのインストール時に導入され,自動的にcrondが稼働するように設定されている。
rsyncは、UNIXシステムにおいて、差分符号化を使ってデータ転送量を最小化し、
遠隔地間のファイルやディレクトリの同期を行うアプリケーションソフトウェアである。
類似のプログラムやプロトコルにはない rsync 独自の特徴として、ミラーサイトとの転送が双方向に高々1回で済む点がある。
rsync はディレクトリ内容を表示し、ディレクトリやファイルをコピーできる。オプションでデータ圧縮や再帰も指定可能。
==
そのユーザになって
参照
ctontab -l
編集
crontab -e
設定方法
分 時 日 月 曜日 実行コマンド
設定例
05 00 * * * /unyou/scripts/cms_bin/****.sh
これで毎日0時5分に****.shを実行します。
cronはユーザごとに持ってるので
実行したいユーザに設定する必要があります。
(rootなら問題ないですが、rootを使用できないとこもあるので)
==
SimpleDateFormatのマルチスレッド対応1
使用の都度オブジェクトを生成するよりsynchonizedして使いまわすほうが高速。
ThreadLocalを使用したほうがさらに高速。(synchonizedと同程度か?)
SimpleDateFormatのマルチスレッド対応2
SimpleDateFormatはスレッドセーフではないため、
Jakarta Commonsのcommons-lang.jarを導入可能な環境であれば
FastDateFormatに置き換えるべき。
String#split()メソッド
分割する正規表現に挟まれた文字が存在しない場合、分割してくれない。
例:
String str = "a,b,c,d,e,,,,,";
String[] aray = str.split(",");
System.out.printin(aray.length); //「5」となる。e以降の空文字が配列に格納されるわけではない。
Eclipse
初期起動時に見慣れないエラーが出たら、\workspace\.metadata\.logに詳細なエラーが出ているかも。
BeanUtils.copyProperties(to,from)
fromからtoに、同じ変数名の値をコピーする。
csv update -Aと同等の処理
プロジェクト右クリック⇒置換⇒別のブランチまたはバージョン⇒HEAD