1 名前:デフォルトの名無しさん mailto:sage [2009/09/20(日) 01:02:31 ] プログラミング言語Javaに関する質問スレです。 JavaScript, Ajaxの質問は、ここでは受け付けていません。 Web製作管理 ttp://pc11.2ch.net/hp/ Webプログラミング ttp://pc11.2ch.net/php/ をご利用下さい。 よくある質問 ・「コマンドまたはファイル名が違います」 「'javac' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」 「Exception in thread "main" java.lang.NoClassDefFoundError: 」 ttp://www.wikiroom.com/java/?path,classpath ・String に == は使うな。equals() を使え。 ・「\12288 は不正な文字です。」 文字リテラル以外で全角スペースは使えません。半角スペースに。 ・その他の質問→「APIのjavadoc見ろ」 前スレッド ★★Java質問・相談スレッド133★★ ttp://pc12.2ch.net/test/read.cgi/tech/1251630161/ 次スレは>>950 あたりで。 過去ログ、関連スレッド、よくある質問とその回答など、 質問をする前に、貴方が見なければならないサイトについての情報は、 下のwikiのページにまとめてあります。 ttp://www.wikiroom.com/java/
779 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 16:01:46 ] >>776 jdk7だと[]とListの区別がなくなるのかも。
780 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 16:58:38 ] www.tomicom.ac.jp/~koba/doja5/jguidefordoja5api/javadoc/com/nttdocomo/security/SymmetricCipher.html ここを参考に,特定の文字列をAESで暗号化するiアプリを作成してみたのだけど,例外が出てしまう… どなたか,原因が分かる方ご教授お願いします. 例外 Main :java.lang.IllegalArgumentException: Can't use the sessionkey or the iv with the algorithm keyTest java.lang.IllegalArgumentException: Can't use the sessionkey or the iv with the algorithm at com.nttdocomo.security.CipherSessionKey.createSymmetricCipher(+71) at cryptionClass.encryption(+72) at keyTest.start(+14) com.nttdocomo.security.CipherSessionKey: Can't use the sessionkey or the iv with the algorithm ソースコード ttp://www.cms-e.net/java/src/
781 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 17:24:28 ] "Can't use the sessionkey or the iv with the algorithm" って書いてあるけど?
782 名前:780 mailto:sage [2009/11/14(土) 17:33:11 ] >>781 まぁ,そのエラーメッセージの意味は分かるのだけど,解決策が分からない…. 参考URLではプログラム解説のためにDESアルゴリズムを用いているけどできればAESを使いたいので.
783 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 17:36:00 ] >>781 いや,ごめん.意味も分かってないかも. アルゴリズムのあるセッション鍵かIVを使用できません. という文章的な意味は分かるのだけど,そのトラブルシューティングが分からない
784 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 17:49:27 ] >>778 jspがAction経由で表示されたなら、リロードしてもActionが再実行されると思うけど。
785 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 21:55:10 ] >>783 その訳はたぶん そのセッション鍵またはそのIVをそのアルゴリズムと共に使うことはできません ではないか? ちょっと調べたらAESはブロックサイズが128ビットらしいので、IVのサイズをそれに合わせて長くしてみるとか
786 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 22:56:31 ] ジャバってランタイムがないと動かないの? RPGツクールみたいなもん? 単体で動くexeとか作れないの?
787 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 22:57:45 ] POJOって一体何なの? どういう風に便利なのかとか、どうすれば使えるのかとかがよく分からない。
788 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 22:58:29 ] そうです 強引な方法も無くはないが 素人には10年早い
789 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 23:08:27 ] 788さん、それボク786に対する答えですか。
790 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 23:43:23 ] >>786 うん でもC++とかでもランタイム必要なものもあるよ
791 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 23:56:51 ] OS だってランタイムだ、という考え方をすれば、単に OS 標準でどこまで付いて来るかという問題でしか無いとも言えるな。
792 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 00:12:21 ] 790さんありがとうございます とりあえずいろいろいれずにWindowsでexeをクリックするだけで起動する感じが理想なので 別の言語あたってみます
793 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 04:55:26 ] アジャイル手法とかに詳しい人がいたら、ご意見をいただけないでしょうか。 最近、私が関わっているプロジェクトで、 「カバレッジ100%を達成するためにホワイトボックスな単体テストを書きまくった結果、 逆に、テストを書き直すコストが増大して大きなリファクタリングができなくなりつつある」 という本末転倒っぽい状態に陥りつつあるのですが、何か良い方法なり指針はないものでしょうか。
794 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 06:57:08 ] 端的に言えばカバレッジ最優先なポリシはバランスが悪い。 リファクタリング前と後で、極端なまでにテスト再利用性が存在しないのは、 そもそも変化が許容される内容(つまりはリファクタリングによって改善した内部構造そのもの) に対して過剰なテストが行われていることを意味している。 極端に言ってしまえば、テストは所詮バグが存在しないことの証明にはならないのだから、 あまり内部詳細に踏み込みすぎず、外部インタフェース越しに一般的なシナリオをテストするに 留めておくぐらいがちょうど良いと個人的には思う。
795 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 07:30:53 ] >>793 一律にテスト書かないで変更が多そうな部分と変更が少なそうな部分にわけて 変更が少なそうな部分を重点的にテストするとか
796 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 09:00:14 ] javamail-1.4.2 を使い、メール送信機能を付与した、プログラムを作成しました 送信テストも終わり、このプログラムを他人に配布したいのですが 通常のjava のアプリケーションが動くJava(TM) SE Runtime Environment (build 1.6.0_17-b04) の環境であれば、別途に必要なランタイムやライブラリィはありませんか?
797 名前:796 mailto:sage [2009/11/15(日) 09:52:09 ] 自己解決です ttp://oshiete1.goo.ne.jp/qa1919395.html 同じ方がいました、他人に配布するのは、ライセンス的には問題なさそうですが、 バッチでmail.jar を入れるとか、面倒な感じですね、実行するにも長たらしいコマンドを入れなければならないし C で書いたDLL があるので、こいつを使った方が解決が早そうです。 java のインストローラが作れればいいんだが・・・・
798 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 10:28:08 ] izpackかは? コマンドって、実行時のクラスパス指定のこと? それならManifestに記述すればいいし最悪バッチファイルなりなんなり書けばいいし、他にもexeにラップしちゃうって手もあるし、あんまり問題にはならなくないかい?
799 名前:796 mailto:sage [2009/11/15(日) 10:45:00 ] >>798 ありがとうございます、java は最近はじめたばっかりなので詳しくく質問させてもらいました Manifest とか、exe にラップする方法があるのですね知りませんでした、調べてみます。
800 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 13:28:58 ] >>785 ありがとうございました! IVを128bitにしたら無事通りました!
801 名前:793 mailto:sage [2009/11/15(日) 13:50:12 ] >>794 なるほど。。 インタフェースごしのブラックボックステストと、ホワイトボックステストを分けるのも手かもしれませんね。
802 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 15:00:16 ] URLClassLoader#loadClass(null)で呼び出したクラスは、 このクラスローダがGCされると綺麗にメモリ上から消えますか? public static void run(URL jarFile, String className) throws Exception { Class clazz = new URLClassLoader(new URL[]{jarFile}).loadClass(className); MyInterface obj = (MyInterface) clazz.newInstance(); obj.run(); }
803 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 15:35:26 ] >>802 一緒にGCされると思うけど、仕様によって保証はされない。 あと、java.lang.Class や java.lang.reflect.Method なんかの リフレクション用のオブジェクト握りっぱなしにしてると、 そもそもクラスローダがGCされない
804 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 17:05:11 ] JNIでCを呼び出すとき、System.loadLibraryでネイティブライブラリをロードしますが、 System.loadLibraryを書くのはコンストラクタがよいのか、staticイニシャライザが良いのかわかりません。 どちらの方がよいのでしょうか?
805 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 17:10:50 ] インスタンスをnewするまでstaticなネイティブメソッドが呼べないよ
806 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 18:21:36 ] 携帯でMP3再生したい オープンアプリでいっちょやってみるか ハフマン符号???? File decode(File mp3File) { // 誰かサンプル書いてみて return decodeFile; }
807 名前:806 mailto:sage [2009/11/15(日) 18:24:48 ] だめだ メモリ足りなくなりそうなので いちいち展開なんてしてられん・・・ void playMp3(File mp3File) { //一時停止機能とかいらないから誰かサンプル書いて }
808 名前:デフォルトの名無しさん [2009/11/15(日) 19:28:40 ] 別スレッドがSystem.out.print..などで、標準出力にメッセージを出すようになっていて、 それをInputStreamなどで拾いたいのだけど、どうしたら良いですか?
809 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 19:54:06 ] java mediaとかかな 特許がらみが多い分野だからほとんどの形式がクローズドだけど。
810 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 20:01:17 ] >>808 System.setOutで出力先をPipedOutputStreamか何かに変え、PipedInputStreamか何かで読み出す
811 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 22:24:08 ] >>810 ありがとう!解決した!
812 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 22:35:18 ] どうしてクラスローダが1つのVMに複数あるのでしょうか?
813 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 22:49:06 ] URLから取ってくるクラスローダとか色々あるから。で回答としてはいいのかな?
814 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 22:49:48 ] たとえば同一の外部ライブラリで複数バージョンを使い分けたい場合などがあったとする。 唯一のクラスローダしか存在しない場合、FQNが同一のクラスは、一つしか存在することができない。
815 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 23:08:02 ] まて、FQNが同一のクラスが同時に複数存在できたりするのか? ウィザードじゃないから知らないだけかもしれないけど、static変数とか矛盾 してしまうと思うんだが。
816 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 23:28:29 ] できる。そもそも同じFQNであれ、ロードされているクラスローダが違えば同じクラスと扱われない。 J2EEやっていれば同一のコンテナ(単一JavaVM)に複数のWebアプリケーションをデプロイして、 それぞれのWebアプリが独自のライブラリ(WEB-INF/lib)を利用する状況を考えて欲しい。 たとえばAアプリはlog4j1.2で、Bアプリはlog4j1.1というのは普通に可能。 それらはThreadに割りつくContextClassLoaderが入れ替わることで(実装者が意識しないかたちで)実現されている。
817 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 23:29:07 ] >>815 できるよ 異なるクラスローダがロードしたクラスは、同じFQNであっても別々 static変数も別々 Classオブジェクトを比較しても一致しない
818 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 23:31:11 ] あとたしかinstanceofもキャストも失敗するっけか あらゆる意味で異なるクラス扱いだったはず
819 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 23:36:33 ] Seasarという有名な国産DIコンテナがあって、 それはsmart deployという仕組みで、開発時にhot deployが可能なんだけど、 そのやり方は結構単純で、クラスローダをRequestを受け取るごとに生成・廃棄して、 新規にコンパイルされたClassを都度読み込みさせている。 そのようなやり方をすれば、一度読み込まれたClassでも即時反映が実現できる。
820 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 23:40:34 ] なるほど。 d.hatena.ne.jp/masugata_k/20071203/1196684216 とそのリンク先を見てみた。 システムクラスローダは差し替え可能なわけか。知らなかった。
821 名前:デフォルトの名無しさん [2009/11/16(月) 00:06:47 ] 複雑な管理処理を行うベースウェアにはGUIや集中管理する画面って必須かな? それとも管理するためのAPIだけを提供すれば皆安心?
822 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 00:20:52 ] せめて参考GUI実装をソースつきで。凝る必要は一切無し。 あれば使ってもらえるし、出来が気に入らなかったら改造するだろうし。 ソース無くてもjadで見ちゃうけど。
823 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 00:58:42 ] なるほどruby的なのか そりゃそうか
824 名前:デフォルトの名無しさん [2009/11/16(月) 02:05:38 ] 初めましてm(_ _)m JAVA初心者なのですが JAVA2のSEとMEをインストールしようと思い一通りダウンロードしたんですが、 java_ee_sdk-5_08-jdk-6u17-windows-ml.exe これ以外はインストール出来ませんでした。 EEに当たるようなんですが、サイトを見直すとSEに該当しているようにもみえます。 しかし次にMEをインストールしようとすると「SEがインストールされていない」とでてMEがインストールされません。 MEがSE1.4?のみに対応している可能性もあるのでダウンロードしようとしたんですが見当たりません。 ですがそれ以前から教則本の付録でついてたj2sdk1.4.1_01(ランタイム?)を使用してます。 パソコンは2000年発売VAIOのXPです。SPをインストールしていません。 (すでにSP1がダウンロード不可のため) どなたかアドバイス下さい。よろしくお願いします。m(_ _)m
825 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 02:46:23 ] こっから落とせば? java.sun.com/javame/downloads/index.jsp J2ME時代で環境作りたい場合はこっちから落とす java.sun.com/javame/downloads/previous.jsp
826 名前:デフォルトの名無しさん [2009/11/16(月) 02:55:54 ] >>825 解答ありがとうございます。後日、ダウンロード試みてみます。
827 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 15:12:06 ] SaxParser#parse(File, dh)は内部でファイルのロック取ってるんでしょうかね? プロセス間のは(共有ロック)取ってくれてると思って使ってるけど。 スレッド間の排他はユーザがやる必要があるのでしょうか?
828 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 16:20:57 ] 基本的な質問ですいません。 C言語ソースの移植作業しているのですが・・・。 int a(short b) { return b+5; } を a(50);のように定数を引数にしてコンパイルすると 「a(short) は (int) に適用できません」 とエラーが出てしまいます。 a(50);をa((short)50);のようにキャストすればエラーは無くなりますが、 定数をいちいちキャストするのが面倒です。 キャスト以外に良い方法は無いでしょうか?
829 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 17:38:52 ] int型の引数を受け取れる同名のメソッドを作ればよい int a(int b) { return a((short)b); } みたいな
830 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 19:47:26 ] EJBってどうなの?業務で使ってる?
831 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 01:06:24 ] test
832 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 01:48:17 ] 業務意外じゃEJBを使っているのみたことないな
833 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 07:46:28 ] なんか業務でもあえてEJB避けてきたんで... メッセージングとか一部機能のつまみ食い程度しか使ったことないから、 3.0はいい感じなのか実際に採用してる人たちの実感を聞きたいなと。
834 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 10:18:39 ] 業務システムでも短納期・低コストが求められているのだから、わざわざEJBでコストをあげる必要はないだろ
835 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 10:25:03 ] EJBなんて学者のオナニーだから使わないほうがいい
836 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 15:36:51 ] はじめまして、こんにちは 現在塗りつぶしを行うアプレットをアプリに書き換えています が、なかなか上手くいきません アプレット/アプリケーション共通プログラムという www.asahi-net.or.jp/~dp8t-asm/java/tips/AppletApp.html このサイトの通りに行っているはずなのですが、、、 間違っているところがあれば、アドバイスをお願いします 以下が私のソースです kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10131.txt サイトの通りに、ExitWhenWindowClosingクラスとAppletFrameクラスは別に作ってあります
837 名前:デフォルトの名無しさん [2009/11/17(火) 15:47:43 ] 単純なキーボード入力を出力するプログラムを作成したのですが、特定の文字列を入れると文字化けして出力されてしまいます。 この問題の原因、または解決方法をご存知の方みえましたら教えていただけないでしょうか。 実行環境:windows vista / Eclipse 3.5.1 Galileo Windows 32bit ベース / Pleiades All in One 3.5.1.20090930 コード: public static void main(String[] args) { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); try { System.out.println(br.readLine()); } catch (IOException e1) { // TODO 自動生成された catch ブロック e1.printStackTrace(); } } 入力: む 出力: �?
838 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 16:46:00 ] >>837 キーボードが日本語106キーで認識されて無いのかな。 「む」「ろ」「BackSpace」キー等には気をつけて。 解決策は・・・ドライバがどうなっているかくらいか・・・わかんね。 見当違いかもしれんが参考に。
839 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 17:05:10 ] >>838 おお!ありがとうございます。 ドライバ確認してみます。
840 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 21:53:16 ] 将来的にはEJBが(実質的な意味で)本命のような気がするんだよね。 現状はまだ様子見しつつって感じのようですね。
841 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 21:56:48 ] 現状で既に活用できるってばさ。 Apache+Tomcatの時代なんて今は昔。 まあ私の周りの話だから他は知らんけど。
842 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 22:09:55 ] EJB なんて 10 年前の流行キーワード。今も今後も誰も注目しねぇって。 使えるところで淡々と使われるだけ。
843 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 22:14:40 ] うちの周りはTomcat(というかサーブレットコンテナメイン)ばかり。 分散+フェイルオーバーで高可用構成とかでも 業務フレームワーク作りこみで対応してるケースが多い。 EJB3.0はコンフィグ地獄じゃなくてよさそうなんだよね。 軽量コンテナとの境界もあいまいになってるわけで、 そうなると標準化プロセスを経ているEJBのメリットが生きてくるような気がする。
844 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 22:19:52 ] スタンダードに載っとかないと保守で首を絞める。 HibernateよりJPAやiBatisを選択するのがいい。
845 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 22:26:28 ] だよね。保守はともかく、いまさら新規でHibernateはありえない。 JPAは意識してるけど、使いやすさとパフォーマンスの点でS2JDBCに浮気してたりして。
846 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 23:06:12 ] 質問させてください 配列名を引数で与えるにはどうしたらいいのでしょうか。 static int[] mkArr(String arrName, int itemNum){ int[] arrName = new int[itemNum]; //このあとはarrName[0]〜[itemNum-1]の値をキーボードから //入力させます } この段階で 重複ローカル変数 arrName, と警告がでます(Eclipse使用です)。 型が String だとまずいのかもしれないかとも思いますが、見当もつきません。 ※このメソッドはメインクラスに書く予定です。 レベルが低すぎて申し訳ありませんがよろしくご教示ください。 お願いいたします。
847 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 23:17:10 ] 引数でString arrNameを宣言してるのに 最初のステートメントでint[] arrNameを宣言してるやん。 質問のわかりにくさからして始めたばかりなんだろうけど。
848 名前:846 mailto:sage [2009/11/17(火) 23:54:30 ] >>847 お答えありがとうございます。 お察しのとおり始めたばかりです。 ↓こんな感じで呼び出すと mkArr("arr1",3) int[] arr1 = new int[3]; となって配列arr1が生成されるのかと思っているのですが 違うんですよね。。 ずっと考えてるのですがわかりません。 ここ読んどけっていうところがあったら、教えていただければ助かります。 よろしくおねがいします。
849 名前:デフォルトの名無しさん mailto:sage [2009/11/18(水) 00:03:09 ] 酷すぎる
850 名前:デフォルトの名無しさん mailto:sage [2009/11/18(水) 00:03:38 ] 宿題スレをおすすめする。 まず何をするプログラムなのかが分からない。
851 名前:846 mailto:sage [2009/11/18(水) 00:06:42 ] >>849-850 スレ汚しすみませんでした。 宿題ではないので、もう少し考えてみます。 申し訳ありませんでした。
852 名前:デフォルトの名無しさん mailto:sage [2009/11/18(水) 00:08:32 ] お前ら厳しいなw
853 名前:デフォルトの名無しさん mailto:sage [2009/11/18(水) 00:09:49 ] プログラムの素人であるのは構わない。そういうスレだ。 だが質問の素人であってはいけない。
854 名前:デフォルトの名無しさん mailto:sage [2009/11/18(水) 00:13:18 ] 分かりやすく伝えるって結構高度だと思うが
855 名前:デフォルトの名無しさん mailto:sage [2009/11/18(水) 00:17:34 ] >>846 自分も初心者なんですが、 static int[] mkArr(int itemNum){ int[] arr = new int[itemNum]; //入力 return arr; } メソッドをこんな感じにして int[] arrName = mkArr(itemNum); 呼び出し側で、受け取ればいいのでは? arrNameは受け取りたい配列名で。 たとえば、 String str = "arr"; int[] str = new int[5]; とやっても、arrという名前のint型の配列は 出来ないかとw
856 名前:デフォルトの名無しさん mailto:sage [2009/11/18(水) 00:19:25 ] ああ、呼び出し方がおかしいですね。 すいません。
857 名前:デフォルトの名無しさん mailto:sage [2009/11/18(水) 00:35:34 ] >>846 なかなか独創的なコードだけど、以前はどの言語をやってたの?
858 名前:デフォルトの名無しさん [2009/11/18(水) 01:27:56 ] 識別子に表情以上の物を求めるのが素人 識別子に_だけでプログラムするのが変態 識別子にg,o,t,oしか使わないでコーディングするのも変態
859 名前:デフォルトの名無しさん mailto:sage [2009/11/18(水) 01:58:04 ] 識別子に$とか付けるのは宗教
860 名前:デフォルトの名無しさん mailto:sage [2009/11/18(水) 02:35:54 ] >>845 が「新規でHibernateはありえない」って言ってるけど、なんで? JPAやiBatisと比べてどの辺がありえないの?
861 名前:デフォルトの名無しさん mailto:sage [2009/11/18(水) 03:47:43 ] 標準技術じゃないわりに複雑だからだろ。 JPAとの対比で語ってるからNativeAPIやらHQLでの話なんだろうけど。
862 名前:デフォルトの名無しさん mailto:sage [2009/11/18(水) 11:50:27 ] >>848 Javaとか初心者とか言って質問する前に、変数と関数というプログラムの基礎概念を勉強してこい
863 名前:デフォルトの名無しさん mailto:sage [2009/11/18(水) 22:25:58 ] JWebPaneっていつから使えるようになるんだろう
864 名前:デフォルトの名無しさん mailto:sage [2009/11/18(水) 22:50:16 ] JPAは当然ながらORM標準であることが利点。 ORMの業務適用要件は2.0の悲観的ロックサポートで満たしたと言ってよい。 iBatisはSQLをガリガリかけて、かつマッピングも楽ちんだから、 Java屋ではない外様がORMのメリットをすぐに享受できるところが良い。 本格的なORMは真の習得に三ヶ月かかると言われてるから、 標準 or 即効性の保守要件にHibernateは引っかからない。
865 名前:デフォルトの名無しさん mailto:sage [2009/11/19(木) 01:41:20 ] JSFを勉強し始めて半年ぐらいの若造です。 ■.jspの記述 <h:dataTable var="list" value="#{bean.dataModel}"> <h:column> <h:inputText value="#{list.text}"/> </h:column> ・・・ </h:dataTable> みたいなテーブルを表示して入力部を設け、ボタンを押したら値をテーブルの型式で取得したいのです。 bean.dataModelはListDataModelを返します。 beanのスコープはrequestです。 どのように値を取得するのが賢いのか教えて下さい。
866 名前:デフォルトの名無しさん [2009/11/19(木) 09:59:11 ] JAXBでのバインディングって、setとget以外のメソッドが混ざっている JavaBeans形式以外のオブジェクトでは出来ないのでしょうか?
867 名前:デフォルトの名無しさん mailto:sage [2009/11/19(木) 12:36:47 ] getter と聞くと、手がドリルの青い合体ロボットを想像してしまう僕は異常でしょうか?
868 名前:デフォルトの名無しさん mailto:sage [2009/11/19(木) 16:24:49 ] 配列([])の中身を調べる文字知りませんか? 例えばstring[1]だとしたら1と読み取ってくれるやつです
869 名前:デフォルトの名無しさん mailto:sage [2009/11/19(木) 16:26:27 ] ねぇよ
870 名前:デフォルトの名無しさん mailto:sage [2009/11/19(木) 18:12:31 ] 文字ってなんだよ >string[1]だとしたら1 も曖昧で分からん。
871 名前:デフォルトの名無しさん mailto:sage [2009/11/19(木) 18:59:39 ] >>866 @XmlTransientでOK @XmlAccessorType(XmlAccessType.FIELD)なら マーシャリングしたくないフィールド(メンバ変数)を transientにしとけばOK
872 名前:デフォルトの名無しさん [2009/11/19(木) 19:08:06 ] というか、JAVAで配列使うな
873 名前:デフォルトの名無しさん mailto:sage [2009/11/19(木) 20:01:30 ] >>872 なんで?
874 名前:デフォルトの名無しさん [2009/11/19(木) 20:11:04 ] List使った方がいろいろ操作出来る
875 名前:806 mailto:sage [2009/11/19(木) 20:13:27 ] 806のことも思い出してあげてください >>873 javaには優秀なコレクションフレームワークが標準で装備されているので、配列ではなくそっち使おうぜ。 >>872 はそういいたいのだと思う。 配列で十分だと思ったら、何でもかんでもコレクション使うことは推奨しない。
876 名前:デフォルトの名無しさん mailto:sage [2009/11/19(木) 20:14:14 ] 配列は使うな云々って本があったなぁ
877 名前:デフォルトの名無しさん mailto:sage [2009/11/19(木) 20:15:11 ] 配列を使うメリットはあまりない
878 名前:806 mailto:sage [2009/11/19(木) 20:19:30 ] 配列を使うメリットは、高速かつメモリ消費が最小であること。 ローカルなメソッドの内部処理に用いる場合は、配列もありだと俺は思う。 おさらいだけど 配列:速度良 メモリ小 操作ミス多 コレクション:速度どうかな メモリ最小とはいかない 操作簡単安全
879 名前:デフォルトの名無しさん mailto:sage [2009/11/19(木) 20:27:45 ] 速度とかメモリとかにこだわる層はわざわざそういうこと言われなくてもわかってるはずだから、 とりあえず「ArrayList使っとけ」でおk