火曜日, 2月 28, 2017

Java の enum 列挙型の変数名を値から逆引きする

Java の enum 列挙型は値を設定せず列挙するだけで値を設定してくれる優れ
モノです。

Java の enum は C/C++ のより拡張性があってもっと便利です。

変数値から要素名を得る「逆引き」などという動作は、enum の一部として定義できます。



values() を使えば列挙型の設定されたすべての値を得ることができます。

 便利な Java の enum 列挙型ですが、得られた配列から値を得てももとの値を得ることができない。ようです。

あるのは ordinal() 関数のみ。これだと順番が出てきます。

設定された変数へ値を代入する、あとはメンバ関数を自作するなどいう方法が巷ではあるようですが、これだと列挙型である意味がない。並べておいて代入しなくていいのが列挙型の利点です。

???な Java の enum 列挙型ですが、そもそも最初の設計でなかった機能です。なにか考えがあるのかも。

値を設定しているのでない、順番があるだけだ、ってことでしょうか。

水曜日, 2月 22, 2017

Struts: web.xml がない場合

故あって Struts なるものを使ってます。

温故知新ならぬあらためて再評価ってところでしょうか。

データ管理がOOP!

受け渡すパラメタがカプセル化!

いいですね。ですが

ページ遷移はアクションが管理!つまりJavaファイルからは見えない。

つまり xml ファイルが問題重要なわけです。これが脳内で構成できればシステムが見える... これらの犠牲を払うとJavaのすべての機能を使える。
これはまりました。
web.xml が読み込むクラスを指定するわけなんですが、明示的な指定はないわけです。

ログなぞながめても何も書いていない。

サーバーの管理画面だと「running」でプロセスはなし。
結論をいうと web.xml が迷子だったわけなんですが... それだけです。

Qt: 外部プログラムを起動する

  Qt/C++ のアプリは、外部へ直接アクセスできます。これはネットアプリでは不可能な Qt のメリットです。 外部プログラムを起動することもできます。QProcess::startDetached() を使うと独立したプロセスを立ち上げることができます。 この QProces...