キーボード操作でWindowsを何倍も快適に使う方法[2]

あふ

前回、キーボード操作のファイラ「あふ」を紹介しましたが、今回はより具体的な利用方法を紹介してみたいと思います。

いろいろとある中で、まずは開発に必須のバージョン管理ソフトウェアの一つであるSubversionとの連携を取り上げたいと思います。

(さらに…)

続きを読む

TomcatでHTTPセッション単位のデータを扱う方法

circuits

PHPなどのシングルスレッドのWebアプリケーションを長く開発していると、何も考えずにクラス変数を使ってしまう...。

Tomcatは、シングルスレッドの設定を行わない限り、マルチスレッドで動作する(あらかじめいくつか複数のスレッドを起動しておき、リクエスト毎にどれかを使うような感じ)のでクラス変数を使うと全てのスレッドからアクセスが共有されてしまいます。

これは、たとえば現在のHTTPセッション(セッション間データを扱う「セッション変数」ではなく、1セッション内という意味)のみで統一的に扱いたいデータをクラス変数に入れておくと、HTTPセッションが終了してもそのデータが保持されたままになってしまうということです。

クラス変数はプロセス内で共有される変数なので、Tomcat起動中は同じプロセスですから当然といえば当然なのですが...、例えばデータベースコネクションなんかは上記のような形で扱いたいところです。
(さらに…)

続きを読む

Servletで日本語名のファイルをダウンロード

tomcat plugin

なんかものすごく忙しくて更新する暇が全く無い状態です・・・。

さて、今日は実際直面した問題をメモ代わりに書いておきます。あんまり日本語ファイル名を扱わないので忘れがちなので。

ダウンロード時にファイル名を指定する場合は、Content-Dispositionヘッダを使いますが、日本語の場合そのまま指定すると文字化けを起こしてしまいます。

しかもブラウザによって挙動が異なるという・・・。どうしたらいいのでしょう。
(さらに…)

続きを読む

PHPで最低限注意すべきな危険な臭いのする箇所

KEY

よく、○○攻撃とか○○脆弱性とかといった、セキュリティ的にまずい部分について攻撃の手法などでまとめることがありますが、今回はコードベースで危険を感じ取れるようなまとめ方にしたいと思います。

PHPで、とあるのは例にあげるコードがPHPだからなのですが、おそらく大体の部分は他の言語でも通用するかと思います。また、ここで挙げるものが注意すべき事項全てではないことをご承知ください。。

フレームワークを使えばかなり防げてしまうような単純な例ばかりですが、参考になればと思います。
(さらに…)

続きを読む

Webアプリ開発に使える(?)プチスクリプト

screen.jpg

今回は、そこそこ役に立つかもしれない小ネタをいろいろと。HibernateなどのO/Rマップライブラリを使っている人にとっては全く無用かもしれません。

ちょっと、前提として Perl が使える環境が必要となりますので、そのつもりで・・。

Windowsの場合は、

などで利用できます(cygwinはperlではないですが・・・、Vistaの人はActivePerl入れられないらしいので)。

データベースを使った開発をする際に結構困るのがテーブル定義のSQL文やデータオブジェクトのクラスの整合性維持とか管理だったりします。まずは、それらをある程度自動化する方法。
(さらに…)

続きを読む