【初心者】Java質問・相談スレッド76【大歓迎】
6532個もの大きなデータになったくらいでカラムインデックスが範囲外 とかにはならないはず。 ってことはプログラムのどこかに間違いがあると見た。 ソースを晒してくれると早い。
じわりじわりと 20秒おきに1000を狙う俺
>>4 スレをちゃんとよく見ろ。
前スレはあと3レス残ってるぞ
>>前スレ1000 それをやるなら「うはwwwwおkwwww」だろ糞が。
7 :
デフォルトの名無しさん :2005/11/27(日) 21:17:18
>>2 >>3 ありがとうございます。
ソースはこういう感じです。
try
{
//接続の準備
String drv = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql:///amp";
String usr = "";
String pw = "";
//データベースへの接続
Class.forName(drv);
Connection cn = DriverManager.getConnection(url, usr, pw);
8 :
デフォルトの名無しさん :2005/11/27(日) 21:17:56
//問い合わせの準備 Statement st = cn.createStatement(); String qry = "SELECT * FROM md_bni"; //問い合わせ ResultSet rs = st.executeQuery(qry); //データの取得 ResultSetMetaData rm = rs.getMetaData(); int cnum = rm.getColumnCount(); while (rs.next()) { for (int i = 1; i <= cnum; i++) { System.out.print(rm.getColumnName(i) + ":" + rs.getObject(i) + " "); } System.out.println(""); } //接続のクローズ rs.close(); st.close(); cn.close(); } catch (Exception e) { e.printStackTrace(); }
>>8 >System.out.print(rm.getColumnName(i) + ":" + rs.getObject(i) + " ");
columnNameはx軸 objectはy軸ってこったな
Java3Dに関する質問です。 ---- import java.awt.Container; import javax.swing.*; import javax.media.j3d.Canvas3D; import com.sun.j3d.utils.universe.SimpleUniverse; public class MyDialog extends JDialog { private Canvas3D canvas; public MyDialog() { setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); Container pane = getContentPane(); //canvas = new Canvas3D(SimpleUniverse.getPreferredConfiguration()); //pane.add(canvas); pack(); } public static void main(String[] args) { MyDialog dialog = new MyDialog(); dialog.setVisible(true); } } ----
のようなコードを書き、実行したところ、小さいダイアログが出て、ダイアログを削除したら、 javaプログラムが終了しました。 しかしながら、プログラム中断のcanvas関連のコメント文をはずして実行するとダイアログが正常に 終了しなくなってしまいます。 具体的にいいますと、 %> java MyDialog と打った後、全くコマンドプロンプトが戻ってこなくなるのです。 これはどうしてでしょうか? Canvas3Dに何かしらの設定を行う必要があるのでしょうか。 教えてください。
>>12 意味不明
実行してダイアログを削除って何?
14 :
デフォルトの名無しさん :2005/11/27(日) 22:03:47
>>9 どういうことですか?
while (rs.next())
{
for (int i = 1; i <= cnum; i++)
{
System.out.print(rm.getColumnName(i) + ":" + rs.getObject(i) + " ");
}
System.out.println("");
}
を消して System.out.println(cnum);で表示cnumをj表示させたら
1と表示されました。
15 :
デフォルトの名無しさん :2005/11/27(日) 22:08:53
× を消して System.out.println(cnum);で表示cnumをj表示させたら 1と表示されました。 ○ を消して System.out.println(cnum);でcnumを表示させたら 1と出力されました。 誤字多くてすみません。
>>14 >>15 配列arrayの長さが3だとして
あなたは
for (int i = 1; i <= 3; i++)
System.out.print(array[i]);
って書きますか?
>>13 ごめんなさい、
>>11 のようなコードを書いて、
%> java MyDialog
と打って、プログラムを実行します。
そうすると、ダイアログが表示されます。
そのダイアログを閉じると、プログラムが正常に終了し、プロンプトが戻ってくるのですが、
中段のコメントアウトをはずし、canvasをダイアログに貼り付けると、
ダイアログを閉じても、プログラムが終了しないままになってしまうんです。
これは、どうしてでしょうか?
18 :
デフォルトの名無しさん :2005/11/27(日) 22:26:35
新規質問 JTabbedPaneとJMenuBarは同時には使えないんですか? JFrameクラスのインスタンスをframe1とします。 frame1にJMenuBarを加える。 frame1にgetContentPane()してからJTabbedPaneを加える。 上のようにしてもタブしか表示されません。
19 :
デフォルトの名無しさん :2005/11/27(日) 22:27:54
>>18 BorderLayoutのCENTERをJTabbedPane, NOTHをJMenuBarでも無理?
21 :
デフォルトの名無しさん :2005/11/27(日) 22:34:32
>>16 できました!
上にはfor (int i = 1; i <= cnum; i++)かいてたんですけど、
cnumが大きいので10にしてました。
for (int i = 1; i <= 10; i++)
そこがいけなかったんですね
どうもありがとうございました。
22 :
デフォルトの名無しさん :2005/11/27(日) 22:40:29
いやーたまたまだと思うが・・・ 誰かがx軸とy軸って書いた意味を考えよう
23 :
18 :2005/11/27(日) 22:45:54
しばらく試行錯誤してみます。
24 :
18 :2005/11/27(日) 22:56:31
解決しました。 原因はJMenuBarにJMenuを加えていなかったことでした。 加えてみると、タブもメニューバーも表示されました。 JMenuBarはJMenuを加えることで初めて厚みがでるんですね
>>24 SUNが学歴だけではダメだぞと釘を刺すために作った仕様さ。
>>12 は
ダイアログ上に3Dオブジェクトを
表示させようとしているのか?
ふつうそういうことやるかね?
>>28 イマジネーションが足らない奴だな。
エスパー度が低いってのはPGとして致命的だぞ。
>>27 そうです。3Dオブジェクトをダイアログ上に表示させようとしています。
駄目でしょうか? ダイアログが不適であれば、他に何を使うべきでしょう?
あと・・・できれば、やっぱりダイアログを使いたいので・・・どうしても、駄目なんでしょうか?
31 :
デフォルトの名無しさん :2005/11/28(月) 00:08:30
PCにExcelは入ってるかい? 項目をX軸にいくつか書いていって そっから下(Y軸)にデータを書いてくでしょ
33 :
デフォルトの名無しさん :2005/11/28(月) 00:58:37
いきなりすいません. javaプログラムからMatLabと通信したいのですが無理ですか?
>>29 おめえは占い師かアホ
勘だけでしか行動できない
論理的思考能力が薄い奴のほうが
プログラマ向いてないぞ( ゚Д゚)ゴルァ!!
そういやMATLABってJavaが使えるんだっけ。 しかしMATLAB6R1xに入っているJavaは 何故か相変わらずMSJVMだったよな。 あれは最新版MATLAB7では直っているんだろうか? っていうかSun純正Javaにしてもらいたいもんだな。 IBM製JVMでもいいかもしれないが。 MATLABからJavaオブジェクトを生成して 呼び出して使うということなら知っているが、 Javaから呼び出す具体的な方法は知らんな。 Runtimeクラスとかつかえばできなくもないが。
38 :
デフォルトの名無しさん :2005/11/28(月) 02:55:57
現在「やさしいJava活用編」の8章のSample1をやっているんですが JDBCがセットアップしたはずなのに使えません。 ファイルのコンパイルはできるのですが実行しようとすると java.lang.ClassNotFoundException: com.mysql.jdbc.Driver at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClassInternal(Unknown Source) at java.lang.ClassforName0(Native Method) at java.lang.ClassforName(Unknown Source) at Sample1.main(Sample1.java:15) て出て実行できません。コレって一体どういう事なんでしょうか? 誰かわかる方お願いします。
System.in, System.outってデフォルトでアスキーモードですよね? バイナリモードで読み書きしたいのですが、どうすればよいのでしょうか?
どっちもStream系だからあなたのいうバイナリモードだが。
アハッ、そうでしたか。 どうも有り難う御座いました。
>・内部クラスから外部クラスのローカル変数は使えない。他の方法を考えろ。 この断定おかしくないけ? staticな内部クラスの場合はそうかもしれんが。
43 :
デフォルトの名無しさん :2005/11/28(月) 05:06:45
mysqlって日本語カラム使えたっけ? まあutf8変換で苦しんでくれ(w
MSのSQLでも ACCESSでも まともなプログラマなら カラム名には日本語使わないよ 君子危うきに近寄らず
45 :
デフォルトの名無しさん :2005/11/28(月) 07:36:45
例えば、 num a=1; String str = ”文字列”; このstrに数字をaの値を入れるにはどうしたらいいですか? String str = ”a”; としたらstrには文字列aだから、ダメなのですが。 int型のaに代入された値をstrに文字列として入れる方法を教えてください。
str = a.toString();
str = "" + a;
48 :
デフォルトの名無しさん :2005/11/28(月) 08:03:59
>>46 int a=100;
String str;
str = a.toString();
としたら、
Ans.java:9: int は間接参照できません。
str1 = a.toString();
というエラーがでます。
50 :
デフォルトの名無しさん :2005/11/28(月) 08:12:02
>>49 どっちに書けばいいのか迷ったので両方にお願いしました。
すいません。
>>42 内部クラスが static ではない or ローカル変数が final ではない
とアクセスできない
>>42 ,51
無名クラスじゃない内部クラスから、ローカル変数にアクセスする方法を教えていただきたい。
53 :
デフォルトの名無しさん :2005/11/28(月) 11:01:29
arraylistの配列クラスをつかってary[1], ary[2], ary[3], ary[4]を用意して、初期値として10個の要素をaddしました。 次にfor文をつかって20個の要素をすべてにaddしようとしたら、 ary[1], ary[2], ary[3]は要素数が30になったのに、ary[4]だけは50になってしまいました。 なんででしょう?考えられる可能性があったら教えてください。 arraylistの仕様でしょうか?
>>53 ソース貼れ。
お前さんがどこか間違えてる。
>53 エスパーを求めるな
>>53 ArrayListをarraylistって書くな。
60 :
デフォルトの名無しさん :2005/11/28(月) 13:25:00
Serializeでググれ
Object型をIntegerに変換する一番の早道はどうなりますか? 今は new Integer(rs.getObject("hoge").toString()); とやってます。たぶんすごく無駄なことをやっているんだろうな と思うのですが・・・
63 :
60 :2005/11/28(月) 15:47:08
>>61 さん、ありがとうございます。
FileOutputStream/FileInputStreamを使ってjava.io.Serializableをimplementsするオブジェクトを読み書きする、というページがたくさん見つかり、内容は大体理解できました。
↓のような、もうちょっと高水準なライブラリはないのでしょうか。
FiledMap fm = new FiledMap(new File("data.fs"));
MyClass foo = (MyClass)fm.get("foo");
foo.setCounter(foo.getCounter() + 1);
fm.put("foo", foo);
fm.close();
64 :
デフォルトの名無しさん :2005/11/28(月) 15:47:31
対象の値の存在チェックをするために mapに存在する値の一覧(コレは固定)を入れといて、getしてnullじゃ無かったらあるよ てなことをしてるんだすがそこで質問です。 finalでmap宣言して、static句でmapに入れてあげても、mapの中身は替えられるですよね? (mapオブジェクトがfinalなだけだからシングルトンオブジェクトのような感じになっちゃうのかな?間違ってたらスマソ) 値変えられないコレクションてどうやってつくればいいの?
>>64 java.util.Collectiosあたりでもぐぐれ
>>64 public static <T> List<T> singletonList(T o)
static <T> List<T> unmodifiableList(List<? extends T> list)
>>62 staticメソッド使ったほうがよくね?
>>67 >>68 <T>ってテンプレートだっけ?1.5からつかえるやつの。
1.4じゃどうすれば?
73 :
デフォルトの名無しさん :2005/11/28(月) 17:02:15
JavaではC言語ライクな Point a[] = { {1,2}, {3,4}, {5,6} }; みたいなオブジェクト配列の初期化はどうやればいいんでしょうか
>>73 import java.awt.Point;
...
Point[] points = new Point[] {
new Point(1, 2);
new Point(3, 4);
new Point(5, 6);
}
75 :
74 :2005/11/28(月) 17:08:26
おおっと・・・ Point[] points = new Point[] { new Point(1, 2), new Point(3, 4), new Point(5, 6) }
76 :
73 :2005/11/28(月) 17:29:23
>>70 Generics
Java GenericsはC++ templateとは厳密には
同義ではないらしい。
タイプセーフだし
豆蔵のページでそう説明されていた。
>>62 (Integer)rs,getObject("hoge");
と書き換えればいいが、
rsってJDBCのResultSetのことか?
なら
int hoge = rs.getInt("hoge");
のほうがいいだろ。
ResultSetって TigerになってもGenerics使えるのが少ないんだな。 引数にGenericsで型を指定できるが戻り値には指定できないんだな。 Object getObject(int i, Map<String,Class<?>> map) この ResultSet オブジェクトの現在行にある指定された列の値を、Java プログラミング言語の Object として取得します。 Object getObject(String colName, Map<String,Class<?>> map) この ResultSet オブジェクトの現在行にある指定された列の値を、Java プログラミング言語の Object として取得します。
80 :
デフォルトの名無しさん :2005/11/28(月) 18:53:04
Scrollbarの横幅を変えるにはどうしたらいいの?
ディスプレイの水平解像度を変える
変なメガネをかける
83 :
デフォルトの名無しさん :2005/11/28(月) 19:31:40
自作する
>>52 ごめん。該当の文書いた本人だけどすっごくケアレスミスした予感。申し訳ない。・゚・(ノД`)・゚・。
確かにそれは内部クラスの中でも無名クラスのみに該当することだ罠 orz
っていうか次スレからテンプレの修正を希望します。 ……とりあえず、質問者が 『無名クラス』 じゃなくて 『内部クラス』 って単語を多くつかってたような気がする〜 とか言い訳してみる 。・゚・(ノД`)・゚・。
86 :
デフォルトの名無しさん :2005/11/28(月) 21:53:11
FileInputStream inFile = new FileInputStream(fileName); ObjectInput in = new ObjectInputStream(inFile); while(true){ Data data = (Data)in.readObject(); //終了条件省略 } で,class Dataをいくつか直列化して保存してあるファイルを読み込もうとしてるんだけど,OutOfMemoryErrorが発生して読み切れません. objは毎回破棄しているから,FilInputStream内にファイルの中身が全部詰まってしまっているせいだと思うんだけど,回避方法はありませんか? -Xmxを使わない解決法を探しています. 保存されているObjectは一つ5M程度,ファイルは80M程度です.
どういう処理やりたいのかわからんけど 普通にプロファイラで調べたら?
88 :
デフォルトの名無しさん :2005/11/28(月) 22:33:56
>>87 やりたいことは・・・
巨大なデータを保存して,取り出したい
⇒普通に全データを一気に取り出したのではメモリが足りない
⇒分割して保存
⇒分割して取り出したい
⇒ファイルの後半にあるデータを取り出そうとするとOutOfMemoryError←いまここ
fileの中にDataが配列のようにずらずら並んでいると思ってください.
その中の一部だけ取り出して,メモリ不足を回避.わーい.
というのを狙っていました.
直列化するまえにZioOutputStreamで圧縮すればいいのでは? それと直列化したいオブジェクトそのものを分割することも。 分割して圧縮して直列化して 取り出すときに解凍して統合する。 objは毎回破棄って?まさかSystem.gc()をつかってるわけではない? java.lang.ref.SoftReferenceとか使って解放させた方がいいかも。
90 :
デフォルトの名無しさん :2005/11/28(月) 22:52:36
>>89 圧縮することは根本的解決にならないので・・・
で,
while(true){
in.readObject();
//終了条件省略
}
にしてもやっぱりOutOfMemoryですた.
ちょっと読み込んで,読んだ分はメモリから削除して次を読んで・・・
とやりたいだけなのに.
System.gc(); は要らないだろ。メモリが足りなくなった時点で参照されてないオブジェクトは全部消される。 個人的には、ObjectInputStream 側が悪さしていそうな予感。 だけど確証が持てないので……シリアライズ使うの止めた方が懸命。 それほどの巨大データなら、独自にデータベースもどきを作った方が早いと思うよ。
ひょっとして、whileをはずして in.readObject(); 一発だけでOutOfMemoryErrorじゃない? Dataがリスト構造みたくつながってて、全部釣れてきちゃうんじゃ?
参照リンクが切れてないだけじゃないの?
94 :
デフォルトの名無しさん :2005/11/28(月) 23:25:30
>>91 要らないメモリ変数にはnull突っ込まないとGCされないよ。
単純にバッファに読み込まないでseekすればよさそうだけど、多分探すの大変で遅いだろうね。
DBみたいに固定長のファイルフォーマット仕様を考えて、それを読み込むぐらいだな。
単純にメモり積むのが簡単だけど。
シリアライズされた状態で5Mもあるオブジェクトということは、 メモリに展開したら… つうか、何でそんなでかいのよ。
>>94 nullかどうかじゃなくて切り離されたタイミングでGCで回収対象になるんだから
ループ内で変数に代入していたら他に参照がなければちゃんときえる
意味のある場合以外はnull代入はやめたほうがいい
どうでもいいが
>>86 はObjectInputStreamの仕様わからないで使うなよ・・・
ちゃんとマニュアルを読んでみよう
ヒント:以前もoutputのほうで問題出ていた
>>94 nullにしただけでもGCされるとは限らないし
下手にやみくもにnullしただけだと
返ってパフォーマンスを悪化させることもあるし。
java.lang.ref.Referenceを上手に使った方がいいかと思われ。
98 :
デフォルトの名無しさん :2005/11/28(月) 23:46:00
初歩的な質問で申し訳ないのですが long型とint型の数値を比較するために 条件文の中でキャストってできるのでしょうか? int i; long j; i=1 j=88888888888888 if( (long) i < j ) ←←←←←←←←←←←←条件文の中でキャスト可能? { ・・・・・・・・・・・・・・・・・・ }
>>90 1バイトづつ、固定バイトずつ読み込む
read()系メソッドつかったほうがいいのでは。
っていうかもっといいのは
直列化オブジェクトがどんなクラスの
オブジェクトなのか非常に気になるな。
もしかしてリストの中にでっっかいリスト
が入っているとかか?
それともひたすらnewしすぎてメモリ消費が膨大になっているか。
while文の中でRuntime.getMemory()
とかgetfreeMemory()とか使ったら
どんな数値がでるのか気になる。
>>86 なぜ-Xmx使っちゃいけないのか気になるぞ
86じゃないけど、jarからの実行みたいに-Xmxが使えないケースってのはあるよね。
103 :
86 :2005/11/28(月) 23:57:32
>>92 いや,何回かは読んでいるのは確認済み.
ちゃんと切れてはいるみたい.
>>95 いや,一つ一つはもっと小さいけど,高速化のためHashにぶち込んでSerializeしてるから.
>>96 マニュアル・・・?
スマソ,マニュアルってのがどこにあるのか良く分からん.
教えてくれるとありがたい.
APIリファレンスは見たけど.
ソースも見ようとしたがnativeとか出てる時点で断念.
>>99 -Xloggc:heap.logでheapメモリを監視していると,
面白いほどメモリが消費されている.
104 :
98 :2005/11/29(火) 00:02:19
>>100 コンパイルは成功しました。 実行も問題ありません。 条件文内でのキャストでバグ的な要素ってありませんでしょうか?
つーか、異なる型で演算したら大きいほうに拡張されるだけでは
JVMを自分で作りたいんだけど、ここで教えてくれる人は1度は自作して 作ったことあるすごい人ばかりだと聞いたので質問させてもらいます。 資料とかはどのようにして集めたのでしょうか教えてください?
少なくとも 『他人から紹介されて』 ではなかったことだけ伝えとくよ。
>>106 トリアエズ動けばいいのなら、バイトコードの仕様さえあれば、あとは普通に
コンパイラ+実行用スタックマシン作るだけさー。
マンドクセーのはOS依存のネイティブライブラリの部分だったりして。
>>106 JVMのソースコードが公開されたのは
Java SE 6 Mustangになってからだぞ。
JavaCCなどのコンパイラコンパイラと間違えてないか?
Mustangを改造すればJVMを自作することができるかもしれない。
ただしライセンス違反に気をつけないといけないがな。
KVMを作るなんてかなり高度なスキルを要求されることは
間違いないな。
>>104 C./C++などの言語から来た口か?
Javaはちょっとしたことでも
実行時ではなくコンパイル時点で
エラーや例外を吐く。
実行時でもかなり厳しく吐く。
心配はない。
まずプリミティブ型キャストの仕様と
異なる型どうしの演算時に起こる自動キャストの仕様
を理解した方が良い。
これ以外のことでももし、気になることがあるなら
checkstyle, FindBugs(もしくはこれらのEclipseなどのプラグイン)
を使って自分ソースコードをチェックしておくといい。
111 :
デフォルトの名無しさん :2005/11/29(火) 01:55:50
Web板で回答がなかったので再度質問させていただきます。 入力ウインドウで入力されたデータをPOSTでデータ処理するページに投げて、 その結果を2つのウインドウで表示したいのですがどうすればよいのでしょうか? 現在はデータ処理のページにjava Servletを使用し、そこで2つのHTMLファイルを 作成して、入力ウインドウでその2つのHTMLファイルを開く処理にしています。 ただ、どうもスマートではないので、ファイルを作成せずに表示出来るようにしたいのです。 入力ウインドウからデータを入力すると、フレームで2つに分割され、それぞれの ページに結果が出るようにしたいのですが、どうすればよいのでしょうか?
>>111 HTMLなんぞ作らずにStringBuilderにでも溜めてどかんと出力したら?
普通にトップのページからフレームのサーブレットをよびだすだけでは? 必要なデータ類はセッションに入ってるでしょ?
ねぇねぇなんでC言語よりはるかにC++よりもすごく遅い言語がもてはやされているの? おかしいと思いませんか?
遅くないよ?
116 :
デフォルトの名無しさん :2005/11/29(火) 02:24:50
>>115 は大嘘をついてますね。すごい遅いと思います。
メモリもたくさん積んでもすぐメモリなくなるし
おかしいですよJAVAは異常でとんでもない言語ですよ。
>>112 どうだろう
俺的には
Jakarta Velocityを勧めたいところだな。
HTMLが膨大で、飾り部分が多いだけなら
そっちのほうがString系にため込むより全然いいし。
JSPでもいいけどさ。
Servletを使っているなら
VelocityServletを使うという手もあるわな。
>>116 おや? webProg板から来たのかな?
君はプログラミング言語で一体
何を作りたいの?
何を作りたいか、どこコンピュータで
走らせたいか、どんな目的、どんな
用途で作りたいかで言語は決める。
サーバで動かすなら大抵は
Javaなんて全然遅くない。
デスクトップアプリでもCPI2GHz以上、メモリ512MB以上
なら全然遅くない。あとはJavaプログラマの腕次第で
早くすることも遅くすることもできる。
10年前は確かに遅かったがJavaが登場してから10年経った今では
JVMもJavaコンパイラもだいぶ進化してきた。
それにハードウェアの進歩を加えるとJavaの早さはC/C++で開発した
アプリケーションとさほど変わらない速さで動かすことができる。
>116
Javaの方がC/C++よりも速いケースだってありうるんです。
IBM dW:Javaの理論と実践:パフォーマンスに関する都市伝説を再検証する - Japan
ちょっとしたクイズがあります。生のアロケーション・パフォーマンスとして速いのは、
Java言語でしょうか、それともC/C++でしょうか。この答えに、多くの人は驚くでしょう。
最近のJVMのアロケーションは、最高パフォーマンスのmalloc実装よりも、ずっと高
速なのです。HotSpot 1.4.2以降でのnew Object() 用の一般的なコード・パスは、約10
マシン命令(Sun提供のデータより)ですが、Cで最高パフォーマンス
のmalloc実装では、1つのコールあたり平均60から100の命令が必要です(Detlefsなど
のデータによる。参考文献を参照)。しかもアロケーションのパフォーマンスは、全体的
なパフォーマンスのコンポーネントとして小さなものではありません。ベンチマークによ
ると、PerlやGhostscriptなど実世界でのCプログラムやC++プログラムでは、実行時間
全体の20%から30%がmallocやfreeに費やされています。これは、健全なJavaアプリケ
ーションでのアロケーションやガーベジ・コレクションのオーバーヘッドよりも、はるかに
大きな数字です(Zornのデータによる)。
http://www-06.ibm.com/jp/developerworks/java/051104/j_j-jtp09275.shtml
>>114 C/C++よりもセキュリティに強い言語だから。
>>116 no.43 Java Performance Tuning Newsletter
"# Slashdot での大論争。これは今までで一番愉快な
Java 対 C++ の議論に違いありません。
C++ 愛好家は必死に「不公平だ、こっちはメモリ管理を手動でやらなきゃ
いけないのに」と主張しています。
公平を期するための彼らの提案は - System.gc() の呼び出しを
山ほど突っ込んで Java 側を遅くするというものでした
(お気づきでない方のために。Java は System.gc() を呼び出さなく
てもメモリを回収します。 System.gc() の呼び出しを追加してもメモ
リ回収の速度が遅くなるだけです)。 続く抗議もすべて、このベンチ
マークが Java をひいきしているという一点に集中しているようでした。
しかし奇妙なことに、3年前までは当時の JVM をテストしても C++
の方が速いという結果が出たものです。 このノイズの山を掘り返せば、
有意義なコメントが見付かるかも知れません
# Java 1.5 は 20% 高速化した模様"
http://www.javanews.jp/javap/newsletter043.html
>>119 このプログラムだと、
最後の計算結果出力をコメントアウトしているので、
-server オプションで、実行時に最適化されて
println() 以外の処理が全て飛ばされる可能性がありそう
お前らあんまり114をいじめるなよwwwwwwwwww
>>123 なるほど、Java が遅いなどという人は、
3年前のカタログを見てパソコンを買う人だということらしい
…いじめてみる
ワラタ
> 公平を期するための彼らの提案は - System.gc() の呼び出しを > 山ほど突っ込んで Java 側を遅くするというものでした おいおい、どっちが不公平なことしてるっていうんだw
>>119 のプログラムに時間計測のコードを挿入して試してみた。
CPU: Pentium4 3GHz
MEM: 1.5GB
OS: WindowsXP SP2
コンパイラ Eclipse 3.1.1
Java HotSpot(TM) Server VM 1.4.2
3万 1.0秒
5万 2.6秒
10万 10.2秒
15万 25.0秒
20万 42.7秒
Java HotSpot(TM) Server VM 1.5.0
3万 1.5秒
5万 4.0秒
10万 15.3秒
15万 36.1秒
20万 63.2秒
Java HotSpot(TM) Server VM 1.6.0 beta
3万 1.4秒
5万 3.6秒
10万 18.5秒
15万 31.6秒
20万 49.9秒
130 :
デフォルトの名無しさん :2005/11/29(火) 07:56:27
やっぱり1.4.2で問題ないなら、1.4.2を使い続ける方が賢いかあ。 遅い1.5.0にしてハードウェア増強を迫るってのは営業に使えるだろうけど(w
チラシの裏に書こうね。
132 :
デフォルトの名無しさん :2005/11/29(火) 10:03:28
ここの板でいいのでしょうか? もし不味ければお手数ですがどこで聞けばいいかアドバイスをお願いいたします。 Windowsマシンでライブカメラの配信をしたいと思い、Sun社のJMF2.1.1 eをダウンロードし、JMStudioで接続試験をしようと思ったのですがRTSP の機能が組み込まれてない(クラスはある)ため出来ませんでした。 そのためJAVAのソースをEclipsで追いかけてrtspを組み込んでみようと思 うのですがJMF2.1.1eとJMStudioのソースのバージョンがあってないらしく 「com.sun.media.protocol.sunvideoplus.DataSourceは解決できないか 、型ではありません。」 というような宣言のコンパイルエラーが200件以上出てしまいます。 海外サイトも検索しまくっているのですがとにかくRTSPに関するサンプルが 無くて大変困っています。 質問@JMStudioのデバッグをされた方いらっしゃいますか? もしおられればどのJMStudioのソースとJMFを組み合わせたか教えて ください AJMFでRTSPを実現された事がある方いらっしゃいますか? できれば参考になるソースを見せていただけませんでしょうか? B参考になるサンプルがあれば教えてください
JavaRMIを使ってチャットプログラムを作ろうと思っています。 異なったエンコード方式を持ったOS間でも文字化けせずに通信 を行なうため自分のOSのデフォルトのエンコード方式の情報を 得たいと思うのですがどうすればよいのでしょうか? 今までInputStreamReaderなどからgetEnocoding()を使って 得ていたのですがRMIを使うとストリーム自体をプログラムで 扱うことが無いので困っています。 適当に(使わない)Socketなんかを開いてからストリームを得て そこからエンコーディング方式を得るという方法しかないのでしょうか? 宜しくお願いします
System.getProperty("file.encoding")
日付の足し算とかどうやってやりますか?
136 :
デフォルトの名無しさん :2005/11/29(火) 14:33:17
コード変換すると化けるから、変換させないのが重要なのにな。 strで扱うだけでもutf8されてしまうので、バイナリで扱うのが重要。
138 :
133 :2005/11/29(火) 15:25:34
チャットを作るのにRMI・・・うーん
RMIのかわりにP2Pでチャット作るって事でJxtaという手も蟻だけど 情報が少ないし。 Servlet,JSPで作るのが一番簡単だと思うんだけどな
文字コードは全部UTF-8で統一するのが望ましい
Javaって資格とると在宅でも仕事できるの?
>>141 なんでServlet/JSpがでてくるんだよ
まったく違う方式だろ
そしてRMIなんて相手の環境をいじらせてくださいという方式なんだから
チャットをやるのには無駄がありすぎる仕様
145 :
86 :2005/11/29(火) 17:46:29
遅レスですが,結局RandomAccessFileを使ってDBもどきを作って解決しました. 無駄な時間を使ってしまった・・・
JMFを使ったことある奴はほとんどいないだろうなぁ mp3をちょっと再生してみたくらいだから俺にはわからん。
super.clone() を呼んだ時に、どのような動作がどのような順番で行われるのか詳しく教えて下さい。
>>148 Javaをインストールしたディレクトリに
できるsrc.zipが代わりに君に教えてくれるよ。
>>144 Servletで作られたチャット知らないの?
方式は違ってもチャットを作るのはRMIよりも簡単。
>>150 RMIを考えてるシステムなんだからServletという考えが浮かぶほうがおかしい
配列の要素数を増やす(サイズを増やす?)ってできないんけ?
できないよ
154 :
152 :2005/11/29(火) 20:58:34
トンクス じゃあ配列がいっぱいになっちゃった場合はどうするのがベスト? 作り直し?? プログラマーじゃないんでその辺の常識がわからん・・・
作り直しか、ArrayList で代用するかどっちか。
>>154 サイズがよく変わるならコレクションを使うのが常識
157 :
デフォルトの名無しさん :2005/11/29(火) 21:56:41
HttpURLConnectionを使ってサーブレットと通信するクライアントを作ってます。 通信自体は問題ないのですが、勝手に付けられる余計なヘッダ(user-agentとか)を消して送信したいです。 HttpURLConnectionにはそれらしいメソッドが見つからないです。どうしたらいいのでしょう。
>>150 P2PとかRMIでチャットとか行ってるんだから
特定のチャットサーバを必要としない物を作りたいんだろう。
全部のノードにHTTPサーバ(Tomcat?)載せるのは
無駄が多い
super.clone() を呼んだ時に、どのような動作がどのような順番で行われるのか詳しく教えて下さい。
ソース嫁
161 :
111 :2005/11/29(火) 22:44:04
>>112 ちょっとよくわからないのですが、最終的には2つのHTMLページが必要なのです。
どうすればよいのでしょうか?
163 :
111 :2005/11/29(火) 22:56:25
>>162 すいません。
レスアンカーが無かったので気づきませんでした。
フレーム内のWebページはJSPなどにして、そこで表示するデータは
セッションから取得するって感じですかね?
確かにそれでいけそうな気がします。
StringWriterって速度的にはどうなの? StringBuilderと互角?
用途が違うだろ・・・
いやべろしちーのはなしがでてたからさ
167 :
デフォルトの名無しさん :2005/11/29(火) 23:21:00
継承を前提としたクラスのフィールドを protected で宣言するのは オブジェクト指向(カプセル化)の観点からは望ましくないですか?
final ならばそうでもない。
169 :
デフォルトの名無しさん :2005/11/29(火) 23:39:55
serialVersionUIDってどう設定すればいいですか?
>>151 彼の目的はRMIじゃなくてチャットを作ることだけなら
別にRMIもなにもって感じだと思うのだが。
>>158 なんで全部のノードにTomcatを載せる必要があるんだ?
一つのサーバにTomcatをいれて
クライアントサイドのブラウザからチャットすればいいだけの
話だとおもわれるンだが。
>>164 BufferとBuilderとの違いもわからんのか。
おまけにWriterと間違えてるし
Javadocちゃんと嫁よ
>>169 Eclipseに任せて設定できればいい。
>>167 >>168 のいうとおりfinalなら問題なし
だがfinalではないなら、
インスタンスであるばあい、private
にするのが望ましいだろう。
フィールドを継承することは望ましくない。
面倒なことになる。
privateつけてアクセッサメソッドを実装した方がいいだろう。
>>172 お前こそちゃんと読めよ
StringWriterも知らんのか
StringBuilderとStringWriterとが 比較できるものだと思ってるの?
>>171 対等の立場でやりたいものなんじゃないの?
あとはコマンドラインベースかGUIベースあたりかと
WEBアプリでの話ならそういったほうがはやいし
別のスレで聞いて反応が芳しく無かったので ここでお聞きします。 アホな質問かも知れませんけど インターフェイスで swingのボタンアクションはactionPerformed(ActionEvent e)を実装して 使いますよね? まぁスレッドでも良いですが でもインターフェイスは本来は何にも実装は無いんだからボタンアクションを 起こすのは何か別のクラスとかで定義されてるって事ですよね? インターフェイス振る舞いを定義して使う人が実装するから便利なのは 分かるんですけども。 自分で作ったインターフェイスにこの様な挙動を持たせるには どんな風なクラスを書くのか気になって。 それともインターフェイスはやっぱり再利用するだけのモノ 何でしょうか・・・・?
179 :
デフォルトの名無しさん :2005/11/30(水) 01:21:27
>>177 それって1対1のツーショットチャットかい。
それはなー、よく昔使われていたperlのゆいちゃっと
と比べるとチャットって気がしないぞw
>>178 interfaceについて知りたければ
結城浩の『Java言語で学ぶデザインパターン入門』
を読むと良く分かるだろう。初心者にもわかりやすいし
喩え話を使って丁寧に説明している。
>>179 JFrameのような希ガス
CanvasはJFrameをはみ出してもかまわず(ry
するやつかとオモタ
JFrame直書きはできんだろ 1.4.2はうごくけど5.0は消えるはず 普通はBufferStrategyをつかう
185 :
179 :2005/11/30(水) 01:47:19
レストンクスです BufferStrategyとか色々調べてみます
186 :
デフォルトの名無しさん :2005/11/30(水) 01:51:52
>>178 >それともインターフェイスはやっぱり再利用するだけのモノ
>何でしょうか・・・・?
インタフェースはその名の通り、インタフェースを定義するものです。
コーディング時にインタフェースのみ定義しておくだけで、
具体的にどのクラスがその実装を行い動作するのかを知らなくても良いのが長所です。
再利用云々は、的外れだと思います。
187 :
デフォルトの名無しさん :2005/11/30(水) 02:05:43
>>186 ってかその理屈は分かるんですけど
インターフェイスって自分で定義して書くよりも
ライブラリーで使う方が多いと思うし
例えば何でRunnableインターフェイスのrun()の実装した
内容がスレッドになるのか・・・・ってのが
まぁjavaVMがそのメソッド名を実装してるクラスは
自動的にする様に定義されてるクラスが有るんでしょうけど
それで納得して使った方が良いのかな。
インターフェイスは、文字通りインターフェイスを定義するんだよ。 インターフェイスだけコミットしておいて、中身は後付けででとか、 てきとうにマルナゲとか、現実でもよくやるでしょ。そういうのに 使うのよ。
そっか 普通のクラスはそのものに実装も有って。 インターフェイスは実装は使うクラスに任せて それを実装したかどうか判断する第三者(javaVM)に 判断させて黒幕のスレッドを動かすクラスも存在する って考えれば インターフェイス=抽象メソッドで何も挙動しない って考えるよりもライブラリー使う分には納得出来ますね。 この認識でとってもヤバイ間違いを犯す可能性が無いなら これでやって行きたいんですが・・・・
>>188 javaとUMLで学ぶオブジェクト指向の考え方
と
オブジェクト指向でなぜつくるのか
を図書館や友達に借りて詠んでるんですが
もっと勉強しなおして出直してきます。
結城って名前良く出るからこれも詠むしかないっぽいですね。
失礼しました。
今日メモリ4GBにしてみたけどやっぱりJAVAはメモリ 食うだけ食って遅い能無し言語だと言うことが解った。 なんでこんな言語を必死に使おうとしているのか 理解に苦しむ
Windows でしか動かない C# (≒ .NET) よりマシですからね
>>191 君のコードがウンコちゃんだからなのでは
メモリ4GBも乗せる金は有っても
頭がアレではアレ?だろう。
何でもwindowsって時代でも無いだろう。
でも金は無いのでjavaでxpで作ってますけど・・・・
習得の苦労さへ厭わなかったら商用と変わらん品質のモンが使える。
Java Studio Enterprise 8やJava Studio Creatorもフリーだし
sunも何処に行くんだろうって思うけど。
ってか.NETって確かに楽しそうなイメージは有るけど
MSの株価の為にaspから.netになってまた突然変わったりして
windowsでは.netが良いだろうけどunix系でも稼働出来る様にしたら
金の卵のwindows使う人が減るから絶対しない(筈)
大体javaを叩くのはC,C++,C♯使いじゃなくてvisualbasicの人が多い。
どうでも良いけど。
言いたいことがいっぱいあるのは分かったが もう少し整理してから書いた方が良いと思う
メモリ4GにしてもXmxオプションで指定しないと64Mしかつかわんよ
197 :
デフォルトの名無しさん :2005/11/30(水) 09:22:52
198 :
デフォルトの名無しさん :2005/11/30(水) 09:46:39
あるサンプルソースをeclipsで動かそうとしています。 コンパイル時に private SessionManager mngrSession; という宣言で「型SessionManagerは使用すべきではありません」 とだけエラーが表示され理由も何も表示されません。 何が悪いのでしょうか?
またエスパー召喚かよ。 そのSessionManagerってのが何者なのかはオマエしか知らんわけだが それのドキュメントでも読んでみたらどうだ。 deprecatedなんじゃねーの?
>>187 >
>>186 > ってかその理屈は分かるんですけど
> インターフェイスって自分で定義して書くよりも
> ライブラリーで使う方が多いと思うし
> 例えば何でRunnableインターフェイスのrun()の実装した
> 内容がスレッドになるのか・・・・ってのが
デザインパターンの一つ、Template Methodパターン
について読んでみれ。
ソースコードサンプルを読めばああなるほど、とわかるはずだ。
あれは抽象クラスではあるが、Threadクラスのrun()メソッドと同じ。
start()メソッドの内部でrun()メソッドを呼び出す命令がかいてあるから、
オーバライドしたrun()メソッドを書くだけでスレッドとして動作できる。
>>191 おまいの作ったまたは拾ってきたJavaプログラムが
古いコンパイラで動く駄目なものなのか
おまいが動かしているVMが糞なんだな。
それかもしくはおまいのCPUが300MHz以下の糞マシンであるか
もしくはおまいの使ってるOSに糞サービスが大量に
常駐してJavaを使う前から4GBのメモリをすべて占有しているとかなw
>>193 >
>>191 > 君のコードがウンコちゃんだからなのでは
> メモリ4GBも乗せる金は有っても
> 頭がアレではアレ?だろう。
>>191 は頭が馬鹿だからメモリ4GB載せてもJavaは遅いとか言ってるんだよw
>>191 の頭にメモリ4GB積んだほうが
>>191 のためになるわなw
> ってか.NETって確かに楽しそうなイメージは有るけど
.NETは仕事もプロダクトもAPIもろくになくて何も楽しくないなw
> MSの株価の為にaspから.netになってまた突然変わったりして
M$はC#を推してるかと思ったらVB.NETのほうを強く推してるしw
> 大体javaを叩くのはC,C++,C♯使いじゃなくてvisualbasicの人が多い。
ワラタ。なんでだろーねw
VB.NETやC#がJavaにそっくりでJavaのような文法を覚えさせられる
ことが気に入らないのかねw
203 :
デフォルトの名無しさん :2005/11/30(水) 13:58:05
javaに挑戦して挫折したVBユーザーとか(w 押し入れにはVJの箱が入ってるとかさ。
vj は正直要らんと思うぞ。
JFreeChartを使ってグラフを書こうとしたのですが、スプライン補間をしてくれそうなクラスが 見当たりません。 点の数が少なくても適当な補間を行ってくれる、グラフのライブラリってありますか?ff
206 :
デフォルトの名無しさん :2005/11/30(水) 15:27:21
>>205 XYPlotかな?
XYItemRendererを好き放題に実装して使ったらいいよん
class Super { public String getKey() { return "super"; } } class Sub extends Super { public String getKey() { return "sub"; } } この getKey を、Super またはそれを継承したインスタンスを一切作らずに実行することって出来ないですよね? リフレクションでも出来ないし……(´・ω・`)
エスパー募集!
class Super { public String getKey()
class Super { public static String getKey() { return "super"; } } class Sub extends Super { public static String getKey() { return "sub"; } }
インスタンス化せずにインスタンスメソッドを使うとはこれ如何に?
213 :
208 :2005/11/30(水) 17:03:06
>>212 いや、やりたいことは
[1] インスタンスAから、Aが属するクラスと対応した文字列を取得したい
[2] 一部の処理では、Class オブジェクトから直接 [1] の文字列を取得したい
だから……素直に getKey を static にして、リフレクション使って [1] を実現するメソッド新たに作るです (´・ω・`)
なんだろう。『一部の処理』 のために全体が複雑になってる気がする……。
214 :
デフォルトの名無しさん :2005/11/30(水) 17:06:20
読み込んだjpg画像(黒で4つに区切られた画像・・・田んぼの田みたいな感じ)を黒の中の色情報を得たいのですが、良い方法教えてください。 画像の周りは白です。 白白白 白田白 白白白 こんな感じです。もちろん田の中は何ピクセルかは決まってません。田の中の4つの色情報を得るには、左上から1ピクセルづつrgbの値を読みこむのは出来るのですが、黒の中の色情報を得るのが難しいです。 意味不明な質問かもしれないけど、お願いします。
その画像に黒いラインとかは絶対に存在しないの?
>>213 class.newInstance().getKey()
ではアカンの?
218 :
デフォルトの名無しさん :2005/11/30(水) 17:24:29
>>215 完全に黒の部分は田の線の所だけです。この田は2×2ですが、5×5でも、取り合えず田の線の中色情報(RGB値)を得たいのです。
219 :
208 :2005/11/30(水) 17:29:06
>>216 引数なしコンストラクタ作っとけば良いんですけど……引数有りで全体組んじゃったんで(´・ω・`)
>>217 間違ってると思いたいけど、やりたいことは間違ってない。・゚・(ノД`)・゚・。
>>218 やってみてなぜ出来ないと思ったの?
紙にアルゴリズムでも書いてみた?
221 :
デフォルトの名無しさん :2005/11/30(水) 17:39:58
>>220 田の線無しの4つの画像のRGB値を得る事が出来ていないんです。
赤青
黄緑
(正方形で1色のピクセル値は例えば50×50)
簡単で当たり前ですが、1ピクセルなら読み込むことが出来ます。
が、ピクセル数が多すぎると、どういう風にすればいいのか分かりません。
>>219 適当だけどこんなんはどう?
getKeyをstaticにすると駄目な所が出たりしない?
public class Hoge {
public static void main(String[] args) {
System.out.println(getKey(Super.class));
System.out.println(getKey(Sub.class));
}
public static String getKey(Class<? extends Super> c) {
try {
return (String) c.getField("KEY").get(null);
} catch (Exception e) {
return null;
}
}
}
class Super {
public static final String KEY = "super";
public String getKey() { return KEY; }
}
class Sub extends Super {
public static final String KEY = "sub";
public String getKey() { return KEY; }
}
>>207 しこしこがんばります。ありがとうございます。
>>222 ありがとうございます。getKey が各クラスにコピペされるのがちょっと違和感あるですが、
何とかやってみます(`・ω・´)
>>224 もともとgetKeyてつかってないの?
だったら public String getKey() { return KEY; } は要らないよ。
226 :
デフォルトの名無しさん :2005/11/30(水) 18:40:06
軽い初心者なのですが、javaでコマンドライン以外で実行するって事できるんですか? (例えば、exeをクリックすると実行するとか) 教えてください
227 :
225 :2005/11/30(水) 18:41:21
> [1] インスタンスAから、Aが属するクラスと対応した文字列を取得したい を忘れてたorz
>>225 >>227 ん?ちょっと良く分かんないですが、私が気にしたのは 「全く同じコードが随所にある」 ってことです。
今回の getKey は短いですから、気にしなければ良いだけなんですけどね。
>>228 なるほど、そういうことですか。
instance.getKey()が少し遅くても大丈夫ならこれでも良いかも。
class Super {
public static final String KEY = "super";
public final String getKey() { return getKey(getClass()); }
public static final String getKey(Class<? extends Super> c) {
try {
return (String) c.getField("KEY").get(null);
} catch (Exception e) {
return null;
}
}
}
class Sub extends Super {
public static final String KEY = "sub";
}
>>229 警告を表示する際に数回実行する程度なので、それで大丈夫そうです。
本当にありがとうございます。
clone() の中で super.clone() を呼ぶのが正しい手続きらしいのですが、 super.clone() を呼んだ時に、どのような動作がどのような順番で行われるのか詳しく教えて下さい。
>>226 それで軽い初心者だと思ってるのかよ・・・重症だな
超初心車です。 RandomAccessFileを使わずにseekってできるのですか? テキストファイルの先頭から任意の位置にSeekしたいのです。 テキストファイルをreadLine()見たいなメソッドで一行づつ処理をするプログラムです。 RandomAccessFileを使用すれば希望する動作はします。 ただ・・・・遅すぎて現実的には使用不可能です。
>>235 はーいせんせー。遅いのには別の理由があると思いまーす。
iアプリで遊べるアクションゲームを開発中なんですが、操作キャラの移動処理ってどんな風に作ればいいですか?
240 :
デフォルトの名無しさん :2005/12/01(木) 00:56:20
volatile修飾子を実験してみたのですが、 以下のコードを実行すると、毎回必ず[1000]が出力される事を期待しているのに 何回か実行を繰り返していると、1000未満の数値が出力されます。 これは何故でしょうか?環境はjava1.5.0_5です public class ThreadTest { static volatile int c; public static void main(String[] args) throws Exception { Thread t0 = new MyThread(); //この間にt1〜t8もnewする Thread t9 = new MyThread(); t0.start(); //この間にt1からt8もstart()する t9.start(); t0.join(); //この間にt1からt8もjoin()する t9.join(); System.out.println("[" + c + "]"); } } class MyThread extends Thread { public void run() { for (int i = 0; i < 100; i++){ThreadTest.c++;} } }
volatile と synchrionized って無関係だよ。
242 :
デフォルトの名無しさん :2005/12/01(木) 01:06:26
>>241 コメント有難うございます。
volatileは変数へのアトミックなアクセスを行うための修飾子であると
理解していたのですが、それは誤りだということでしょうか?
volatileの修飾子を使う事により、どのような効果があるのでしょう?
>>242 volatile 使って劇的に結果が変わるコードを書いたことがない (-∀-;
ちなみにアトミックな方は synchronized で、volatile は変数のキャッシュを抑制するはず。
volatile は無視されるという話も聞いたことがあるが……正直どうだったか。
超手抜き版Hibernate作りたいんだがいい資料ないですか? 大体10クラス程度、8000ステップぐらいで納めたいのですが どんなもんでしょう?
>>240 volatileはスレッドで行なった変数書き込みがちゃんと反映されることを保障するだけ。
だからそのコードでは100以上になれば正しい挙動。
247 :
デフォルトの名無しさん :2005/12/01(木) 01:17:28
>>243 なるほど、無視される可能性があると言う事ですか。
実装はVMに依存されていると言う事なのかな・・。
>>244 一番簡単なテストプログラムならば
Entityを1つ、それとMainクラスを1つの2クラスで十分だと思います。
Java5を使うならば、Annotationを使う事をオススメします。
それならば、あとはhibernate.cfg.xmlを1で合計3つのファイルだけでOKだと思います。
サンプルは
http://www.hibernate.org/hib_docs/annotations/reference/en/html_single/ を参考にすれば大丈夫だと思います。
簡単に書く為には、Entityのクラス名とプロパティ名はテーブルと全く同一にし、
classに@Entity、pkのプロパティに@IdをつけるだけでOKです。
あとはDBにあるデータをSelectしたり、Updateしたりするだけのコードでも書けば
資料としては十分ではないでしょうか。
パフォーマンス気にするような排他制御にはsynchronizedではなくLockつかえよ
249 :
デフォルトの名無しさん :2005/12/01(木) 01:27:35
>>245 >volatileはスレッドで行なった変数書き込みがちゃんと反映されることを保障するだけ。
私のテストプログラムでは、10あるスレッドがそれぞれ変数cを100インクリメントしています。
なので、インクリメントが必ず反映されるならば、cの値は1000になると推測しました。
しかし、1000未満の値になる場合があるので、これはスレッドで行った変数書き込みが
他のスレッドに反映されていないケースがあるのだと理解しました。
これは私の理解に誤りがあるのか、プログラムに問題があるのか・・。
ちなみに、volatileは単なる興味でテストしてみただけで、
実際に使う事は永遠にないとは思います。
>>245 volatileとインクリメントの併用は間違えやすいポイントだよ
c++はワンステップで行われるわけでは無く
1)cのロード
2)c += 1の実行
3)cのストア
の3ステップがある。この場合タイミングによっては、
スレッド1 スレッド2
1) c = 10 1) c = 10
2) c += 1 2) c += 1
3) c = 11 をストア
3) c = 11 をストア
となる事がある
volatileは各1)2)3)をアトミックにしてくれるだけ
意味無いじゃんと思うかも知れないが、longやdoubleでは意味がはっきりするよ
volatileは可視性だけ syncronizedやLockのatomicとは違う
254 :
250 :2005/12/01(木) 01:32:29
ごめん間違えた。2)はアトミックにしてくれない
>>252 たまたまカウントが分かりやすいから例に出しただけとおもわれ
当たり前だけどatomicは融通が利かないしね
一般のアプリでソースにatomicでてきたらぶちころすかも
256 :
デフォルトの名無しさん :2005/12/01(木) 01:34:03
>>250 なるほど!そういうことだったのですね!
ご回答有難うございました。謎がすっきりしました。
longやdoubleが何故はっきりするかが判りませんが
それは自分で調べてみます。
>>247 無視されてるというよりは
同時に書き込まれてるんでない?
258 :
デフォルトの名無しさん :2005/12/01(木) 01:47:52
>>200 自分が結城先生の本を立ち読みしてちょっと考えたのは
インターフェイスとは
public interface Understandable {
void implCode();
}
class User implements Understandable {
public void implCode() {
System.out.println("実装コード");
}
}
class X_interface {
public X_interface(Understandable code) {
//此処にスレッドなり、ボタンアクションなりの挙動を書く。
//このコードが複雑でも再利用が可能。例えば
for(;;){
code.implCode();
}
}
}
でスレッドとかはjavaVMに何か仕掛けが有ってX_interfaceを呼び出すとか
考えました。
まぁインターフェイスの使い方とかはこんな感じと思うですけど
あるスレッドが+1する前に別のスレッドが値を読んでしまうのが問題なんだよね?
>>259 +1した値を書き込む前に読み込むことが問題
後、eclipse以外のjavaアプリを動かすとPCが落ちるんですけど どなたか解決法が分かる人とかいらっしゃませんでしょうか・・・・? Java Studio Enterprise 8でコード書こうとしたら画面が真っ暗で・・・ javaの2ちゃんブラウザーもPCが落ちます。 jamesやtomcatは大丈夫なんですけども。 java web startが怪しいけど・・・かなり。
262 :
デフォルトの名無しさん :2005/12/01(木) 01:57:52
>>261 あ、java web startでマシンが落ちる現象は私の周りで
複数件発生しています。あなたのPCでもそうですか。
しかし、同じアプリであっても、別なPCでは無問題だったりもします。
原因は皆目わからないです。
>>262 あ、やっぱりそうですか・・・・
j2se 1.42_06と
j2sdk1.42_06と
j2se5.0を入れてて
Java Studio Enterprise 8は5.0を使ってるのに
落ちるとは・・・・
やっぱ消した方が良いのかな。
264 :
デフォルトの名無しさん :2005/12/01(木) 02:03:11
>>261 とりあえず、ディスプレイドライバと、マザーボードのBIOSを
最新版にする事以外に対策は思いつかないです。
>>264 色々教えて頂いて有り難う御座います。
なるほど・・・・
ってか自分のPC aviの画像見てても偶に変な挙動するし。
やっぱりそこら辺の対策した方が良さそうですね。
ハードには詳しく無くて大変そうですが検討してみます。
Windowsなら画面のプロパティで ハードウェアアクセラレータ最小にしてみたら?
public interface InterIn { void useIn(); } class UseIn implements InterIn { public void useIn() { // TODO 自動生成したメソッド・スタブ System.out.println("実装コード"); } } class ReUseIn { private InterIn objIn; public ReUseIn(){ objIn = new UseIn(); } public ReUseIn(InterIn objIn) { // TODO 自動生成したコンストラクター・スタブ this.objIn = objIn; } void reUse() { //此処に複雑なコード objIn.useIn(); } }
public class InterfaceTest { public static void main(String[] args) { new ReUseIn().reUse(); } } もっと勉強せな、駄目だな。 コードは読み慣れてるけど全然書く訓練して無かった。
外部ファイルを参照して処理するたびにカウントアップしたいのですが、 ソースは部分的なので必要な情報が足りないかも知れないのですが、 ーーー String dat = new String("file.txt"); String numdat = ReadData(dat); System.out.println("data:num="+numdat) ; System.out.println("!!!A!!!"); int pnum = Integer.parseInt(numdat); System.out.println("!!!B!!!!"); pnum++; ーーー こんな感じに実行してみたいのですが、どうやら int pnum = Integer.parseInt(numdat); ここに問題があるようです。 一度この行を int pnum = Integer.parseInt(ReadData(dat)); としたところ、うまく動いたのですが、出来なくなってしまいました。 コンパイルは出来ていて、ReadData()はファイルパスをStringで受け取って、内容(1行のファイル)をStringで返すメソッドです。 実行するとA間で標示されるので、メソッドに問題はないと思うのですが・・・。 どなたかアドバイスをして頂けませんか?
>としたところ、うまく動いたのですが、出来なくなってしまいました。 まずは日本語を勉強したらどう? ReadData(dat)の戻り値を確認したのか?
271 :
デフォルトの名無しさん :2005/12/01(木) 09:31:19
272 :
デフォルトの名無しさん :2005/12/01(木) 09:37:46
当方初学者なんですが、基本情報の合格レベルに達する程度までJavaを学習した場合、 SJC-Pを取得するにはまだまだ知識は不足していますか? とりあえずSJC-Aを受験するほうがいいのでしょうか? 基本情報の勉強と並行してSJCも取得したいと思いましたもので。 ご教授よろしくおねがいします。
273 :
デフォルトの名無しさん :2005/12/01(木) 11:56:51
Aというクラスの内部クラスBからAそのものにアクセスするにはどうすれば良いの?
>>273 内部クラス(非static なメンバークラス)なら、A.this.hoge でアクセスできる。
>>274 A.thisでいいんですね。
ありがとうございました。
RecordSetってcloseしないとだめですか?
最終的にドライバ側でcloseするはずだが、出来るだけ明示的にcloseしたほうが行儀がいい。
請求金額、利子、支払い回数を入力したら、 (この場合、請求金額5000、利子年間12%、12回払い) ------------------------------------------------------------- 回数 利子 今月支払った金額 残りの請求金額 総合利子 1 50.00 394.24 4605.76 50.00 2 46.06 398.19 4207.57 96.06 3 42.08 102.17 3805.40 138.13 (省略) 12 4.40 435.45 0.00 330.93 ------------------------------------------------------------- と、表示されるようなプログラムを組みたいのですが、 どのようにすれば上のように表示されるのでしょうか? while文を使うらしく、今月支払った金額は、 (残りの請求金額 * 利子)/ (1 - Math.pow(1/(1+利子),回数)) で求める事が出来るそうです。 ちなみに、請求金額、利子、支払い回数は、 請求金額が100〜1,000,000,00、利子が5〜25、支払い回数が1〜30の数値を下回るが超えると、 再入力するようにうながせとの事です。
表が見にくいですね… --------------------------------------------------------------------- 回数 利子 今月支払った金額 残りの請求金額 総合利子 1 50.00 394.24 4605.76 50.00 2 46.06 398.19 4207.27 96.06 3 42.08 102.17 3805.40 138.13 (省略) 12 4.40 435.45 0.00 330.93 ---------------------------------------------------------------------
>>272 私見だけど、SJC-P資格を受けるに当たってSJC-Aは必要ないから、
SJC-Aはいらないと思う。ベンダー資格だから試験代高いしね・・・
お金に余裕があるなら受けても良いけど。
283 :
デフォルトの名無しさん :2005/12/01(木) 17:04:50
どっかでみたんですけど、 数値を文字列に変換するのって どうでしたっけ?
APIマニュアルとかネットとかいくらでもあるだろうに
286 :
デフォルトの名無しさん :2005/12/01(木) 17:10:33
確かtoStringでできたと思うのですけど、 その使い方を教えてください。
String.valueOf() じゃねーの
String a = 123 + "";
String a = "" + 123;
String a = " ".trim() + 123;
292 :
デフォルトの名無しさん :2005/12/01(木) 17:39:25
294 :
foo :2005/12/01(木) 17:46:07
JMenuなどで作るメニューを縦に表示できないんですか?
String s = Integer.toString(123); なんてのもある。
JToolBarをドラッグアウトしてできたツールバー専用のウィンドウを破棄するにはどうしたらよいのでしょうか。
String a = new StringBuffer().append(123).toString(); 本当にいろいろあるなぁ
299 :
デフォルトの名無しさん :2005/12/01(木) 20:03:53
String.valueOf()にしますた。
300 :
デフォルトの名無しさん :2005/12/01(木) 20:49:21
>>300 やりたいことの意図が見えないです。
田の区画の画像を切り出して、
色を平坦化する縮小でもして、
1ピクセルにしてから読み込むとかか?(´・ω・`)
302 :
デフォルトの名無しさん :2005/12/01(木) 22:07:20
>>301 白白白白白白白白白
白0000000白
白0赤0青0緑0白
白0000000白
白0黄0赤0緑0白
白0000000白
白0青0赤0黄0白
白0000000白
白白白白白白白白白(0=黒、白は以外の各色のピクセル値は同じ)
このJPG画像の黒の中にある色のRGBを得るにはどんな処理を行えばいいのかわかりません。
303 :
デフォルトの名無しさん :2005/12/01(木) 22:21:18
>>301 平坦化して圧縮したら各色のピクセル値が1ピクセルになるんですか?
もし、そうならそれの方が簡単にできそうです。
JTabbedPane についての質問です。 このクラスでタブ区切りのウィンドウを作ったとして、 タブの部分を右クリックできるようにはできるのでしょうか? つまりですね、 _____ _| ab |_____ | | のabってなっているところを右クリックして、名前を「ab」→「cd」に変更するような プログラムを作りたいんですが、どうやればいいか教えてください。
初心者です。質問があるので教えてください。 class CoinBank { private String owner; private int balance; CoinBank(String owner, int balance) { this.owner = owner; if (balance >= 0) { this.balance = balance; } } void setOwner(String owner) { this.owner = owner; } String getOwner() { return this.owner; } int getBalance() { return this.balance; } void save(int amount) { this.balance += amount; } } class Test{ public static void main(String args []) { CoinBank coinbank1 = new CoinBank("タカシ", 1000); CoinBank coinbank2 = new CoinBank("ユミコ", 5000); System.out.println(coinbank1.getOwner() + "の貯金箱には、" + coinbank1.getBalance() +"円入っています"); System.out.println(coinbank2.getOwner() + "の貯金箱には、" + coinbank2.getBalance() +"円入っています"); System.out.println(coinbank1.getOwner() + "が500円貯金します" ); coinbank1.save(500); System.out.println(coinbank1.getOwner() + "の貯金箱の中身は、" + coinbank1.getBalance() +"円になりました"); } } CoinBankクラスのsave()で使われているamountはフィールドの宣言をしなくても使えるのですが、 それは何故なのですか?
引数とてローカル変数として宣言してるにすぎないよ。 { int amount = 500; this.balance += amount; } こんな感じ。
307 :
305 :2005/12/01(木) 22:48:24
>>306 レスありがとうございます。
amountはローカル変数なんですね。
色々考えたのですがなぜamountだけローカル変数で使用するのかがよく分かりませんでした。
もしよかったら教えてください。
何度もすみません。
メソッドに値を渡すため。もしかして引数もわからないとか?それだとちょっと説明に困る。 無理やり説明すると工場(saveメソッド)の入り口(()の部分)まで材料は込んだら、それを中に運び込む人(int amount)が引数。
interface Shape2D{ double getArea(); } interface Shape3D{ double getVolume(); } class Point3D{ double x,y,z; Point3D(double x,double y,double z){ this.x=x; this.y=y; this.z=z; } } abstract class Shape{ abstract void display(); }
>>308 引数はわかってるつもりなんですが・・。
う〜ん、何でamountだけローカル変数でもいいのかがどうしても分からない・・。
ちょっとプログラムを書き換えて色々試してみます。
どうもありがとうございました。
class Circle extends Shape implements Shape2D{ Point3D center,p; Circle(Point3D center,Point3D p){ this.center=center; this.p=p; } public void display(){ System.out.println("Circle"); } public double getArea(){ double dx=center.x-p.x; double dy=center.y-p.y; double d=dx*dx+dy*dy; double radius=Math.sqrt(d); return Math.PI*radius*radius; } }
class Sphere extends Shape implements Shape3D{ Point3D center; double radius; Sphere(Point3D center,double radius){ this.center=center; this.radius=radius; } public void display(){ System.out.println("Sphere"); } public double getVolume(){ return 4*Math.PI*radius*radius*radius/3; } } class sample151{ public static void main(String args[]){ Circle c=new Circle(new Point3D(0,0,0),new Point3D(1,0,0)); c.display(); System.out.println(c.getArea()); Sphere s=new Sphere(new Point3D(0,0,0),1); s.display(); System.out.println(s.getVolume()); } }
以上。↑の三つに分けて書いたコードがちんぷんかんぷんです。誰かエロイ人教えて。教授して
よくあることだが、初心者がどうしてそれを疑問に思うのか理解できないことってあるよな 俺はC言語やってたときの配列とかポインタがそうだった。何故周囲がつまずくのかまったく理解できなかった。
はあ。ポインタ難しいッスよ。わけわかめ
>>315 そうじゃなくて、、、、インターフェイスの事とかもっと詳しく・・・詳細に教えてくらはい・・・すいません。
>>312 どうして・・・Sphereなんて名前のクラスを使うんだろう。
319 :
デフォルトの名無しさん :2005/12/02(金) 00:40:27
結城先生の本によると多様性を実現する為には 継承とインターフェイスが有る。 俺の苦手なスレッドが良い例。 Threadを継承する方法とRunnableを実装する方法が有る。 振る舞い(スレッド)と実装(自分で書いたメソッド)が分離されてるから 自分の好きなメソッドを簡単(でも無いけど)スレッドに出来る。 要するに自分が考える所のインターフェイスは 或る特定のクラスにオブジェクトを渡すsetterみたいなモノって事ダス。 間違ってたら誰か訂正してね・・・ でもクラスのグループ化って答えよりは進歩して気がする。
320 :
デフォルトの名無しさん :2005/12/02(金) 00:50:52
ゲーム作る場合、土台はAWTとSwingではどっちが良いの?
BufferStrategyが使えるならなんでも。 変にライブラリとかにしようと思わないなら AWTでいいんじゃない?
322 :
317 :2005/12/02(金) 00:54:33
324 :
デフォルトの名無しさん :2005/12/02(金) 01:34:55
equals(), hashCode()を実装するには EffectiveJavaに書いてある通りのやり方にするべきだろうか? それともJakarta Commons LangのEqualsBuilder, HashCodeBuilderクラスを使って EclipseのプラグインCommonclipseまたはCommons4Eを使って 実装すべきだろうか? Commons4Eが自動生成するequals()の実装で、 先頭部分に public boolean equals(Object obj){ if(this == obj){ return true; } が無いのがどうも気に入らなく、自動生成した後でわざわざ自分でこれを 書き足している。このほうがパフォーマンス向上につながるし。 hashCode()のほうすら自動生成すると private transient int hashCode = 0;を宣言して高速化させているというのに。
>>324 equals()の処理をその程度高速化して、メリットあるのか?
一昔前のCPUオーバークロックバカと同じ匂いがするんだがキノセイか?
326 :
デフォルトの名無しさん :2005/12/02(金) 01:40:35
よく分からないんだが、BufferStrategyってさ、 Canvasとセットで使うの? だってBufferStrategyって要するにダブルバッファの 発展系の機能を提供するクラスなんだよな? グラフィック系はあまり経験無いのでよく分からん
Stringもいちおうそういう仕様だけど Stringみたいに頻繁に見比べるようなクラスなら自分で加えればいいじゃん。
328 :
デフォルトの名無しさん :2005/12/02(金) 01:41:34
それから、Java SE 5 Tigerから追加された Java Genericsだ。 Efective Javaには equals(Object)の代わりに equals(自作クラス)を実装するなといっている。 これはObject#equals(Object)のオーバーライドではなく オーバロードだ、だから絶対に実装するな、と言っている。 だが、Comparable<T>インターフェースは こんなコードに成り代わっている。 public interface Comparable<T>{ public int compareTo(T t); } compareTo(Object)と compareTo(自作クラス) どっちを実装すればいいだろう? 後者だけで問題無いんだろうか?
Frame単体じゃなかったかな フルスクリーンでやることを前提とした機能だよ ウィンドウ付きでやるならInsetsで枠を計算すること
>>326 ヒトムカシマエは、Javaヒープでダブルバッファリングしてました。
BufferStrategyはVolatileImage(VRAM)でページフリッピ
ングをサポートするので、ずっとはやいっす。
>>325 Effective Javaには
クラス内に大量のフィールドまたは
巨大なオブジェクトを抱えている場合に
先頭で==がtrueだったらtrueを返すというのは有効な手法だと
述べている。
equals()メソッドを呼び出舌先には
巨大なオブジェクトのequals()メソッドを
実行しなければならず、さらにその巨大オブジェクトの
中にあるフィールドは巨大でそれをさらにequals()して(ry
という繰り返しがあることをかんがえると
==はかなりパフォーマンスを高めると思う。
EffectiveJavaにはそう書いてあった。
332 :
デフォルトの名無しさん :2005/12/02(金) 01:45:09
>>328 使い方によるんじゃないかとおもうが
複数のクラスオブジェクトをコレクションに格納することがあって、
そのうちの一つがそのクラスなら、comareTo(Object)実装しとか
ないとランタイムエラーでそうなきがするなあ。
>>327 Stringじゃなくても
HashMapクラスはどではequals()メソッドは
正しく実行されていないとうまく動かずnullが返ってしまう。
>>331 なるほどね。クラスの構造によるわけだな。そりゃそうだ。
コードジェネレータの生成コードに手を加えるのは、メンテナンス
コストの増加に繋がるとおもいますので、まあバランスとってやる
べきでしょうな。
>>328 Comparableは該当クラス以外のクラスのインスタンスをObject引数に与えた場合は
ClassCastExceptionを投げなければならないのでcompareTo(T)だけでいい。
FlyweightがやりたいならWeakRefrence使えばええんでわ。
>>336 エー???
Hash検索で破綻しないかそれ。
そうだ、思い出した compareTo(T t)の オーバライドはこう実装すればいいんだ public int compareTo(T extends 自作スーパークラス t){ int x = this.a.compareTo(t.getA()); int y = this.b.compareTo(t.getB()); int z = this.c.compareTo(t.getC()); w = x + y + z; if(w > 0){ return 1; } else if(w == 0){ return 0; } else if(w < 0){ return -1; } } 急いで作ったから無駄が多いけどこれを基本にして
>>338 HashMap/HashSetでcompareToが使われるとでも?
TreeMap/TreeSetならわかるが。
>>340 そうだった、スマヌ。hashCode()とequals()ダケッスネ。
で、Tree系のコレクションでは問題ないのか?
>>338 ? extends T
をつかえばひっかからないと思われ
? extends T ではなく Objectだけにすればいいと思う。 TreeMapでもextends使えば問題なし というか特定の型または特定のクラスのサブクラスの型以外は put()できないので結局同じ事かと思われ。 put()自体、put(K k, V v)でKとVがパラメタなんだし
>>332 すごく無駄が多いような
まず最初のTextFieldなんか
配列またはArrayListとかでfor(), while()使って
コンパクトにまとめたくなってくる。
add()もgetText()も10組合ってもみんなループで一つにまとめられる。
あー1.5のコレクションはGenericsで格納対象オブジェクトの 型絞れるんだっけね。話の流れを理解していませんでしたスマソ。
>>332 box[1] = Integer.parseInt(t1);
box[2] = Integer.parseInt(t2);
box[3] = Integer.parseInt(t3);
box[4] = Integer.parseInt(t5); ←ここから番号が一個飛んでる野が怪しいと思う
box[5] = Integer.parseInt(t6);
box[6] = Integer.parseInt(t7);
box[7] = Integer.parseInt(t9);
box[8] = Integer.parseInt(t10);
box[9] = Integer.parseInt(t11);
てかループつかってまとめろよ。コピペばっかしているとVB厨みたいに
なっちまうぞ。
っていうかGUIエディタでマウスで貼っつけたらそうなったとでもいうのか?
private TextField box1 = new TextField(3); private TextField box2 = new TextField(3); private TextField box3 = new TextField(3); private TextField box4 = new TextField(3); private TextField box5 = new TextField(3); private TextField box6 = new TextField(3); private TextField box7 = new TextField(3); private TextField box8 = new TextField(3); private TextField box9 = new TextField(3); private TextField box10 = new TextField(3); private TextField box11 = new TextField(3); private TextField box12 = new TextField(3); private TextField box13 = new TextField(3); private TextField box14 = new TextField(3); private TextField box15 = new TextField(3); private TextField box16 = new TextField(3); …orz
ネストのWhile文で、条件を満たして脱出・出力し、 それを初期値に戻して、違う行で同じネストのwhile文を実行し、同じ出力結果を表示する事は可能なのでしょうか? while (x <= 10){ System.out.println("数値は"+x) x++; } //ここ?で何らかの方法で初期値に戻す。 }
350 :
332 :2005/12/02(金) 02:36:58
最近java始めたんで、非常に汚いのは承知しています。本当に申し訳ございません。 ひとまずあのソースを実行してみてください。俺の気持ちが少しは伝わると思います。 要は、box4 = box1+box2+box3; box8 = box5+box6+box7; box12 = box9+box10+box11; にしたいんですよね。
>332 int[] box = new int[9]; なのにbox[9] = Integer.parseInt(t11); とつかってるからArrayIndexOutOfBoundsException: が発生していると思われる。 また数字じゃなかったときに例外処理してないから java.lang.NumberFormatException:が発生している。
ウィンドウのサイズ変更のイベントを 取得したいのですが WindowStateChanged()を使用したところ ウィンドウの最小化最大化のイベントは取得できたのですが ただのサイズ変更時には取得できませんでした。
>>352 つ java.awt.event.ComponentListener
354 :
352 :2005/12/02(金) 10:04:44
>>353 おぉ上手くいきました。ありがとうございます。
パッケージに別名をつけることってできないでしょうか? パッケージ名つけると、 org.apache.*とか、org.eclipse.*な、長いパッケージ名のとき、 長ったらしいし、 importすると、たまにクラス名が衝突したりしてめんどくさい。 swtとdraw2dを使ってると、よくクラス名が衝突します。 長いパッケージ名に短いエイリアスつけられると便利なんですが、 やっぱ識別子の一意性とかの問題で無理なんでしょうか。
>355 勝手に継承するとか
358 :
デフォルトの名無しさん :2005/12/02(金) 17:00:06
Javaのことを全く知らない私から質問です!
ある開発者が作成した、Javaプログラムを
Jboss環境で動作させようとしています。
ttp://xxx.xxx.xxx.xxx/ ○○○ でアクセスしますと
login.jspというプログラムが動作します。
ID/PWを入力すると。
ログに
WARNING:Exception for /○○○/login.jsp
java.lang.ClassCastException
というエラーが出力され、うまく動作しません;;
このエラーの意味はなんでしょうか?
これだけの情報では、意味不明とは思いますが
何かよいご助言をいただければ、幸いです
クラスのキャストに失敗してるな
おれもそう思う
>>358 開発者に訊けよ。
無理なら諦めて自作した方がいいよ。
362 :
デフォルトの名無しさん :2005/12/02(金) 18:35:58
作れるよ
364 :
デフォルトの名無しさん :2005/12/02(金) 20:24:23
>>332 まあはじめたばかりなら自分の書きやすい、理解しやすいやり方で書いていいと思われ。
スマートに書くことを最初から意識すると、こんがらがる。
365 :
シシシ :2005/12/02(金) 20:50:11
こんばんわ。 質問なのですが、 ユーザにディレクトリを GUIで参照させる方法はどうすればよいのでしょうか? よくWindowsであるファイルパスを参照させるアレです。 WINAPIを用いる?? よろしくお願いいたします。
Swingについて調べてみましょう
調べたのですが、 ボタンやリストなどだけで、 その後(参照)がどうしてもわからなかったのです。
自分で作るんだよ
JFileChooser
370 :
デフォルトの名無しさん :2005/12/02(金) 22:06:12
jarファイルを作成したいのですが、サブディレクトリにあるimageという フォルダの中身もjarに入れたいと思っています。 コマンドは jar cfm Test.jar manifest.mf Test*.class image マニフェストファイルには Manifest-Version: 1.0 MainClass; Test と記述しました。 作成したjarは、もとのクラスがある場所では動作しますが、 デスクトップなどに移動させて起動すると、imageフォルダの 画像が反映されていません。 マニフェストファイルに、もっと記載すべき事があるのかなと 考えているのですが、何をどう書けばいいのか分かりません。 どなたかご教授ください。 よろしくお願いします。
371 :
デフォルトの名無しさん :2005/12/02(金) 22:44:48
373 :
デフォルトの名無しさん :2005/12/02(金) 23:01:18
>>372 すいません、よく分かりません。
どういうことでしょうか?
クラスパスの概念わかってる?
375 :
デフォルトの名無しさん :2005/12/02(金) 23:11:14
クラス設計を行う際、どのような思考法が良いのでしょうか? また、良いツールはあるのでしょうか。(最良はEclipseプラグインですが、そこまで贅沢は言いません) UMLはGUI的過ぎて、マウスとキーボードの併用になるのが思考を妨げるんです。 紙に書いても、それを保管するか、電子化するかしないといけませんし・・・。
>>355 > パッケージに別名をつけることってできないでしょうか?
> パッケージ名つけると、
> org.apache.*とか、org.eclipse.*な、長いパッケージ名のとき、
> 長ったらしいし、
> importすると、たまにクラス名が衝突したりしてめんどくさい。
長ったらしいことが一体何が問題なんだ?
パッケージ名にドメイン名を入れろ。
それによって長ったらしくしたお陰でクラス名の衝突が避けられる。
それからimportに*を使う行為は禁止しろ。
それができない、面倒くさいなら
checkstyleで*を使ってimportしているところを探せ。
EclipseのようなIDEを使え。EclipseのJavaエディタ上で
Ctrl + Shift + Oを押せ。
自動的に*をすべて展開し不要なものは自動的に削除し
必要なもののみを残し、不足しているクラスのimport文を
補ってくれる。
> swtとdraw2dを使ってると、よくクラス名が衝突します。
なお、import文によってたとえばjava.util.Dateと
java.sql.Dateクラスが衝突した場合は片方のクラスをimport文を
使わずにjava.util.Date date = java,util.Date.getInstance();
のように使え。
それからcheckstyleを効率よく使いたいなら
Eclipseで利用可能なCheckStyleプラグインを使え
377 :
デフォルトの名無しさん :2005/12/02(金) 23:39:40
>>375 デザインパターンの本を読む、
リファクタリングの本を読む、
アジャイル開発の本を読む、
テスト駆動開発の本を読む、
Rational Unified Processの本を読む、
eXtreme Programmingの本を読む、
クリスタル・クリアの本を読む、
Effective Javaを読む、
Javaの鉄則を読む、
Javaの落とし穴を読む、
Java Puzzlersを読む、
これらを実践すれば実装方法がわかってくる。
>>376 業務系やってるとめんどいよな
Dateの衝突
ソースごとにどっちがインポートしてあるか調べないといけないので
Dateだけは常にフルで書くことを推奨してる
>>378 懸命だな。しかしDateは常に8桁Stringでという規約でやっているうちのが賢い。
Calendar使って幸せになることにしてるよ java.util.Dateが必要な時は間接参照。 それでもたまにめんどいことになるけど
DateのString表記って - で区切るのが正しいの? Date#toString()とかOracleのエクスポートとかって - 区切りなんだよな / で区切る文化は日本独特だった?
>>379 DB入れるときも文字列のほうが便利だったりするんだよな
パフォーマンスとデータ量見て問題ないようだったら文字列8桁のほうが
移植性が高かったりする
つーか、ぱーっとながめてバグ発見しやすいとか修正しやすいとかはある
>>380 Calendarとかutil.Date、sql.Dateとラッピングするクラス作るのが一番楽
DBつっこむときもすべてそのクラスをわたしてsql.Date作成させたりね
加減算もVBのようなメソッド作っておくと楽
Calendar、たしかに便利なんだけれども、インスタンス取得から
各種パラメータのセットは面倒だよね
そして日付操作なんて業務系では日常茶飯事
>>381 年月日と並ぶ場合は-が一応標準
>>378 複数のクラスで分割してしまえばいいよ。
片方のクラスはjava.sql用、もう片方のクラスはjava.util.Date用
けどやっぱめんどいな。
っていうか、同時に使うことはまずないし。
>>380 のようにCalendarのほうが便利でええや。
java.util.Dateの利点がイマイチ理解できない。
DateFormatクラスを使ったときにしかお世話になったことがない。
それからjava.sql.Dateも代わりにTimestamp型使った方が
便利でええや。
>>381 ふつうにDateFormatを使ってしまえば(ry
っていうかformatしなくてもつっこめられたような
386 :
nanasi :2005/12/03(土) 01:18:04
public void mouseClicked(MouseEvent me){ } 上記のようなマウスイベントの中に他のjavaプログラムを実行させるには どうすればいいでしょうか?初心者なので教えてください。
>>383 同時に使うことなんて大量にある
結局日付制御部分はCalendarとutil.Date使うけど
DBまわりはsql.Dtaeを使うわけで
それにTimeStampとsql.Dateはまったくの別物
>>385 >それで得たDateオブジェクトをlongに変換してCalendarに
これが結構めんどい
たいしたことのないコードでもlong値取得だ、util.Date取得だ、と煩雑になる
>>386 イベント処理中は他のイベントが糞づまり状態になるので
普通は長い処理はスレッドつくって並列動作させる
DB周りでjava.sql.Dateを使う理由がわからん。java.sql.Timestampかlongにしろよ。
390 :
nanasi :2005/12/03(土) 01:25:20
>>388 public void mouseClicked(MouseEvent me){}
に
import java.awt.event.MouseListener;
import javax.swing.JApplet;
import org.eclipse.swt.browser.Browser;
import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.SWT;
import org.eclipse.swt.*;
import org.eclipse.swt.events.*;
import org.eclipse.swt.layout.*;
import org.eclipse.swt.widgets.*;
public class SlideShow {
private Shell sShell = null; // @jve:decl-index=0:visual-constraint="253,61"
private Button START = null;
private Button CLOSE = null;
private Browser browser = null;
private void createBrowser(){//Browser browser) {}
・・・}
のような実際に完成しているプログラムの場合は
具体的にどうすればよろしいですか?
あ、もちろんStringは論外な。
392 :
デフォルトの名無しさん :2005/12/03(土) 01:55:05
とあるツールを作りたいんですが 「普段はタスクバーに常駐させておき ブラウザでCtrl+任意のキーで、指定しておいたIDとパスワードを2つのテキストエリアに入力」 という機能はJavaでできますかね?
394 :
デフォルトの名無しさん :2005/12/03(土) 02:04:38
>>393 すみません、色々調べてみたんですけどそのようなやり方は載っていないので。
アプリケーションを常駐するというのが無理なんですかね?
できますよ
396 :
デフォルトの名無しさん :2005/12/03(土) 02:09:30
397 :
デフォルトの名無しさん :2005/12/03(土) 02:10:21
eclipse3.1+J2SDK1.4.2+VisualEditorでアプリケーションを作っているのですが 配布方法についての質問です。 .jar形式やJava web startによるJNLPでの配布等ではなく .EXE形式での配布は可能でしょうか。
398 :
デフォルトの名無しさん :2005/12/03(土) 02:15:06
400 :
397 :2005/12/03(土) 02:20:14
どうもありがとうございました。 GCJの翻訳にかかります…
403 :
392 :2005/12/03(土) 02:35:24
>>402 ありがとうございます。
他のプログラムに介入というのを今まで作った事がないのですが
やり方か説明の載っているHPなどあれば教えて頂けませんか?
404 :
デフォルトの名無しさん :2005/12/03(土) 02:39:08
DBのConnectionやResultSetをきちんとcloseしているか JAVAソースを解析してくれるtool知りませんか?
JNIワロス
408 :
デフォルトの名無しさん :2005/12/03(土) 04:06:57
>>405 ありがとうございます。
ODRの検索だと思われますが、対象のDetectorsは何か
ご存知ですか? 対象classが多すぎて他のチェックは、
外して検索できないでしょうか?
クラス名に規則があるならフィルタで <Match classregex=".*" > <BugCode name="ODR" /> </Match> とか?
>>397-400 VisualEditorでつくっているのがSwingアプリだとしたら、
gcjのSwingサポートはまだまだだよ。このへんは他の商用AOT
コンパイラでも同じ。
で、EXEで配布したい理由はなに?
単にユーザが違和感なく使えるからとかその程度だったら、
一般的なインストーラー形式で配布するのがいいとおもうよ。
Eclipse使ってるんだったら、NSISプラグインっての入れれば
デスクトップやスタートメニューにショートカット作るとか
その手の指示まで含めてウィザード形式で作業できる。
Javaの内部エンコーディングってUTF-16BEあたり? 全てのエンコーディングをそれに統一したら高速になる?
エンコーディングで速度を気にする奴初めて見た
うるせー禿
>>412 そういえば、エンコーディングの速度がボトルネックになるようなシステムって、
あんまり思いつかないね。
・業務アプリなら、大抵APサーバのCPUはガラガラ。
・ゲーム系なら、そもそもI/Oがそんなに発生しない。
>>411 どんなシステムで問題になるのでしょうか?
知らんが、文章の添削システムとか?
>>411 測定してみたら?
おもしろいかもよ。
基本的にそんなところでパフォーマンス改善するよりは
メインのロジックであったり、IOを見直した方が劇的に
高速になると思うけどね。
100万PVとか負荷がかかる鯖だと変換しない方がパフォーマンスは上がるんじゃね? 動的生成ならキャッシュもあんまり効かないだろうし。
>>392 Mustangを使え。
タスクトレイをJavaで作れるから
419 :
デフォルトの名無しさん :2005/12/03(土) 15:52:01
>>403 >
>>402 > ありがとうございます。
> 他のプログラムに介入というのを今まで作った事がないのですが
> やり方か説明の載っているHPなどあれば教えて頂けませんか?
「やり方か説明の載っているヒューレッド・パッカードなどあれば教えて」
ってどういう意味?
>>397 なんでexe形式にこだわるのかよくよーわからん。
このファイルはウィルスかもしれないアブナイ
ファイルですってことを見せびらかしたいだけ?
.exe形式で配布するんだったら.msiで 配布したほうがまだええねえ。 っていうかそこまでしなくても jarで十分やん
>>421 jnlpならサーバがMIMEタイプで
自動判別してGet Javaが発動して
自動でダウソして自動でインスコできるから問題なし
それにメーカー製PCならみんなJavaが標準搭載されているので
問題なし。
424 :
デフォルトの名無しさん :2005/12/03(土) 15:58:13
>>411 Javaは全くの初心者なのですが、
StringをObjectOutputStreadでシリアライズしてバイナリエディタで見たら
UTF8形式で吐かれていました。
なので、Javaの内部コードは多分UTF8ではないかと思います。
しかし、native2asciiはUTF16で吐かれるのですね、これは何故だろう。
有識者の方がいらしたら教えてください。
425 :
デフォルトの名無しさん :2005/12/03(土) 16:01:49
おまえらほんとにJavaerなのか? Date型問題はラッパクラス書けそれ使うようにすればいいんだよ
426 :
デフォルトの名無しさん :2005/12/03(土) 16:04:27
>StringをObjectOutputStreadでシリアライズ >native2ascii ものが違うので違うのは当然 Unicode Latin-1 に変換するって書いてある どうしてとういつしていないのかという意味なら、知らんよそんなもん
>>423 w2kモデルを買う事も有る訳だが。つーか企業向けのは無駄な物入れてないよ。
なぜPrivateJREがでてこない
430 :
デフォルトの名無しさん :2005/12/03(土) 16:32:09
メーカ製PCがって言うよりWindowsにJREが載っているだけなんじゃないのか? SunのJREが標準で載っているなんて聞いたこと無いし
>>422 > なので、Javaの内部コードは多分UTF8ではないかと思います。
内部コードっつーか、classファイルとかはUTF-8だよ。
VM仕様のクラスファイルのところ見れば書いてあるし。
String とかは char[] 使ってるから違うけどね。
432 :
424 :2005/12/03(土) 16:56:43
>>424 を訂正します。
Javaの内部コードはUTF-16ですね。
あとJava5ではUnicode4.0がサポートされているようです。
サロゲートペアのコードポイントはchar型では収まらないので
intで表す事ができるようです。
サロゲートペアを使用した場合Stringクラスのlenght()メソッドでは
正確な文字のカウントができない様子。その代りにcountCodePointを
使うようです。
あと、
>>411 氏が「UTF-16BEあたり?」と言っているのに少し違和感。
UTF-16はUTF-16でありBEやLEは内部コードとしては関係ない話ではないでしょうか。
JTreeを使ってファイラを作りたいと思っておりますが、 JTreeのノードの取り扱い方について、困ったこと起こってしまいました。 ノードのアイコンがあるじゃないですか。 ノードが子供を持っている場合は、フォルダっぽいアイコンになって、 ノードが子供を持たない場合は、ファイルっぽいアイコンになるやつ。 あのアイコンを自分で設定できないかなぁって思うんですよ。 んで、調べた結果、アイコンファイルをあらかじめ用意しておけば、よいと言うところまで分かったのですが、 アイコンファイルを用意してしまうと、Javaの場合せっかく、環境ごとに違うアイコンが出てくるのに、 自分でファイル用意してしまうと、それが台無しになってしまうんですよ。 なので、何がやりたいかって言うと、 ノードのアイコンを自分で、ファイルっぽいのにするか、フォルダっぽいのにするか、 これを設定したいんですが、どうやればできるでしょうか?
>>430 > メーカ製PCがって言うよりWindowsにJREが載っているだけなんじゃないのか?
> SunのJREが標準で載っているなんて聞いたこと無いし
Visual J++裁判で一時期JavaをWindowsに標準搭載しろ、
MSJVMを削除しろという命令が出たあと、結局Windowsに搭載はされなかったが
その後、PCメーカーが裁判の影響を受けて次々と
Sun製JVMをプリインストールするようになったわけだが。
有名何処のPCメーカーは皆Javaを標準搭載している。
435 :
デフォルトの名無しさん :2005/12/03(土) 17:04:19
アイコンの設定方法を知っているのならば出来るだろ・・・ その方法だと動的にきりかえれないというのであれば 話はルック&フィールの話になるのかな・・・厳しいな
436 :
デフォルトの名無しさん :2005/12/03(土) 17:05:24
>有名何処のPCメーカーは皆Javaを標準搭載している。 SunJREが載っているのか
確かに載ってるな。 サンリオの変なアプリまであるぞ。 俺は24の半おっさんなのに。
438 :
デフォルトの名無しさん :2005/12/03(土) 17:07:40
>>428 w2kモデル?
っていうかメーカー製PCにJavaが入っていなくても
web上でjnlpファイルが見つかると
サーバがMIMEタイプで必要なものを自動判別して
自動的にJavaをインストールしてくれる。
Flashだってそうだろう。
最初はインストールされていなくて、
Flashが使われているサイトにアクセスすると
MIMEタイプで拡張子swfを自動判別して
Flashプレイヤープラグインのダウンロードが始まる。
そして勝手にインストールされFlashを即座に見ることができる。
Javaでもすでにまったく同じ事ができるのでまったく問題なし。
exeやmsiなんて必要ない
>>436 のってるのはSunのだけ
まだ1.4.2が多いね
一部5.0になったかな?
>>437 24歳でおっさんか
早いな
運動不足で老け顔なにか?
441 :
デフォルトの名無しさん :2005/12/03(土) 17:54:38
>>439 タスクトレイにJavaUpdateが常駐しているから
バージョンアップを迫られたときは
アップデートしますか?というメッセージが出て
勝手にアップデートしてくれるから大丈夫。
っていうかJavaWebStart対応アプリケーションを
起動するときもバージョンが足りないときは
JVMのアップデートを促される。
つーか24なら立派なオッサンだろ 30で初老 PGってそんなもんだ
おまえは何歳? 自称オッサンか? まるでジャニーズ事務所の連中みたいな 思考でキモイ
>>442 それはお前だけだ
徹夜ばっかして頭の毛を薄くしてるからそうなるんだよ
食生活が乱れ休みをとるときに取らず 運動もしないでいれば24歳でもオッサンになってしまう
こんなんで簡単に釣られる 余裕の無いPG(´・ω・) カワイソス
自称オッサンが嫌いな女も世の中にいる
半おっさんとおっさんは違う
449 :
デフォルトの名無しさん :2005/12/03(土) 18:14:27
自称「オッサンが嫌いな女」も世の中にいる 「自称オッサン」が嫌いな女も世の中にいる どっちよ 相手が誤解するような言い方するのは開発者としてダメだな
「自称オッサン」が嫌いな「女も世」の中にいる こうに決まってる
こうゆう人が仕様書は見たくない
こうゆう人が書いた仕様書は見たくないだ 俺の書いた仕様書の方が見たく無いな orz
自分で自分のことをオッサンといって 吹聴している香具師は 自分だけでなく自分と同じ立場にいる人間をもオッサンに 格下げし、価値を下げる。 自分の価値に自信がないからといって他人を巻き添えにして いるのと同じ。 プログラマ=ドカタとかマ板では何度も叫んでる香具師が いるがああいうレスもプログラマの価値を下げている証拠。 あれだから日本のプログラマはアメリカのプログラマよりも安く雇われ 努力が報われない。
455 :
デフォルトの名無しさん :2005/12/03(土) 18:24:44
相手が誤解するような言い方をしていないかどうか第3者的な目で読み返せる能力も無いといけない
>>454 おまいのコンプレックスに直撃したからってそんな必死になられてもなw
よく高卒の奴で自分が学歴が低いからこういう会社に転職するのは 無理、とかいう奴がいる。それで人生諦めてる香具師と一緒
>>449 その話題がスレ違いで無いと善意の解釈をすると
『自称「オッ」(&)「Sunが嫌いな女」も世の中にいる』
つまり一人称が「オッ」で「Sunが嫌い」と標榜する女性が存在する。
例えば「オッはSunが大嫌いなんです」とか言い出す女性。いやだな。
>>456 おまいもコンプレックスを持っているw
自分のことをオッサンといってるんだからw
460 :
デフォルトの名無しさん :2005/12/03(土) 18:28:54
いや、おれは454の >自分だけでなく自分と同じ立場にいる人間をもオッサンに 格下げし、価値を下げる。 >自分の価値に自信がないからといって他人を巻き添えにして いるのと同じ。 の部分はよく文章化してくれたと思っているよ こういう場面って結構多いんだよな ちょっと関係ないが 「もう、おばさんですから」とか「こんなおばちゃんでもいいの?」 とか言う発言は100%やれると思っていてくれ
>自称「オッ」 そんな形容詞聞いたこと無い どう考えてもそういう風に勘違いする奴はいないので 考慮する必要なし
俺はオッサンで童貞、しかも禿だ だからといって劃すつもりも自嘲する気も無い ありのままの自分を受け入れる事こそ人生に意味を持たせることが出来る
>>463 だったら人前で言えよここではなく 特に「俺道程」の部分 俺は言えないなぁ「俺道程です」とはいえない
幾通りも解釈できる仕様書書くやつは氏ね 文系のSEの仕様書は無駄に長く冗長だ、だから氏ね
>>464 言ってるよ高・大・院各世代での知り合いは全員知ってる
職場でも飲み会で「彼女居る?」とか聞かれたら
ありのままに話すよ
>>465 でもって、「これはこういうことですか?それともこういうことですか?」と聞きにいくと
「こっちに決まっているだろう!」とちょっとキレ気味に言われる
まず、見るがわの立場になって考えることが出来ない人がいる。
つまり、教えるのが下手な人がそれにあたる。
天才肌の人もそう、自分の知っている単語並べて話すので
一つ一つ、「この単語この人わかるかな?」と考慮して喋らない
同じ質問を考慮できる人にすると
「ああ、こっちだよ わかりづらかったな」となる
日本語自体が仕様書書くのに向いてない つーことでコレから英語で仕様書書くのが義務化
日本語で書けない仕様が英語で書けるかよ
お前らマ板でやれよ。
やだよ ExcelとかWord使うとき先頭の小文字が勝手に大文字に変わるのでめんどくさい
>>471 自治団体うぜー
いまさらひけねーっつーの
スレタイも読めないクソジジィら共、こんばんは。
476 :
デフォルトの名無しさん :2005/12/03(土) 20:56:05
showMessageDialogメソッドでエラーメッセージのダイアログの出すときに、 ボタンは特に設定も無く「了解」としか出ませんが、「了解」としか書けないんでしょうか? 「OK」にしたいんですが。
>>466 彼女いるかいないかは
大抵雰囲気でわかる可能性が高い。
見た目、話し方、態度でいなそうだということならよくわかる。
一回見ただけじゃわかりにくいが
毎日そいつの様子を見ていればいるかいないか
判別できる可能性は高い。
>>468 それと、図で書くことも。
UMLを使うことも。
そしてJavaソースコード
質問です。 クライアントがフォームから送信したデータを、 サーブレットを使ってxmlに変換したいのです。 参考になるサイト、ツールなどを教えてください。 お願いします。
>>476 自分で作成してください
もしくは、継承してその文字出しているメソッドあるいはフィールド上書きすればいい
継承できてprivate でなければの話だが
481 :
デフォルトの名無しさん :2005/12/03(土) 21:05:45
jakarta POIを使用してエクセルのテンプレートを読み込み、 それに加工をして出力するプログラムを書いています。 この場合、はじめに読み込むエクセルに 画像がはりつけてあるのですが(png形式)、 これがあると出力したファイルが破損しているといわれてしまいます。 POIでは画像をはりつけたエクセルを使用することはできないのでしょうか?
>>479 java.beans.XMLEncoder
が一番楽
独自のフォーマットにしたければ、まぁそれなりに改修すれ
>>479 Velocity使え。
どうせXMLファイルを解析するんじゃないなら
XMLパーサなんか使わず
Velocity使った方が楽だろ
自分でXMLデータをprintするクラス作ったほうが早い sb.append("<?xml version=\"1.0\" encoding=""UTF-8\"" ?>"); から始まる・・・ どうせインプットは キー=値のマップだし・・
XMLEncoderはらくだが、この場合用途が違うような気がする Velocityはもっとずれてる
showMessageDialogってなんのヤツだ? オマエ自家製か? JOptionPaneのなら普通に変更できるんだが。 これでもワカランというなら、ドキュメントも読まず頭も使わない生ゴミ。
489 :
デフォルトの名無しさん :2005/12/03(土) 21:33:14
ドキュメントって何ですか?
テレビ番組
なぜ初心者に対して質問に答えてあげないような人がこのスレに来ようと思うんだろう
>>491 ==
>>489 自分の宿題を他人にやらせるような他力本願な輩や
甘えん坊や釣りは相手にされないってことだよ
いや、釣られてナンボという気持ちがなきゃ回答者ではない
>>496 ハイフン入れた表記始めてみたが・・・それが今主流なのか?
>>497 いあ、今はハイフンナシが主流では。
もとはハイフンだったとおもう。
JAX-RとかJAX-RPCとかJAX-Pとか。
>>498 あ、そうなの?
信用してくれなくてもいいけど、少なくとも2003年07月ぐらいはJAX-Bハイフン無しだったんだよ
JAX-RPCはあったかなぁ
ただJAX-Pもなかったと思う
>>499 ゴメンヨ、おいらが触ってたの、Ver0.9以前だったのです。
501 :
デフォルトの名無しさん :2005/12/04(日) 01:26:47
JSPでincludeしたJSP(動的にせよ静的にせよ)の方でも本体JSPファイルと同じrequestオブジェクトを 使うことが出来て、ユーザーからの入力パラメータとか取得できるんですよね。
includeってどっちのインクルード?
>>503 動的にせよ静的にせよ?????????
>>505 多分あの2種類の事いっているんだろ 察してやれ
>>491 有料サポートみたいに仕事で回答してる訳じゃないからな。
無料だからこそ、質問側は回答したくなるような聞き方を工夫する必要が有る。
回答されない質問をするような香具師は、現実でも無視されるような事しか逝ってない香具師。
答えないのは自由だがちゃちゃを入れる奴は痛い奴だな
>>507 おれは、答える立場の人間だけど
いまさらそんなこと言うんじゃねーよ
何がサポートだよ屁理屈の多い奴だな
5.0からお出ましのenumってインスタンスは無いの? switch文にも使えるらしいし、String取れるし、実は超効率がいいのでは?
512 :
デフォルトの名無しさん :2005/12/04(日) 02:39:46
>>511 単なるシンタックスシュガーでわ。
賢くなったのはコンパイラだけで、実行時の解釈は既存の仕組み
のうちだったり。
でもすっきりするし安全だし業務でもガンガン使って欲しいね。
514 :
デフォルトの名無しさん :2005/12/04(日) 02:57:26
enumはインスタンスフィールドがstaticフィールドよりも 先に初期化されるという罠がある。
>>514 その罠におびえるような実装なんてenumに施さないでしょ?
せいぜいEnumerationを実装する程度だと思うけど。
517 :
デフォルトの名無しさん :2005/12/04(日) 04:00:34
JGCL 幾何形状演算ライブラリを使ってみたいのですが,
どこかに纏ったチュートリアルちっくな文章はないものでしょうか?
いや,贅沢は言いません
参考に出来るコードはないものでしょうか?
Java Geometry Class Library(JGCL)
http://www.sra.co.jp/people/ryo/JGCL/index-ja.html Google様のご神託ではそれらしいものは見つけられませんでした
日本語では全く,英語でも......良く判りませんでした
MLで単発で触れらているのは少し見つかるのですが......
518 :
デフォルトの名無しさん :2005/12/04(日) 04:03:48
しょうもない質問で申し訳ないのですが、byte配列をchar配列に変換するには どのようにすればよいのでしょうか?簡単にできると思ったのですが、なかなか うまくできません。ご教授下さい。
char[] charAry = ByteBuffer.wrap(byteAry).toString().toCharArray(); これで出来ない?出来なかったらごめんのひとこと。
520 :
デフォルトの名無しさん :2005/12/04(日) 04:28:20
求めている処理とは違う結果のようです(;´Д`) byte変数の8bitを2つ合わせて1つのchar変数(16bit)とするような変換を 配列の変換で行いたいんですよね。 ビット演算とかしてみてもintになっちゃうとcharへキャストできないし・・・
うーん、通信だとByteBuffer必須だからそこらへんにヒントがあると思う。 悪いね、力になれなくて。
522 :
デフォルトの名無しさん :2005/12/04(日) 04:47:01
すいません。勘違いしてました。普通にbit演算でできてしまいました。 private static char[] byteArrayToCharArray(byte[] byteArray){ int byteArrSize = byteArray.length; int charArrSize = byteArrSize/2; if((byteArrSize%2)==1){ charArrSize++; } char[] charArray = new char[charArrSize]; int j=0; for(int i=0;i<byteArrSize;i+=2,j++){ if(i == (byteArrSize-1)){ charArray[j]=(char)byteArray[i]; }else{ charArray[j]= (char)((byteArray[i+1]<<8)+byteArray[i]); } } return charArray; }
public static void main(String[] args) throws Exception { byte[] byteAry = "あいうえお".getBytes("UTF-16BE"); CharBuffer cb = ByteBuffer.wrap(byteAry).asCharBuffer(); int length = cb.length(); char[] charAry = new char[length]; for (int i=0; i<length; i++) { charAry[i] = cb.get(i); } System.out.println(charAry); }
>>522 charArray[j]= (char)((byteArray[i+1]<<8)+byteArray[i]);
これだとbyteArray[i]が0x80-0xFFの場合うまく変換できないんじゃない?
public static char[] toCharArray(byte[] byteArray) {
char[] charArray = new char[(byteArray.length + 1) / 2];
int bpos = 0, cpos = 0;
int loop = byteArray.length - 1;
while (bpos < loop)
charArray[cpos++] = (char) ((byteArray[bpos++] & 0xFF) | (byteArray[bpos++] & 0xFF) << 8);
if (bpos < byteArray.length) charArray[cpos] = (char) (byteArray[bpos] & 0xFF);
return charArray;
}
525 :
デフォルトの名無しさん :2005/12/04(日) 07:35:35
JAVAによるサーバープログラミングを詳しく解説したページを教えていただけないでしょうか。
526 :
デフォルトの名無しさん :2005/12/04(日) 09:42:10
Object変数(任意のObject)をファイルに保存して、それを完璧に再現する お手軽な方法なんてないでしょうか? 任意の配列やVectorのような変数のすべての内容を完全に再現できるように保存し、読み込む 各クラス専用のsave,loadメソッドを作るではなく、その汎用的な方法がやりたいことです。
簡単なようでどうしても分かりません。 execメソッドで数値変換のEXEファイルに引数を渡し、戻り値を得る方法って無いでしょうか? ご教授お願い致します。
>>529 有難うございます。
今は環境が整っていませんが
結果が出次第報告致します。
531 :
デフォルトの名無しさん :2005/12/04(日) 11:37:57
>>524 すいません→& 0xFF の部分が良く分からないのですが、なぜ0xFFでand
をとるのでしょうか?
>>531 最初から自分で作っていれば理解できるんだけど
人に教えてもらうとなんで?ってなる
疑問に思うんだったら&0xFF外してごらんよ
ツリー構造の一部のノードの参照を切ると、その配下のノードも全部GCで回収されますか?
534 :
デフォルトの名無しさん :2005/12/04(日) 11:49:38
今までjavaの基本はすっ飛ばしてjsp/servletを 作ってたんですけども やっぱり大したコードが書けないので 基本からやり直す事にしました。 で今はThreadを勉強してるんですけども クライアントソフトでは主にどんな場面で使ってるんでしょうか? 抽象的な質問ですいません。
>>533 下のノードをどこも参照していなければ回収されるよ。
537 :
522 :2005/12/04(日) 11:57:40
>>532 実は最初のを考えたのが自分なんです。
とりあえず&0xFFをはずしたところ、-111と-33をくっつけるとかいう場合だけ
結果が変わりました。が、よくわかりませんorz
>>501 <jsp:param>つかわないと駄目だった気がする
F0で取るべきところを0Fで取ってしまうとかそういうことでは?
・Javaはunsignedがない ・負の値表すとき最大桁のビットが1になる ・文字を表すバイトは最大桁のビットが1になる場合があるが、別に負の値を表しているわけではない ・byteをintにキャストするときbyte最大桁のビットが1になっていると負の値だと思って、キャスト後のビットを勝手に1にしてくれちゃう だから&0xFF
541 :
522 :2005/12/04(日) 12:04:37
543 :
522 :2005/12/04(日) 12:07:08
>>540 なるほどー。こりゃ勉強になりました。
byteをintにキャストするときbyte最大桁のビットが1になっていると負の値だと思って、キャスト後のビットを勝手に1にしてくれちゃう
ということろまでは頭が回りませんでした。c⌒っ*゚ー゚)φ メモメモ...
JavaPuzzleの本よめ
Javaに限った話じゃないだろ 2の補数とか電子計算機概論がわかればすぐにわかるはずじゃ
>>545 >Javaに限った話じゃないだろ
・Javaはunsignedがない
↑これがすべてを物語っているんだよ これが鍵
符号付での論理演算できないやつがほざいてるのか でもJavaには符号なしとプロパティだけ実装してくれれば 大幅にいい言語になるな あとはいらんが
java.lang.String#String(byte[], java.lang.String)で文字列に変換してから toCharArray() でいいんじゃね?
まっとうな正解(自分よりもレベルの高そうな)書き込み
>>540 を見ると茶々入れたくなる気持ちはわかるよぉ
まー溢れてくる溢れだしてくるねぇ
わかっているって、
あんたも出来る人なんだよねーそれをみんなに誇示したくて後からいろいろ追加情報ごちゃごちゃ言うんだよね
わかっているって
すみません。 なんでStringクラスはCollectionとして実装されてないのですか?
すみません。 なんでSystemクラスはMouseActionListenerクラスとして実装されてないのですか?
もっとサプリ風に考えて
マジカル頭脳パワーのパクリ
>>548 byteArrayの長さが奇数の場合の処理を最後につけたせばOKかな?
そもそもそのバイト配列は誰が生成したんだ?
また、わけわからん勘違い・早計野郎のお出ましですか・・・ みんな自分を誇示するのに必死すぎ。わかっていないんだったらちょっと落ち着いて一呼吸入れてから書き込め
>>546 あるクラスを使えばunsigned型をJavaでも使えるよ
561 :
デフォルトの名無しさん :2005/12/04(日) 14:00:41
>>551 > すみません。
> なんでStringクラスはCollectionとして実装されてないのですか?
は?
StringクラスがCollectionインターフェースに依存する?
すみません。
なんでそんなことする必要があるんですか?
>>551 が仮にもし
「すみません。
なんでStringクラスのオブジェクトをCollectionオブジェクトの
中に入れることができないのですか?」
という質問だったとしたら。
答え方としては、「お前は頭が悪いから」
という以外に答えようがない罠
>>560 何が言いたいのかわからん
in.read()で返ってくる値がそもそもお前の言っている「あるクラス」ではないので無理な作業増やすだけ
>>561 文字列って何ですか?
順序づけされた文字の集合だよね?
では何で、集合として設計されてないの?
ってこと。
優れたオブジェクト指向言語ではStringはCollectionもしくはそのサブクラス(orサブタイプ)として実装されている。
charの配列で十分じゃ
優れてないでしょw そういう用途はCollectionじゃなくてBuildパターンでやることだよ。 実際StringBuffer, StringBuilder, StringWriterとかある。
>>565 一番素直な回答。
StringをCollectionとして複雑に実装するよりは、シンプルに実装するってのがにじみ出ている。
>>561 オブジェクト指向を判っていない。
>>562 激しく読解力のない方のようですね。
仮に・・・ ってどうやってもそんな解釈にはならない。
特定の人間をのぞいてね。
>>567 それは構築の手段であって、生成されるもの(String)の形式を縛るものではない。
つまり、このスレの住民は馬鹿だということが判りました。
ん?
>>561 が言ってることは、それはつまりStringBuilderだろ?
Collectionはプリミティブを扱わないんだから
はい、馬鹿です が、素直です 一番厄介なのは 「自分はすごく詳しい」という態度を見せつけ 粘着する人たちです
573 :
デフォルトの名無しさん :2005/12/04(日) 14:21:28
appletviewerで実行できるコードを 実行ファイルとして保存するのはどうすればよいのでしょうか? よろしくお願いします
public class MyApplet extends Applet { //下記3行追加 public static void main(String[] args) { new MyApplet().start(); } ・・・・ }
575 :
573 :2005/12/04(日) 14:29:32
>>574 レスありがとうございます
MyAppletはpublicであり、ファイルMyApplet.javaで宣言しなければなりません
と表示されました
どうすればよいのでしょう?
MyAppletは自分の作成したAppletクラスに書き換える
あんたが作ったアプレットくらすに >//下記3行追加 >public static void main(String[] args) { >new MyApplet().start(); >} もちろんMyAppletは置き換えろ
578 :
573 :2005/12/04(日) 14:38:10
みなさん、レスありがとうございます 書き換えた後、どのように実行すればよいんでしょうか?
java MyApplet もちろんMyAppletは置き換えろ ちなみに、ソース全部さらしたほうがいいよ Frameとかを表示したい場合意図しないところで、あの3行書いても意味ないので・・・
580 :
573 :2005/12/04(日) 14:51:35
ソースの一部です まだまだ大量にあるのですが・・・ import java.applet.Applet; import java.awt.*; public class Fortune extends Applet implements Runnable{ public static void main(String[] args){ new Fortune().start();} public void init(){ setLayout(new BorderLayout()); canvas = new MyCanvas(getSize().width, getSize().height - 50, 85); add("North", new MySettings(canvas)); add("Center", canvas); add("South", controls = new MyControls(canvas));} public void start(){ if(thread == null){ thread = controls.thread = new Thread(this); thread.start();}} public void run(){ if(thread != null){do{ canvas.init(); while(canvas.singlestep()) { try{Thread.sleep(25L);} catch(InterruptedException _ex) { }} controls.threadRunning(false); } while(true); } else{ return;}} MyCanvas canvas; MyControls controls; Thread thread;}
Eclipseでリファクタリングすれよそれでもエラーでて 困るなら書き込めよいいな解ったな?
>>580 Canvasのみかぁ・・・
>appletviewerで実行できるコードを
>実行ファイルとして保存するのはどうすればよいのでしょうか?
↑コレの意味って通常のアプリケーションとして起動したいって言うことだよね
だったらFrameにCanvas乗せるようにあらかじめプログラム書かないと無理
まずAppletでFrame使って表示できるようになってからだ
>>540 どっこい char は unsigned
>>564 >
>>561 > 文字列って何ですか?
> 順序づけされた文字の集合だよね?
> では何で、集合として設計されてないの?
>>551 は馬鹿質問だなw
機能的に問題なければ中身がどうなろうと
Stringクラスは外部からしか利用しないので
privateフィールドがどうなろうとメソッドがnative修飾子
つかってようと関係ないはずなのだがw
> ってこと。
> 優れたオブジェクト指向言語ではStringはCollectionもしくはそのサブクラス(orサブタイプ)として実装されている。
はてその優れたオブジェクト指向とやらがどんなものか見てみたいものだ。
まさかSmalltalkとか言わないだろうなw
>>568 >
>>565 > 一番素直な回答。
> StringをCollectionとして複雑に実装するよりは、シンプルに実装するってのがにじみ出ている。
いやシンプルとかではなくCollectionで実装する必要もないし
パフォーマンスも配列で実装した方が早いしメソッドはnativeにしたほうが
早いししかも不変クラスだし。
>
>
>>561 > オブジェクト指向を判っていない。
ワラタ
>
>
>>562 > 激しく読解力のない方のようですね。
> 仮に・・・ ってどうやってもそんな解釈にはならない。
> 特定の人間をのぞいてね。
>>562 の意図は質問者が馬鹿だと回答者もわざと馬鹿に
回答しかしませんよあなたはからかわれていますよ
ってことじゃないかとw
587 :
デフォルトの名無しさん :2005/12/04(日) 15:32:42
>>572 それを言いたいだけがために釣りをしたかったのかw
それはそれで
「ドキュメントって何ですか?」みたいな馬鹿質問を何ヶ月も前から
繰り返すおまいも粘着だわw
>>588 俺が釣ったと思われる番号言ってくださいよ
「ドキュメント」?そんな話知らないし俺は質問していない
少なくとも、あんたは数ヶ月も前から粘着していたということを自供した
2ch歴が長いのと粘着とを一緒にされるとは大変だな
あほばっかですね
僕からすると IQ192以下の人間はあふぉとしか思えない
横から質問スイマセン。 当方けっこうな初心者なので見苦しい点もあるかと思いますが、相談お願いします。 MIME形式のメールを一行づつ読み込んで、jpgファイルをデコードして書き出したいのですが、デコード→書き出しの部分がうまくいきません。(かきだしたふぁいるが読めません) 必要と思われるところを抜き出して貼り付けてみます。 fout = new PrintWriter(new BufferedOutputStream(new FileOutputStream("./"+dir+"/"+pnum+".jpg"))); if(res.equals(("--"+bound))){//バウンダリを検出した場合 mode=3; fout.close(); dateWrite("./"+dir+"/date.datn",date); System.out.println("file closed") ; }else{ if(res.equals(("--"+bound+"--"))){//マルチパート終了のバウンダリの場合 mode=0; fout.close(); System.out.println("file closed") ; dateWrite("./"+dir+"/date.dat",date); } } if(res.indexOf("--"+bound)!=0){//エンコードされた文字列 ByteArrayOutputStream dec = decodeBase64(res); fout.print(dec); }
595 :
594 :2005/12/04(日) 17:30:02
続きです。 〜〜〜 /** * 引数strをBase64デコーディングする。 */ public static ByteArrayOutputStream decodeBase64(String str) throws IOException, UnsupportedEncodingException, MessagingException { return decodeBase64(str.getBytes()); } private static ByteArrayOutputStream decodeBase64(byte[] data) throws IOException, UnsupportedEncodingException, MessagingException { InputStream in = MimeUtility.decode( new ByteArrayInputStream(data), "base64"); byte[] buf = new byte[1024]; ByteArrayOutputStream out = new ByteArrayOutputStream(); int len; while ((len = in.read(buf)) != -1) { out.write(buf, 0, len); } return out; } 〜〜 どなたかアドバイスお願いします・・。
596 :
594 :2005/12/04(日) 17:39:08
テスト用のjpegファイルをダンプしたものと、書き出したものをダンプしたものを貼ります。 あっているところも結構あるのですが、間違うと上位下位にかかわらず"3f"を書き出しているようです。 元ファイル: 0000000 ffd8 ffe0 0010 4a46 4946 0001 0200 0064 0000020 0064 0000 ffec 0011 4475 636b 7900 0100 0000040 0400 0000 6400 00ff ee00 0e41 646f 6265 0000060 0064 c000 0000 01ff db00 8400 0101 0101 0000100 0101 0101 0101 0101 0101 0101 0101 0101 * 0000140 0101 0101 0101 0102 0202 0202 0202 0202 0000160 0202 0303 0303 0303 0303 0303 0101 0101 0000200 0101 0102 0101 0202 0201 0202 0303 0303 0000220 0303 0303 0303 0303 0303 0303 0303 0303 * 0000260 0303 0303 0303 0303 0303 0303 03ff c000 0000300 1108 0004 0004 0301 1100 0211 0103 1101 0000320 ffc4 0062 0001 0000 0000 0000 0000 0000 0000340 0000 0000 0005 0101 0100 0000 0000 0000 0000360 0000 0000 0000 0005 0610 0001 0207 0100 0000400 0000 0000 0000 0000 0000 1714 1800 1646 0000420 6667 8728 9811 0001 0107 0500 0000 0000 0000440 0000 0000 0000 1615 0013 6386 9617 2741 0000460 6546 6618 ffda 000c 0301 0002 1103 1100 0000500 3f00 6fa8 4195 ca76 9595 5e01 a9b5 fb54 0000520 da8f 584b b6e4 4ee0 541e 4b7c 0de2 db33 0000540 22aa 8ca9 dcd2 eb65 64f1 779d 354c 358b 0000560 6b42 7ccd 4088 ae4e ea9d 9dbf ffd9 0000576
597 :
594 :2005/12/04(日) 17:40:29
書き出した読めないファイル: 0000000 3fd8 3f3f 0010 4a46 4946 0001 0200 0064 0000020 0064 0000 3f3f 0011 4475 636b 7900 0100 0000040 0400 0000 6400 003f 3f00 0e41 646f 6265 0000060 0064 c000 0000 013f db00 3f00 0101 0101 0000100 0101 0101 0101 0101 0101 0101 0101 0101 * 0000140 0101 0101 0101 0102 0202 0202 0202 0202 0000160 0202 0303 0303 0303 0303 0303 0101 0101 0000200 0101 0102 0101 0202 0201 0202 0303 0303 0000220 0303 0303 0303 0303 0303 0303 0303 0303 * 0000260 0303 0303 0303 0303 0303 0303 033f c000 0000300 1108 0004 0004 0301 1100 0211 0103 1101 0000320 3fc4 0062 0001 0000 0000 0000 0000 0000 0000340 0000 0000 0005 0101 0100 0000 0000 0000 0000360 0000 0000 0000 0005 0610 0001 0207 0100 0000400 0000 0000 0000 0000 0000 1714 1800 1646 0000420 6667 3f28 3f11 0001 0107 0500 0000 0000 0000440 0000 0000 0000 1615 0013 633f 3f17 2741 0000460 6546 6618 3fda 000c 0301 0002 1103 1100 0000500 3f00 6fa8 4195 ca76 9595 5e01 a9b5 3f54 0000520 da8f 584b b6e4 4ee0 541e 4b7c 0de2 db33 0000540 22aa 8ca9 dcd2 3f65 643f 773f 354c 358b 0000560 6b42 7ccd 4088 ae4e ea9d 9dbf 3fd9 0000576
fout = new PrintWriter( ↑バイナリ」ファイル出力なのに、なんでPrintWriterなのか >"3f"を書き出しているようです あー陥りがちな話だね
String str = new String("a"); byte[] array_byte = str.getBytes(); Ssytem.out.println(array_byte[0]); ってやると96とか整数値が出るんですが 1010みたいな2進数にするにはどうしたらいいでしょうか?
Integerを使う
601 :
デフォルトの名無しさん :2005/12/04(日) 18:51:26
>>599 16進数はあったけど
2進数は自力でやるしかないんじゃないかな
シフト演算と&演算組み合わせると速い
C言語の入門ページに行きゃーなんか載っているのでは?
へー1.5だといろんなメソッド追加されているんだなぁ勉強になったよ
>>601 文章読解能力の無いPG君(無駄な質問の多いPG)はもう一度よく読んでください
また、早計して聞きに行くとSEの人に怒られるよ
>>594 3fはAsciiで"?"を意味します。
Javaでは不明な文字は?と出力されます。
>>594 fout.close()もdateWrite()もprintln()も
if文の外、終わってから書いたほうがコードがすっきりするぞ。
どうせおなじことしかやってないんだから。
無駄を省け。
そのままではコードがスパゲティになる前触れだぞ。
それからclose()はtry-catch文で使うときはfinally文で使え。
その中でさらにtry-catch文を書くことにはなるが
if(fout != null){
fout.close();
}
をfinallyブロックの中のtryブロックの中に書き足しておけ。
>>599 >>602 つ Integer#getBynaryString(int)
つ Integer#toString(int,int)
>>607 問題の論点はソコではない
お前は何も答えていない
ただ、自分の知識を押し付けているだけ
>>599 つApache Jakarta Commons Lang
>>598 で解決だろう…
テキストストリームとバイナリストリームの違いもわからないアフォは基礎から
勉強しなおしデスヨ、あんた。
何でもかんでもCommonsかよおめでてぇな Integerで出来るのに何糞ライブラリ押し付けてんだか
>>594 みたいなソースコードは汚いから
回答する気力が失せる。
何も苦情を言わなかったら
彼みたいな人間はエスカレートして
ますます汚いコードで質問をしてくるだろう。
だからここで
>>607 のように牽制しておかなければ。
>>609 一生懸命探してしまったよ
getでなくてtoだな
>つ Integer#getBynaryString(int)
toBinaryString
>>613 Commonsには便利なものがあるぞい。
2進数を表現するクラスとか。
Commonsが糞とか行ってるのは
APIの共通化によってチーム間の
開発効率を高めようという概念がない輩でしょうかね。
>>616 あやふやな記憶でかくもんではないとハンセイシマスorz
>>615 今関係ないと思うし、回答する気がうせる割に関係ないことレクチャーしとる余裕あるし・・・・
>それからclose()はtry-catch文で使うときはfinally文で使え。
>その中でさらにtry-catch文を書くことにはなるが
へーそうなんだ。じゃあ君の理論でデータベースのコネクションとって来るところからResultsetで結果取得してコネクション閉じるところまで
君の言う「綺麗な書き方」で書いて皆
どーせまともなものはでてこないと思うから
toString(int,int)のほうを覚えとくと便利だよ。 parseInt(String,int), valueOf(String,int)で同じ感覚で逆変換できる。
>>606 >>608 >問題の論点はソコではない
でも3fが"?"であり、Javaではエンコーディング不能な文字を?として
出力する事を知っていれば、問題の解明に大きく役立つはずです。
それはこの問題に限らず、この人が今後遭遇するであろうトラブルの
解決にも役立つはずです。
>>618 標準のもので簡単にできるのにライブラリを薦めるバカを
プロジェクトから排除するほうが開発効率はあがる。
>>621 いつから文字列扱う話になっているのか・・・
出力したJpegが不正なJpegになっているって言う話だろ?
どこで食い違った?
どこで読み間違えたんだお前は?
おーい、コンコンコン 入ってますかぁーー?
28過ぎてPGやってる奴って駄目だな プログラムには異常に詳しいのに プレゼンさせると自己満足で 他人には何も伝わらないで終了
>>622 >
>>618 > 標準のもので簡単にできるのにライブラリを薦めるバカを
> プロジェクトから排除するほうが開発効率はあがる。
おまえにはその馬鹿とやらを排除する権限が社内で
あるのか見物だな。
標準APIを満足に使えないのにJakartaのライブラリは良く知っている 自称中級者=Java厨の典型例
>>625 貴方の考えは間違っています。
問題の原因を特定してこそ解決があるわけです。
どーせ
>>619 はHibernateの使い方を知らない馬鹿なんですよ
↓以下のようなプログラムに君の言う美しいtry-catch-finallyを付け足してみろよ ↓はあくまでも例 削っても付け足してもいいからよ Connection con = null; Statement stmt = null; ResultSet rs = null; con = ds.getConnection(); stmt = con.createStatement(); rs=stmt.executeQuery(sql); while(rs.next()){ System.out.println(rs.getString(1)); } rs.close(); stmt.close(); con.close(); 結局チキン野郎だな 隣同士で、この設計おかしいよねとかいっときながら 会議とかで言わない奴 代替案もないのにでかい口たたく奴
>>630 はJavaスレを荒らしに来たC厨ですかw
>>630 > 標準APIを満足に使えないのにJakartaのライブラリは良く知っている
> 自称中級者=Java厨の典型例
そんな奴他の言語でも腐るほどいるんだけど
C++厨は標準APIに不満を感じてSTL, BoostやMFC, Win32 API
とか使ってるのがいるわけだし。
やたらと標準APIに拘るってことは、C厨とかではなく
VB厨やC#厨の臭いがするぞw
・Writer系は文字列に関する出力を担うクラス ・OutputStreamはバイト列に関する出力を担うクラス ・基数変換はInteger ・Commonsは標準APIを覚えてから 今日のまとめ。
>>634 イヤ、そういうの勧めたがる馬鹿は実際多い
普通に綺麗に作ってあるJDBCソース見て
「なにこれ、Hibernate使えよプププ」などと どうでもいい事いう人は多い
言いたい事はわかるけど、自分の知識を誇示したい欲求に執着しているそういう態度は醜いんだよね
Java Logging APIのロギング処理のパフォーマンスが遅い
ことも知らずにLog4jを否定してJava Loging APIで
満足してボトルネックを増大させているアンチJava厨な
>>630 がいる件について
>>637 には他人のどんな意見も「自分の知識を誇示したい欲求に執着」しているように
みえるらしい。
醜態晒した後のJakarta厨の見苦しい言い訳で100レスくらい消費しそう
>>639 その発言は君を馬鹿に見せている
○○だから○○であると言えるかどうか?
まーSEにはなれないな
たとえば、数学の「命題」とかの問題苦手だろ?
>>636 > ・Commonsは標準APIを覚えてから
標準APIがどんな外部のAPIよりも
なんでもかんでも常に優れてると勘違いしてるようだが
さすがに馬鹿みたいに標準APIを覚えることに拘るのはアフォだし
効率悪いな
一種の被害妄想 てか精神障害だな つーことで精神科へどうぞ
>>642 標準Javaロガーがどれだけパフォーマンスが
悪いかを知らないからといって言い訳でもいたいのかなw
>>643 Integerも覚えられないカスが何か言ってますよ!
腹いてぇw
>>643 どうゆう解釈すればこのようになるのか
心理学に詳しい人説明キボン
>>645 >○○だから○○であると言えるかどうか?
たしかに被害妄想が強いな アンチJava厨は 性格悪そうだし短気だし 自作自演で自分の意見を何としてでも 正しいものだと思い込ませ違ってるし カワイソス
これで釣ったつもりになってるアンチJakarta厨w
えー、なぜか勝手にLog4jの話に移行して 「Log4jを否定している人たち」という風に話を持って行きたいらしい こまるんだよねー負けず嫌いの中級者(自称)は・・・ 素直じゃない 自分の知識が如何にすごいか書きたがる
Commonsもろくに使ったことが無い癖に 標準マンセーしてるのは恥ずかしいな
>>653 またまた自作自演に
最後の行で被害妄想を
ホントに精神化いきなよw
トラウマ抱えすぎだよw
標準もろくに使えない奴の恥ずかしさに比べたらCommonsなんてどうでもいいじゃん あいにくと俺はCommonsも使えるけど
へー今度は 「Commonsもろくに使ったことが無い癖」という風に勝手に考えております こいつの理論だと 「明日雨が降ります だからおねーちゃんは彼氏が出来ません」 は 真 らしい
>>653 根拠もなくCommonsとかJakartaを否定するからでしょ
>>653 今までの流れを見ると負けず嫌いはお前のほうに
見えるんだが。
キミ自作自演してまで自分を認めて貰おうとする様は餓鬼っぽくて面白いけどね
自分の言ってることの破錠も理解できずにニーチェを語る学生に通ずるもんがあるな
>>657 Commons=糞ライブラリ
っていったキミの自身にその性格が合致しているよ。
やたら自演乙を繰り返してる奴の心理には必ず「あいてもしてるに違いが無い」という思いがある。
負けてんだよ Commons推薦した奴は おそらく >なんでもかんでもCommons・・・ でぶち切れたんだろう そこで1分我慢していればおさまるのに 速攻で反論しちゃうからこういう風に後戻りできない は〜素直じゃないねー
>Commons=糞ライブラリ 言った覚えはない ダメだ・・・数レス前も見えなくなっているよこいつら
なんかさー、こいつってさー以前拡張子msiのファイルを公開して いたときなんでjarやJavaWebStart対応にしないといけなんだと 言われて逆ギレしてjarやJavaWebStartのことを否定して電波はなってた 奴にそっくりだな。
>>663 自作自演がばれていることを
隠したいからと行って必死だなアンチJakarta厨
つーか別スレ立ててやれよ禿ども いい加減ウザいんだけど
Integerも出来ない奴という恥ずかしい事実はどうやっても消えないんだから 逆切れせずにJavaDoc読めばいいのにな
(
>>666 じゃお前は糞ライブラリといったことを示すためにトリップ付けろや
`ー‐―V―――――――――――――――――――――――――――――
;:'´ ( まじでガチンコでおまえらと会議したい気分ですわ(゚ヮ゚*)
_....._{{ 〃`ー―――――V―――――――――――――――――――
, - ' ,..、、.ヾ{{フ'⌒`ヽ、 ( Jakartaってなによ
/ ,:', -‐‐` ´ '´⌒ヽ ヾ:、 _....、、、、`ー――――V―――――――――――‐
. ,' ,'´ ,ィ ,ィ ,' , `ヽ', ',-<´ , `ヽ. ______ ..._
,' .i /|. /.| { i, i, }. }_,,)) lニ二二ミヽ.、 ':, ,.: '´ ,_.....__`ヽ、 ,..-‐-、),...._
! | ! .,'-.{ ! !|; |`、.}゙!.! |. ! ヽ.l ./ ,! ,,`ヾ:、 ':, ./'´ ̄`ヾ、、ヽ,.:'´ ,:‐:、 ,.-、 ヽ.
', ', |Vァ=、゙、 `゙、!-_:ト,リ', l ! | ゙レ__,〃_/リ !.'; .} ./l_|___ノ! l `、 ', / //`''} }.'; ',
ヽ、', l:!Kノ}. f:_.)i゙i: リ ! l ル' ̄`` ´-、,ノノ l l .!,;:=、`:.`:>=、.j,} |__人(( _ノノノ |
| l!iヾ- ' , .!__:ノ ゙ ,リ l リ'´ .|' ̄ヽ __ `><ノ | {;:'ノ ノtrテ;、.Y ! ,--、 __`彡 ノ
. ',|!!、 r‐┐ ` ノ' /,イ ! __ , ⌒'/!| | !.`ー‐'´, ゙じ' ノ ! h. ._: ´ ソ).(
'i!゙、ヽ、 ゙ー' _, ィ,:',:''´ ! !、 ー' ノイ ! | | !、 !フ `フ'リ ! ル'ヽ.._ _..、(ン ノ )
゙:、ィ、jヾー::: 'iヘ ノ',リ./! .| |ー`┬、' ´ 〃 l. トヾ、.゙`ィ'' ´ヽ、/// \二|`\ー‐‐'´
,、- '´ ヽ、゙、 { `>"、 ! ! ! | `>-、 | |、 ________∧______
/\\ ', } //`ヽ| ',.!゙、 !// ゙!/ ! (ホントの現場でイワシたる
Commons否定したからといってLog4jを否定していると、 決め付けている時点で 電波決定なんすよ みんなのいる前でこんなわけわからんこと言ったら 他の部屋移されますよ全く・・・
きもいAAを平気で貼れる奴なのか 何か納得
>>664 勝ち負けに拘って目的と手段との違いがわからなくなっている
キミのほうが負けているぞ。
素直じゃないっていってるけどそれそのままキミに返してあげよう。
以前誰かにキミは素直じゃないって言われたんじゃないのかな?
だけどキミは頑固だからそれを認めたくなくて今でも
性格の悪いところを引きずって2chでちょっとなにかあると荒れるわけだ。
さーて今日の総論お願いします ↓
>>673 Commons否定してさらに「Jakarta厨」
という言葉も使っただろ。
それだからJakartaプロジェクトの一つである
Log4jやTomcatなどもまとめて否定されたと見なされたんだよ
ところでIntegerのコストってどんなもん? CollectionでガンガンIntegerを放り込んでるコードが何か気持ち悪いんだけど。
Integerのコストにそんなに不満があるならShortやByteでも使ってなさい
聞きましたか?
>>678 の飛躍ッぷりを
>それだからJakartaプロジェクトの一つである
>Log4jやTomcatなどもまとめて否定されたと見なされたんだよ
おれはただ単純に「たたきやすいLoggingを引き合いに出すために都合よくLog4jを否定したと考えた」としか思えないね^^^
8バイト単位で纏められてしまうんだからShortやByteは同じコストじゃねーの?
>>674 キモイAA張った香具師は標準APIマンセーした香具師
Commos=糞といったのもいるが。
Commonsマンセーしたのはまた別の香具師
だから別スレ立ててやれよカス共 勝手に盛り上がってスレ汚してんじゃネーよ豚
>>682 あ、キミが例の精神病院逝ったほうがいい厨ですね
VB厨ですかw
>>キモイAA張った香具師は標準APIマンセーした香具師 わるいがCommons論争に俺はかかわっていないのだよ どっちかというと、お前らの論争やらこじつけ方に文句がある キモイAAというがどこがキモイのか教えてもらおう 答えようによってはただでは置かないが・・・
誰が誰だかわからなくなってるようだから ID出るところにスレ立ててそっちでやったら?
690 :
デフォルトの名無しさん :2005/12/04(日) 19:58:28
>>681 いま三つ巴戦になっているようですなw
Commons=糞ライブラリ発言厨 vs. Jakarta否定厨(=アニヲタ) vs. commonsマンセー厨
Commons糞、Javarta厨糞は共に俺でキモイAAなど貼っていない。
だから他所でやれ禿 それともKitty構ってチャンの集まりか?
で、次にお前らが書くこと・・・ AA張った奴を叩いて 自分たちの電波的恥ずかしいレスを過去のものにすること 都合がいいよなお前ら 自分の立場が弱くなると、新たに標的を探して盛り上がる
>>687-688 もし君らの発言が真実だとしたら
どうやら三巴戦ではなく4人以上が乱戦している模様w
え?俺の振った有意義なInteger議論は無視?
>Jakarta否定厨(=アニヲタ) なんだこれは おれはTomcatのソース眺めるのがすきなんだ 訂正してもらおう
>>691 ということはCommons=糞とはいっていないが
AA張ったアニヲタが標準APIマンセー厨ってことか
君のいうことがもし本当に真実ならば。
命題ヲタも居るな
実際アニオタではないが、まあええわ とにかく参戦者の一人目だ お前らも晒せよ つーか、こういう具合になると スレのスピード下がるんだろうな お前らチキンのことだから
>命題オタ これはおれだ
Integerを知らないといのは標準がどうこう、Commonsがどうこうを語れるレベルにないのだが・・・
ということはInteger厨がアニヲタですか
>>696 の行っていることがもし本当に真実ならば
>>699 スレ立てて他所でやりなさいよ
もう質問・相談じゃなくて議論になってるでしょ
>AA張ったアニヲタが標準APIマンセー厨ってことか だから >おれはTomcatのソース眺めるのがすきなんだ って言ってんだろ ぶっちゃけどっちでもええんだよ
>>696 じゃ、だめじゃん。
Jakarta否定しておいてそりゃいけないねw
Tomcat使用禁止w
>>699 その調子で、他の仲間を別スレに誘導してください。
一般の閲覧者にとっては至極迷惑なので。
バトル専用のスレなんて聞いたことない
古いアニメを未だに崇拝できるアニオタへの思いは尊敬と畏怖の思いが入り混じって対応に困る。
710 :
594 :2005/12/04(日) 20:12:50
遅レスでごめんなさい。
みなさん、私の初歩的な質問に答えて頂きありがとうございます。
>>598 PrintWriterはtxt出力用ってことなんですね。ありがとうございます。
>>605 >3fが"?"であり、Javaではエンコーディング不能な文字を?として 出力する
勉強になります。謎が解けた感じもしました。後に役立つ大切な知識を教えて頂いたと思っております。ありがとうございます。
>>607 確かに見にくくてアドバイスをもらう以前の問題だったかも知れません。具体的な指示もして頂きありがとうございます。
>>636 まとめをありがとうございます。しっかり調べて勉強しなおします・・・。
そのあとの話は私にはついて行けないので何とも言えません。本当にありがとうございました。
やっとヒートダウンした?Commons厨?もっと大人になって帰ってくることを願うよ 以下正しい素直な回答例 >いや、Commonsにはこういうクラスがあるんすよ >一回API見てくださいよ〜
じゃあワシも参戦するよ
interfaceって何か大人の余裕みたいなものを感じてむかつかない? やっぱ俺らはabsractだよな。
だよな。そういうと思ったよ。お前はいっつもそんなんだ。
>>717 Commons厨の最後っ屁はブラクラですか
セックスしたい
飯食ってたらこんなことになっていたとは
>>711 というか負けず嫌いのアンチJakarta厨たるおまいが大人になれ。
>飯食ってたらこんなことになっていたとは ずっと、い・た・く・せ・に
>>711 まず相手に敬語を使わせることを求めるなら
自分も敬語使えよ。標準API厨
標準APIを使う人は普通のことであり厨ではないです。 日本語覚えましょう。
>>721 そりゃおまいじゃないのかw
そんな反応を示すところにお前が顔を真っ赤に染めて
悔しそうにレスしている姿が見えてくるぞw
おれは食卓でうまいシチュー喰っていたわけだがw
>>723 一行目のいってる意味がわからないなあ。
まずお前が日本語を勉強しようやw
何この発狂スレ?
727 :
デフォルトの名無しさん :2005/12/04(日) 20:51:16
Windows XP で Eclipse を使って Tomcatプラグインで作動させたところ コンパイルもWebからの表示も問題なかったのですが、Linux (Vine) に もって来るとHTTP Status 500になってしまいます。 Linux上にソースを持って来てコンパイルするとコンパイルは通るのです が、やはり同じようになってしまいます。 原因として考えられるものはどんなものでしょうか、どなたかご教示願え ませんでしょうか。 ちなみにエラーは以下のように出ました。 type Exception report message なし description The server encountered an internal error () that prevented it from fulfilling this request. exception java.lang.NullPointerException at RequestQueryGeneral.doGet(RequestQueryGeneral.java:95) at javax.servlet.http.HttpServlet.service(HttpServlet.java:696) at javax.servlet.http.HttpServlet.service(HttpServlet.java:809) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:209) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596) 以下略
>>727 TomcatプラグインってどのTomcatプラグイン?
>>726 2chの板別住人特性を観察するのに役に立つム板の代表的なスレ
730 :
デフォルトの名無しさん :2005/12/04(日) 20:53:47
static public void main public static void main 順番はどちらでもいいのでしょうか?
ちんこかゆい
>>724 >すところにお前が顔を真っ赤に染めて
自分の く・せ・に
>>727 Linuxの設定が気になる。
Tomcatのバージョンとかもっと細かく明記
濡ルポが発生したヶ所が出てるところを探せ。
>>729 代表も何も。
このスレは学生の初心者ばっかで教えて君だけが多いスレってことだろ
Tomcatプラグイン使うこと自体に疲れてしまって使っていない俺
スレが76も進むくらいJavaの人気を表しているともいえる。
これはからSun Java Studio Enterpriseの時代だな 今後プラグインを作るならこっちのほうがいい。
>>730 どっちでもいい、が
推奨つぃては
public static
わからなければCheckStyleのSun checksを使ってみればわかる。
static pulic とやると警告を出してくれる。
Eclipseを使えばもっと楽になる。
>>738 なんでStudio Enterpriseのほうがいいの?
プラグインフレームワークは充実してるの?
Eclipseとの違いよろ。
(
>>737 ななんだってぇー
`ー‐―V―――――――――――――――――――――――――――――
;:'´ ( 2ch見ながらお召しになるなんてお行儀がわるいですわ(゚ヮ゚*)
_....._{{ 〃`ー―――――V―――――――――――――――――――
, - ' ,..、、.ヾ{{フ'⌒`ヽ、 ( 見んなよw
/ ,:', -‐‐` ´ '´⌒ヽ ヾ:、 _....、、、、`ー――――V―――――――――――‐
. ,' ,'´ ,ィ ,ィ ,' , `ヽ', ',-<´ , `ヽ. ______ ..._
,' .i /|. /.| { i, i, }. }_,,)) lニ二二ミヽ.、 ':, ,.: '´ ,_.....__`ヽ、 ,..-‐-、),...._
! | ! .,'-.{ ! !|; |`、.}゙!.! |. ! ヽ.l ./ ,! ,,`ヾ:、 ':, ./'´ ̄`ヾ、、ヽ,.:'´ ,:‐:、 ,.-、 ヽ.
', ', |Vァ=、゙、 `゙、!-_:ト,リ', l ! | ゙レ__,〃_/リ !.'; .} ./l_|___ノ! l `、 ', / //`''} }.'; ',
ヽ、', l:!Kノ}. f:_.)i゙i: リ ! l ル' ̄`` ´-、,ノノ l l .!,;:=、`:.`:>=、.j,} |__人(( _ノノノ |
| l!iヾ- ' , .!__:ノ ゙ ,リ l リ'´ .|' ̄ヽ __ `><ノ | {;:'ノ ノtrテ;、.Y ! ,--、 __`彡 ノ
. ',|!!、 r‐┐ ` ノ' /,イ ! __ , ⌒'/!| | !.`ー‐'´, ゙じ' ノ ! h. ._: ´ ソ).(
'i!゙、ヽ、 ゙ー' _, ィ,:',:''´ ! !、 ー' ノイ ! | | !、 !フ `フ'リ ! ル'ヽ.._ _..、(ン ノ )
゙:、ィ、jヾー::: 'iヘ ノ',リ./! .| |ー`┬、' ´ 〃 l. トヾ、.゙`ィ'' ´ヽ、/// \二|`\ー‐‐'´
,、- '´ ヽ、゙、 { `>"、 ! ! ! | `>-、 | |、 ________∧______
/\\ ', } //`ヽ| ',.!゙、 !// ゙!/ ! (とうとう言いやがった RedFace
>>727 Linux側の問題である可能性が強いのだが
/etx/hosts, /etc/hosts.allowや
Apache, Tomcatの設定はちゃんとやった?
設定は同じ? TomcatはVineに入ってるものを入れた?
それともJakarta からダウソして来た?
743 :
デフォルトの名無しさん :2005/12/04(日) 21:02:45
初心者です。 サブスレッドから、メインスレッドのpaintメソッドをrepaintってできるんでしょうか?
>>743 みたいな状況を詳しく説明せずに質問する奴が近頃大杉てウザ
>>743 サブスレッド生成時にてめぇを渡してあげればいいんジャマイカ
748 :
デフォルトの名無しさん :2005/12/04(日) 21:05:02
エクセルを入出力するプログラムでPOIを使用していましたが、 バグがあるのでJExcelAPIの使用を検討しています。 JExcelAPIの使用経験のある方はいますか? これは注意しとけってことがあったら教えていただけると助かります。
>>746 邪魔移管 員 乳欲
を思い出したじゃないか
員具律種漫 員 乳欲
もかこいいけど
邪魔移管のほうがリズミカルで漏れお気に入りの曲だ
>>740 軽い。GUIペタペタ、JSFもペタペタ。
Eclipseのプラグイン全廃イベントに付き合わなく良い。
これらが特徴です。
Javaいかん in New York!
>>750 NetBeansとどっちがいいか迷うではないか
NetBeansのプロジェクトと互換性があるかどうかも気になるし
NetBeansのサブセットがEnterpriseじゃないの? 互換性はあるんじゃない?知らないけどw
756 :
デフォルトの名無しさん :2005/12/04(日) 21:11:34
743の詳細 サブスレッドを使って、定期的にメインスレッドの表示内容を変えられるようなプログラムを作成中。 サブスレッドからアクセスするにはstaticがなければアクセスできない。 paintにはstaticは付けられず・・・ といった状況です。
サブセットって言葉は派生先がやたら格下に聞こえていやな響きだな
>>752 えぇぇ レゲエアーティスト知らないの?
シャインヘッド カコ(・∀・)イイ!! のに
>サブスレッドから、メインスレッドのpaintメソッドをrepaintってできるんでしょうか? やってから聞けw
アンチJakarta厨は 乱戦中はとんずらして 収まったら再び戻ってきて なんでもかんでも 自作自演して "認めて貰いたい厨"かw
>>761 全部おまえのことだろ。ホントに100レス消費したな。
763 :
デフォルトの名無しさん :2005/12/04(日) 21:16:59
>>759 メインスレッドのpaintメソッドで画像を表示
あとは、マウス処理のメソッドが
764 :
730 :2005/12/04(日) 21:17:01
>>739 こんなごたごたした中で、ご解答ありがとうございました! よくわかりましたです 多謝
765 :
デフォルトの名無しさん :2005/12/04(日) 21:18:06
あっ……………
メインスレッドのメンバクラスにするか サブスレッドの引数にメインスレッドを渡すかで出来るのでは?
767 :
デフォルトの名無しさん :2005/12/04(日) 21:22:34
>>766 わかりました。メンバクラスにしてみます。
ありがとうございました。
>>742 >/etc/hosts.allowや
へーWebサーバをinetd経由で動かしているんだ ふーん めずらしいね
また人を釣るために適当な質問をしている香具師が
お前が勝手に部屋に戻ってみたんだから セクハラじゃないだろ な?みんな
セクハラ? 彼はいったい何がいいたいんだ・・・
誤爆?
見てんだろ?行列法律
やっぱセクハラじゃ無さそうだな
>>762 またまた自作自演しちゃって。
全部おまえのことだろ。ホントに100レス消費したな。
うぜー(´д`) 自称中級者は出てってくれ
うわ、こないだのニュースで言ってたけど JREのアップデート時にGoogleツールバー入れるかどうか 聞いてきた〜〜〜〜〜〜〜〜〜〜〜〜
>>768 それに何の問題が?
っていうか珍しくもないと思う。
Fedora Coreとかみんなでふぉで
/etc/inetd/httpd start
なんてこと(ry
>>779 > うわ、こないだのニュースで言ってたけど
> JREのアップデート時にGoogleツールバー入れるかどうか 聞いてきた〜〜〜〜〜〜〜〜〜〜〜〜
???
Sun+Google の連携 知らない奴多いのかな
クラスメンバとインスタンスメンバの違いを教えてください!
>783 それは・・・ちがわないんじゃないか・・・
>>784 あ、同じなんですね。
では、オブジェクト = インスタンスなので
オブジェクト = インスタンス = クラス で合っているんでしょうか?
786 :
727です :2005/12/04(日) 21:49:54
皆様ありがとうございます。 Linux側は同じclasspas sに入っている他のサーブレットは普通に作動するので設定はいけると思っていたのですがもう一度見直して見ます。 バージョンは4.1で揃えております。 所用ができ、外出しました、携帯からレスします。すみません!
質問です。 Mathクラスの中のpow,exp,logの読み方がわかりません。 サイトで検索しても読み方まで載ってないのでここで質問させていただきました。 どなたか知ってる方はいませんか?
力、経験値、ログ
>>787 > どなたか知ってる方はいませんか?
います。
すいません 質問です 北斗晶は谷亮子じゃないですよね?
793 :
787 :2005/12/04(日) 22:47:55
794 :
783 :2005/12/04(日) 22:56:57
>>790 クラスメンバとインスタンスメンバってやっぱり違うんですか?
もし分かる方いたら教えてください。
796 :
デフォルトの名無しさん :2005/12/04(日) 23:13:46
>>203 VJていつの時代だよw
今の流行はVJ#だろ?
>>787 釣り質問が目立つなおい。
っていうか大学生だったら
数学の授業で教わるだろそれくらい
798 :
デフォルトの名無しさん :2005/12/05(月) 01:10:22
pow() 指数、 累乗 指数関数 パワー、 exp() イクスポネンシャル イクスポーネント log() 対数 対数関数 自然対数 ログ
800 :
787 :2005/12/05(月) 01:18:18
logはロガリズム
っていうかさー解析学の本嫁よ。 それと数学用語事典使えよ。 マグロウヒルの「物理・数学用語事典」みたいなのおさ。 ネットでも専門語を引くことができるサイトがあるからググってそれ使え
曖昧で情報が少ない変な質問する奴が多いから どう見ても釣りにしか見えないんだが。 Javaスレで聞くことじゃないし
804 :
デフォルトの名無しさん :2005/12/05(月) 01:33:50
ここみたいなネタスレではなく 本当にJavaに関する質問や相談と それに対する回答をやりとりしてるスレはありますか?
805 :
787 :2005/12/05(月) 01:35:01
Commonsも糞とかいってる奴は実はNetBeansスレを荒らしている香具師と同一人物 本人はCommons糞Jakarta糞といってる厨とアニヲタとは別人だと 主張しているが、NetBeansスレをみると向こうでもCommons糞とJakarta糞と いいながらアニヲタのAA張ってるからどちらも同一人物w 向こうでも Jakartaコンプレックスが強くてワラタな
Jakartaがダメといってる標準原理主義者はほとんどいないだろ? 標準も使えないくせにJakartaJakartaと馬鹿の一つ覚えみたいにいってるやつはいるけど。
809 :
デフォルトの名無しさん :2005/12/05(月) 02:25:41
白黒のjpeg画像を読み込んで、Point p = new Point();を使い、完全に白のところの座標を得るにはどうしたらいいですか?
宿題スレ池
カスレベルのやつしかいねえな ここは
がんばって改善しろ
>>809 gif か bmpに形式を変えて、RGB形式でデータを読み込み、
白のところの座標を得る。jpegのままではかなり難しい。
>>809 なんかライブラリを使って読み込み、一点ずつ白であるかどうか調べる
816 :
デフォルトの名無しさん :2005/12/05(月) 13:05:51
アプレットのhtmlの書き方ですが、 <applet code=... で指定するクラスファイルがhtmlファイルと違うフォルダにある場合 はどう書けばいいんでしょうか? 一階層上のフォルダにある場合など
トグルボタンを押す処理のときに isSelected isStateChanged actionPerformed はどのような順番で実行されるのでしょうか? また順番は保障されているのでしょうか?
818 :
デフォルトの名無しさん :2005/12/05(月) 14:15:19
質問です。int型のASCIIコードからchar型に変換する方法を教えてください。
PrintWirterのflushとcloseの違いってありますか? またflushとcloseってfinally句で必ず行うべきですか?
>>818 ACSIIのバイト配列からStringへの変換なら、
Stringクラスのコンストラクタでできる。
すまん答えになってなくて。今仕事でちょうど、書いてたところ・・・。
821 :
デフォルトの名無しさん :2005/12/05(月) 16:00:51
指定した座標のRGB値を得るにはどうしたらいいですか? int getRGB(int pixel)と本に載ってるんですが、例題が載ってなくてよく分かりません。どのようなプログラム例か教えてください。
お勧めのコネクションプーリングクラスを教えてください。 データベースはOracleです。アプリケーションサーバーに 依存しないものがよいです。よろしくお願いします。
>>819 flushはしたくない時もあるでしょう。closeはfinallyで行うべきと思う。
違いはjavadocを読めば分かる。
>>823 OracleつかってるならOracleのプール使えばいいじゃない
DBには依存するがアプリ鯖には依存しないぞ
>>825 Oracle自体にプールする機能があるのですか?
それはいいですねー。ヒントください。
OracleのJDBCのところくらい最低限見てください・・・
>>827 OracleのJDBCのところってどこにあるのでしょうか?
ぐぐってもDataSourceのしか出てこないんです。
ぐぐるまえにOracleのマニュアル読んでよ 分かりやすく書いてるじゃない
マニュアルはどこで落とせばいいでしょうか?
ぐぐれよ
発見しますた! OracleConnectionPoolDataSourceですね!
>アニヲタのAA張ってるからどちらも 短絡的だな 昨日のAAなんてセリフ違いでいっぱい落ちているだけじゃん 誰でも入手可能 2ch知らずだな しかもあれ何のアニメだって言うんだ?しらねーよあんなアニメ
まだいたのかアニヲタVB厨
あの標準厨はアニヲタであることにコンプレックスがあるようだなw
( どうしてアニメ見たらいけないの〜わかんない `ー‐―V――――――――――――――――――――――――――――― ;:'´ ( みんなでいじめるなんてひどいですわ(゚ヮ゚*) _....._{{ 〃`ー―――――V――――――――――――――――――― , - ' ,..、、.ヾ{{フ'⌒`ヽ、 ( ほんっとは心のやさしい人なのですぅ / ,:', -‐‐` ´ '´⌒ヽ ヾ:、 _....、、、、`ー――――V―――――――――――‐ . ,' ,'´ ,ィ ,ィ ,' , `ヽ', ',-<´ , `ヽ. ______ ..._ ,' .i /|. /.| { i, i, }. }_,,)) lニ二二ミヽ.、 ':, ,.: '´ ,_.....__`ヽ、 ,..-‐-、),...._ ! | ! .,'-.{ ! !|; |`、.}゙!.! |. ! ヽ.l ./ ,! ,,`ヾ:、 ':, ./'´ ̄`ヾ、、ヽ,.:'´ ,:‐:、 ,.-、 ヽ. ', ', |Vァ=、゙、 `゙、!-_:ト,リ', l ! | ゙レ__,〃_/リ !.'; .} ./l_|___ノ! l `、 ', / //`''} }.'; ', ヽ、', l:!Kノ}. f:_.)i゙i: リ ! l ル' ̄`` ´-、,ノノ l l .!,;:=、`:.`:>=、.j,} |__人(( _ノノノ | | l!iヾ- ' , .!__:ノ ゙ ,リ l リ'´ .|' ̄ヽ __ `><ノ | {;:'ノ ノtrテ;、.Y ! ,--、 __`彡 ノ . ',|!!、 r‐┐ ` ノ' /,イ ! __ , ⌒'/!| | !.`ー‐'´, ゙じ' ノ ! h. ._: ´ ソ).( 'i!゙、ヽ、 ゙ー' _, ィ,:',:''´ ! !、 ー' ノイ ! | | !、 !フ `フ'リ ! ル'ヽ.._ _..、(ン ノ ) ゙:、ィ、jヾー::: 'iヘ ノ',リ./! .| |ー`┬、' ´ 〃 l. トヾ、.゙`ィ'' ´ヽ、/// \二|`\ー‐‐'´ ,、- '´ ヽ、゙、 { `>"、 ! ! ! | `>-、 | |、 ________∧______ /\\ ', } //`ヽ| ',.!゙、 !// ゙!/ ! ( Javaは知らんけどw
標準に厨も糞もあるかっての 大恥書いたからって居直るなよカス
なんかアレ系のアニメ絵って本能的にムカつかない?
絵はむかつかないが きもいおっさんがキャラ口調真似ながらAAのズレ気にしながら書いてることを考えると泣けてきて止めたくなる。
>>843 確かに。キモヲタアニメ押しつけんなこっちに近寄るんじゃねえって感じだな。
人様をおまえみたいなエロゲばっかやってるような
キモヲタと一緒にすんなと言いたくなる。
Javaを知らないでおいてアニヲタの馬鹿げたAA張るとはいい度胸ですなVB厨は
NetBeansスレも荒らすVB厨はキモヲタであることが発覚しました
>>846 だよな。
画面の中の、人間として絶対存在不可能な形態の絵にボッキしてシコシコする奴は異常。
それだけで、既に不可触賤民ってカンジ。 ああ汚らわしい。 普通に風俗逝け。
ろくにJavaを使いこなせなかったことを暴露されて私念でスレを汚すのは勘弁してくれ
∧_∧ (・ω・ ) なんだよ〜もう終わりかい? .__/ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄)___ 〃 .// ̄ ̄ ̄/ / ̄ ̄ ̄/ / 〃⌒i | ./ / / ./ / / .i::::::::::i ____| .しU /⌒\./ / / | ____|;;;;;;;;;;;i [__]___| / /-、 .\_. / Uし'[_] | | || | / /i i / .| || | | ||____|____/ / .| .|\_ノ ______. | || | |(_____ノ /_| |__________. | || | | LLLLLL./ __)L_| |LLLLLLLLLLLLLLLL .| ||_____」 | || (_/ / i | || | || |_|| / .ノ |_|| |_|| (_/
( エッヘン あぷれっとはつくったことあるぉ `ー‐―V――――――――――――――――――――――――――――― ;:'´ ( 今度はスタンドアロンに挑戦ですわ(゚ヮ゚*) _....._{{ 〃`ー―――――V――――――――――――――――――― , - ' ,..、、.ヾ{{フ'⌒`ヽ、 ( そこで>java MyApp 打ったですぅ / ,:', -‐‐` ´ '´⌒ヽ ヾ:、 _....、、、、`ー――――V―――――――――――‐ . ,' ,'´ ,ィ ,ィ ,' , `ヽ', ',-<´ , `ヽ. ______ ..._ ,' .i /|. /.| { i, i, }. }_,,)) lニ二二ミヽ.、 ':, ,.: '´ ,_.....__`ヽ、 ,..-‐-、),...._ ! | ! .,'-.{ ! !|; |`、.}゙!.! |. ! ヽ.l ./ ,! ,,`ヾ:、 ':, ./'´ ̄`ヾ、、ヽ,.:'´ ,:‐:、 ,.-、 ヽ. ', ', |Vァ=、゙、 `゙、!-_:ト,リ', l ! | ゙レ__,〃_/リ !.'; .} ./l_|___ノ! l `、 ', / //`''} }.'; ', ヽ、', l:!Kノ}. f:_.)i゙i: リ ! l ル' ̄`` ´-、,ノノ l l .!,;:=、`:.`:>=、.j,} |__人(( _ノノノ | | l!iヾ- ' , .!__:ノ ゙ ,リ l リ'´ .|' ̄ヽ __ `><ノ | {;:'ノ ノtrテ;、.Y ! ,--、 __`彡 ノ . ',|!!、 r‐┐ ` ノ' /,イ ! __ , ⌒'/!| | !.`ー‐'´, ゙じ' ノ ! h. ._: ´ ソ).( 'i!゙、ヽ、 ゙ー' _, ィ,:',:''´ ! !、 ー' ノイ ! | | !、 !フ `フ'リ ! ル'ヽ.._ _..、(ン ノ ) ゙:、ィ、jヾー::: 'iヘ ノ',リ./! .| |ー`┬、' ´ 〃 l. トヾ、.゙`ィ'' ´ヽ、/// \二|`\ー‐‐'´ ,、- '´ ヽ、゙、 { `>"、 ! ! ! | `>-、 | |、 ________∧_____ /\\ ', } //`ヽ| ',.!゙、 !// ゙!/ ! ( 西川くんもっと詰めて
Java Servlet からのストリーミングデータをテキストデータとして 保存し続けるにはどうすればよいのですか。
( どっちがINでどっちがOUTかわかんないよ `ー‐―V――――――――――――――――――――――――――――― ;:'´ ( MIMEタイプも関係ありますよねブラウザが勝手に判断しますから(゚ヮ゚*) _....._{{ 〃`ー―――――V――――――――――――――――――― , - ' ,..、、.ヾ{{フ'⌒`ヽ、 ( そこでHTTPクライアントアプリ作るのでおじゃるか? / ,:', -‐‐` ´ '´⌒ヽ ヾ:、 _....、、、、`ー――――V―――――――――――‐ . ,' ,'´ ,ィ ,ィ ,' , `ヽ', ',-<´ , `ヽ. ______ ..._ ,' .i /|. /.| { i, i, }. }_,,)) lニ二二ミヽ.、 ':, ,.: '´ ,_.....__`ヽ、 ,..-‐-、),...._ ! | ! .,'-.{ ! !|; |`、.}゙!.! |. ! ヽ.l ./ ,! ,,`ヾ:、 ':, ./'´ ̄`ヾ、、ヽ,.:'´ ,:‐:、 ,.-、 ヽ. ', ', |Vァ=、゙、 `゙、!-_:ト,リ', l ! | ゙レ__,〃_/リ !.'; .} ./l_|___ノ! l `、 ', / //`''} }.'; ', ヽ、', l:!Kノ}. f:_.)i゙i: リ ! l ル' ̄`` ´-、,ノノ l l .!,;:=、`:.`:>=、.j,} |__人(( _ノノノ | | l!iヾ- ' , .!__:ノ ゙ ,リ l リ'´ .|' ̄ヽ __ `><ノ | {;:'ノ ノtrテ;、.Y ! ,--、 __`彡 ノ . ',|!!、 r‐┐ ` ノ' /,イ ! __ , ⌒'/!| | !.`ー‐'´, ゙じ' ノ ! h. ._: ´ ソ).( 'i!゙、ヽ、 ゙ー' _, ィ,:',:''´ ! !、 ー' ノイ ! | | !、 !フ `フ'リ ! ル'ヽ.._ _..、(ン ノ ) ゙:、ィ、jヾー::: 'iヘ ノ',リ./! .| |ー`┬、' ´ 〃 l. トヾ、.゙`ィ'' ´ヽ、/// \二|`\ー‐‐'´ ,、- '´ ヽ、゙、 { `>"、 ! ! ! | `>-、 | |、 ________∧_____ /\\ ', } //`ヽ| ',.!゙、 !// ゙!/ ! ( HTTPClient(jakarta つかいなさい
( ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ `ー‐―V――――――――――――――――――――――――――――― ;:'´ ( ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ _....._{{ 〃`ー―――――V――――――――――――――――――― , - ' ,..、、.ヾ{{フ'⌒`ヽ、 ( ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ / ,:', -‐‐` ´ '´⌒ヽ ヾ:、 _....、、、、`ー――――V―――――――――――‐ . ,' ,'´ ,ィ ,ィ ,' , `ヽ', ',-<´ , `ヽ. ______ ..._ ,' .i /|. /.| { i, i, }. }_,,)) lニ二二ミヽ.、 ':, ,.: '´ ,_.....__`ヽ、 ,..-‐-、),...._ ! | ! .,'-.{ ! !|; |`、.}゙!.! |. ! ヽ.l ./ ,! ,,`ヾ:、 ':, ./'´ ̄`ヾ、、ヽ,.:'´ ,:‐:、 ,.-、 ヽ. ', ', |Vァ=、゙、 `゙、!-_:ト,リ', l ! | ゙レ__,〃_/リ !.'; .} ./l_|___ノ! l `、 ', / //`''} }.'; ', ヽ、', l:!Kノ}. f:_.)i゙i: リ ! l ル' ̄`` ´-、,ノノ l l .!,;:=、`:.`:>=、.j,} |__人(( _ノノノ | | l!iヾ- ' , .!__:ノ ゙ ,リ l リ'´ .|' ̄ヽ __ `><ノ | {;:'ノ ノtrテ;、.Y ! ,--、 __`彡 ノ . ',|!!、 r‐┐ ` ノ' /,イ ! __ , ⌒'/!| | !.`ー‐'´, ゙じ' ノ ! h. ._: ´ ソ).( 'i!゙、ヽ、 ゙ー' _, ィ,:',:''´ ! !、 ー' ノイ ! | | !、 !フ `フ'リ ! ル'ヽ.._ _..、(ン ノ ) ゙:、ィ、jヾー::: 'iヘ ノ',リ./! .| |ー`┬、' ´ 〃 l. トヾ、.゙`ィ'' ´ヽ、/// \二|`\ー‐‐'´ ,、- '´ ヽ、゙、 { `>"、 ! ! ! | `>-、 | |、 ________∧_____ /\\ ', } //`ヽ| ',.!゙、 !// ゙!/ ! ( ・・・・・・・・・・・・・・・・・・・・・・・・・・・
856 :
デフォルトの名無しさん :2005/12/05(月) 23:22:44
Javaでキーボードからの入力ストリームにデータを流して キーボードから入力があったかように見せかけるという方法はありませんか? あるキーボードでの操作を自動でやってくれるというツールを作りたいのですが。
windows 2000 j2sdk1.4.2 です 今 2525番 で javaと全然関係ないメールサーバをたて、 25番でjavaがServerSocketで待ち、パケットをモニタして、 2525番へ転送しています。 この、あたかも25番で待っているSMTPなのですが、 これだとメールサーバでIPアドレスでの禁止処理が、 全部localhostなのでできません。 そこで、25番でメールサーバが直接待っていて、 なおかつパケットをモニタすることは実現可能でしょうか? 知恵をお貸しください。 よろしくお願いします。
アニヲタであることを馬鹿にされたからといって ムキになって自作自演してまでそんなコピペするとは哀れなオッサンよ
861 :
デフォルトの名無しさん :2005/12/06(火) 00:22:44
Commons FileUploadについてなんですが、 WindowsからLinuxサーバにアップすると「\」が区切り文字と認識されないみたいで、 ファイル名が「C:\xxx.txt」みたいになってしまいます。 これを回避するにはどうすればいいんでしょうか? FileItemFactory#createItem()を継承して、 ファイル名を変えれば良いのでしょうか?
>>859 sendmailやpostfixとかqmailとかみたいなメジャーなやつだったら
取り込んだメールを一度外部のプログラムに通す設定あるぞ。
ネットワーク系の板いってメールサーバーの名前まで具体的に
書いて質問しなおしたほうがたぶん幸せ。
>>862 resありがとうございます。
windows 2000 にて ArgoSoft Mail Server を動かしてます・・・
linuxとかでしたらtcpdumpを
Runtime.html#exec(java.lang.String[])
してInputStreamを取ればできないこともないような感じなんですが、
如何せんwindows(´・ω・`)
864 :
863 :2005/12/06(火) 02:43:42
865 :
デフォルトの名無しさん :2005/12/06(火) 05:36:00
Javaで書かれたDNSサーバーソフトってありますか?
>19が微妙に誤爆じゃなかった件について。
870 :
868 :2005/12/06(火) 19:13:40
すみません。思いっきり誤爆しちゃいました 868はスルーしておいてください。
871 :
デフォルトの名無しさん :2005/12/06(火) 19:17:40
例外について質問です。 例えば以下のようなメソッドがあったとき、コンパイル時に 「aは初期化されていない可能性があります。」 というエラーが出ます。 int mothodA { int a; try { a = 1; } catch (Exception e) { e.printStackTrace(); } return a; } 宣言はtry{}の外、初期化はtry{}の中で行っている ということで、納得はしたのですが、 解決方法が分かりません。 どうすれば良いでしょうか?
>871 int a = 0;と初期化する メンバ変数にする。 などで初期化処理をいれれば
873 :
デフォルトの名無しさん :2005/12/06(火) 20:00:02
>>872 ありがとうございます。
やってみます。
FileWriter fw = new FileWriter(new File("filename")); fw.write("hello world \n"); としたんですがファイルを開くと改行されていません。 どうしたら改行できるのでしょうか?
875 :
デフォルトの名無しさん :2005/12/06(火) 20:15:41
age
>>874 事故解決しました。
BufferredWriterを使えばいいんですね。
>>874 OS環境によって改行コードの定義は異なる。
\n単独で改行として扱われるのはUNIX系OS。
DOS-Windowsでは\r\n Mac系だと\r
デフォルトで環境にあわせて適切に改行してくれる
java.io.PrintWriterクラス等のprintlnを使うか
System.getProperty("line.separator");
で取得される改行コード文字列を使うとよい。
878 :
デフォルトの名無しさん :2005/12/06(火) 21:52:27
クライアント・サーバで動くプログラムのクライアントだけをJavaに書き換えることをしてるのですが、 Cで write(sd,buffer,strlen(buffer)); で "PAUSE\n" をサーバに送っている部分があります。 これと同じ動作をしたくて、Javaで Socket s = new Socket(server,port); String st = "PAUSE\n"; char bufferc[] = new bufferc[1024]; byte bufferb[] = new bufferb[1024]; OutputStream os = s.getOutputStream(); OutputStreamWriter osw = new OutputStreamWriter(os); osw.write(st); /*for(int i=0;i<st.length();i++){ bufferc[i] = st.charAt(i); } osw.write(bufferc); */ と OutputStream os = s.getOutputStream(); OutputStreamWriter osw = new OutputStreamWriter(os); BufferdWriter bw = new BufferdWriter(osw); bw.write(st); /*for(int i=0;i<st.length();i++){ bufferc[i] = st.charAt(i); } bw.write(bufferc); */ で実装してみて、Cと同じ内容を送ったつもりなのですが、同じレスポンスを返してくれません。 これで同じものは送れてないのでしょうか?
879 :
デフォルトの名無しさん :2005/12/06(火) 22:17:20
strutsで+++.jspから***.jspに画面遷移をする際に Schedule sche =(Schedule)form sche.setScheduleStartTimeHH("8"); sche.setScheduleStartTimeMM("30"); sche.setScheduleEndTimeHH("17"); sche.setScheduleEndTimeMM("30"); return(mapping.findForward("success")); という感じで***.jspへ遷移する際に初期値を与えるため上記のActionクラスをstruts-configで設定していたのですが… Tileを使用した---.jsp(+++.jspと***.jsp)がTopページになりました。 (---.jspは***.jspと+++.jspをextendsさせたもの) (***.jspはScheduleを新規予約するためのjsp) (+++.jspは予約したScheduleを一覧表示するjsp) <definition name="common.layout" path="/common/layout.jsp" controllerClass="Schedule.ScheduleController"> <put name="header"value="/common/header.jsp"></put> <put name="contents" value="/common/contents.jsp"></put> <put name="footer" value="/common/footer.jsp"></put> </definition> <definition name="main.view" extends="common.layout"> <put name="contents" value="common.aaa"></put> </definition> <definition name="common.aaa" path="/common/---.jsp"> <put name="***" value="/main/***.jsp"></put> <put name="+++" value="/main/+++.jsp"></put> </definition> という感じでtiles-defsで定義しました。(コントローラークラスのSchedule.ScheduleControllerは一覧表示するためのコントローラークラスです) ここで***.jspにも初期値としてScheduleStartTimeHHらに値を持たせるにはどこに、どのように記述すればいいのでしょうか? TilesActionを使うのかと思ったが・・・controllerClassは1つしか定義できないみたいだし。。どうして良いかわかりません 初期値はエラー処理などで動的に変化するため。直接jspに書くことはできません
880 :
デフォルトの名無しさん :2005/12/06(火) 23:08:27
windowの外で、とあるキーを押したら 処理を始めるという動作はどうやったらよろしいでしょうか?
881 :
880 :2005/12/06(火) 23:16:57
すみません、表現が適切ではありませんでした。 「windowの外で」ではなく、「他のアプリケーションがアクティブになっている状態で」です。
テキストファイルをMappedByteBufferで読み込んで 改行コード区切りのString配列にする良い方法があれば教えてください。 あとnioを使わず普通にBufferdReaderを使ったほうが早いという話も聞きますが テキスト処理にはMappedByteBufferは向かないのでしょうか?
>>878 ふつうの環境なら、それで "PAUSE\n" が書き込まれるはず。
osw.flush() してみるとか。
>>882 向かない
BufferdReader#rreadLineでいくのが普通
ただ、ファイルのデータを走査したりするならMappedByteBufferでもよいかもしれないが
基本はドカンと読み取ってドカンと落とす
ルンバだよルンバだよワ〜
おならじゃないのよ おならじゃないのよ 空気が入っただけぇ
>>878 ,883
Javaのcharは2byteだからうまくいかんと思うぜ
MappedByteBufferを画像系クラスに変換するにはどうすればいいの?
createImage getDataElements setDataElements
>>885 OutputStreamWriterが変換するので問題ありません。
>>861 \を/にかえるか、
File.separatorにかえるといい。
VBは view bakaの略 要するに使ってると 馬鹿を見るって事だよ。
なんだ?またJakarta厨が発狂したのか???
892 :
880 :2005/12/07(水) 00:33:00
すみません。
>>880 の者ですが
「他のwindowがアクティブな状態でも」と記述しましたが
「タスクトレイに格納しておいて」でも結構ですので
どなたか解る方いらっしゃいませんか?
>>891 VB厨ハッケンw
俺らはアパッチ野球球団♪
>>887 DataBufferとByteBufferは特に関連性は無いようです。
ByteBufferでJPGとかPNGを読み込むというのは不可能?
恥晒して三日たってもファビョり続けるってのもたいした執念だな Jakarta厨はそのこだわりを言語の勉強に費やせないのか?
>>894 ByteBufferのバイト列からフォーマットを自分で解析して自分で画素を作ったらどうですか。
どなたか>828お願いします...orz
>>895 別に三日前とか知らんし
VB厨なら何でここにいるの?w
大体部外者がここに居るからおかしいんだよ。
何かに付けて変な茶々入れるVB厨を
叩き出そうとしてるだけ。
SocketChannelでもByteBuffer使うし、何かうまい解決法があると思ったのにな。
口だけ中級者がファビョってるだけじゃん まじうぜーから他所でやれ
901 :
871 :2005/12/07(水) 00:48:20
>>871 の場合で、変数aがint型ではなく、インターフェイス型の変数の場合にはどうすればよいでしょうか?
int型のようにはいかないような気がするのですが。。。
具体的には次のようなプログラムです。
xmlファイルのルート要素を取得するメソッドです。
Element getRootElement(String f) {
DocumentBuilderFactory dbf;
DocumentBuilder db;
Document doc;
try {
dbf = DocumentBuilderFactory.newInstance();
db = dbf.newDocumentBuilder();
doc = db.parse(new File(f));
} catch (Exception e) {
e.printStackTrace();
}
return doc.getDocumentElement();
}
こいつをコンパイルすると、「dbf, db, docが初期化されていない可能性」というエラーが出ます。
ちなみに、インポートしたクラスは以下の6つです。
javax.xml.parsers.DocumentBuilder;
javax.xml.parsers.DocumentBuilderFactory;
org.w3c.dom.Document;
org.w3c.dom.Element;
org.w3c.dom.NodeList;
java.io.*;
>>880 ==892
JNIとグローバルフックとDLLでぐぐれ
903 :
871 :2005/12/07(水) 00:57:02
>>901 にミスがありました。
dbf, dbに関してはエラーは出ませんでした。
docに対してだけ「初期化されていない可能性」と出ます。
あと、f はxmlファイル名です。
失礼しました。
904 :
880 :2005/12/07(水) 01:16:44
>>902 ありがとうございます!
ちょっと難しそうですが調べながらやってみます。
調べながら思ったのですが
C++のが簡単に実装できますかね?
905 :
878 :2005/12/07(水) 01:19:07
>>883 わかりました。一度そちらでもやってみます。
ありがとうございます。
>>885 意見ありがとうございます。
906 :
デフォルトの名無しさん :2005/12/07(水) 01:37:53
createBufferStrategy(2) の部分でなぜか例外が発生します
907 :
861 :2005/12/07(水) 01:52:39
>>889 ありがとうございます。
そうしたいところなんですが、
Commons FileUploadって、
HTTPリクエストからFileItemオブジェクトを作るまでの間に、
介入できる余地が余り無いように思うんです。
FileItemオブジェクトになってしまえば、ファイル名は変えられませんし・・・
>>890 VB厨はヴィジュアル ヴァカ
つまり目に見えてわかるビジュアルな馬鹿ってことでもいいよw
>>893 いや、Apache戦闘ヘリだろw
>>891 は半島からファビョりにやってきた下級三等兵の標準厨w
>>898 VB厨はJavaを使いこなせないため、
能力ある者を嫉妬しているから
気晴らしに必死にスレを荒そうとしているヴァカなんですよw
VB厨はおとなしくゲイツ様のケツでも舐めながらC#の勉強でもしてればいいのに(ワラ
ひとりで何やってんだ?病気か?
すごい初歩的な事だとは思うんですが、 数値解析のシュミレーションをしようとしているんですが微分のプログラムの仕方がわかんないんです。 ルンゲクッタ法?みたいのを使うんでしょうか・・。
>>901 お前は馬鹿か
ほかの人が示してくれたのを参考にしようとは
思わんのか。
PGに向いてない。
>>912 google
>>901 そもそも、Exceptionが起きたときにそのメソッドは何を返すべきなの
かを考えてください。
915 :
901 :2005/12/07(水) 06:47:58
>>913 分かりました。
ありがとうございます。
>>914 ありがとうございます。
考えてみます。
916 :
デフォルトの名無しさん :2005/12/07(水) 07:53:11
質問お願いします。 SQL4.1.x+JDBC+JDK1.4.2+Tomcat5.0で動かしていますが、 以下のJSPを動かしたときに java.sql.SQLException: Before start of result set エラーが 二個目のResultSet isの行で出てしまいます。 //DBとの接続、ステートメント(変数objSql)の取得は済んでいるものとします String query = "SELECT xxx FROM table where yyy"; ResultSet rs = objSql.executeQuery(query); while (rs.next()){ //image表示用Result取得 String isQuery = "SELECT file,ext FROM table WHERE no="; isQuery += rs.getInt("no"); ResultSet is = objSql.executeQuery(isQuery); String imgStr += is.getInt("file")+is.getString("ext"); %> <center> <table border=2> <tr> <td align="center"><%=rs.getInt("no") %></td> <td align="center" width="120" height="90"><img src=<%=imgStr %> /></td> </tr> </table></center> <% is.close(); } rs.close(); objSql.close(); %> DBから検索して、さらに検索結果の番号からファイル名と拡張子を取り出して表示したいのです。 よろしくお願いします。
while文をfor文みたいに2重ループできる?
できるに決まってるじゃない
>>917 はやってみれば分かることをやってみないで質問する人
920 :
デフォルトの名無しさん :2005/12/07(水) 11:49:59
\tがTab\nが改行はわかったんですが、これ以外に¥+?で表記できるものは、どんなのがあるんでしょうか?
エスケープシーケンスでググってみな 正規表現でググるとさらに新しい世界が開けると思う。
>>908 見た目志向では有るね。
中身は糞つーか全然使えないと言うか。
923 :
920 :2005/12/07(水) 13:26:34
ありがとうございます。m(__)m
924 :
デフォルトの名無しさん :2005/12/07(水) 14:14:59
>>917 テストすること。
テストの段階ならよっぽどでない限り間違っても何も壊れないんだから。
Default Gatewayを取得したいのですが、 java.netパッケージにはそれらしいものがありません。 ifconfigやipconfigの結果を利用するしかないのでしょうか?
weblogicで動かしているWebアプリにlog4jを使っているのですが、Appenderを log4j.appender.HogeLogger=org.apache.log4j.FileAppender としているのにも関わらず、Weblogicを起動させたコンソールにもログが出力されてしまいます。 何か他に設定が必要なのでしょうか?
927 :
デフォルトの名無しさん :2005/12/07(水) 18:36:11
CLDCのみを使用したJavaアプリって作れないんでしょうか? DoJaなり、MIDPなりで実装しないとダメ? 練習したいのですが、コンパイルできないもので・・・ MIDPを実装すると使えるのですが
928 :
デフォルトの名無しさん :2005/12/07(水) 18:44:38
↑ ちなみに環境はEclipseME+J2ME Wireless Toolkit 2.2です。
>>920 JDK5のprintf()だと、改行は %n
>>929 でも実際難しいところなんだよな
内部表現は\nで固定でファイル入出力のときだけプラットフォーム依存使うから
汎用であるFormatterはなぁ
931 :
デフォルトの名無しさん :2005/12/07(水) 21:25:14
BufferStrategy の使い方が分からないのですが・・・ どこか分かりやすいサイトはないですか?
画像を交互に、10行5列に表示するにはifをどう使えばいいの?
レイアウトマネージャつかってる?
>>931 showのタイミングを自分で管理するのがBufferStrategyだよ
Timer(及びTimerTask)と併用するのがゲームで使うときの基本
936 :
931 :2005/12/07(水) 22:17:52
助言ありがとうございます
937 :
デフォルトの名無しさん :2005/12/07(水) 22:36:10
チェックボックスやテキストボックスなどの出現させる位置(座標)を指定して固定させたいのですが、 どうすればいいのでしょうか?どの教科書サイトを見てもadd(○○);しか載ってないです。 お願いします。
レイアウトマネージャ使え
>>937 SplitPaneを使うといいよ。
↓以下ぽかーんAA
940 :
サン :2005/12/07(水) 22:58:09
JAVAのフリーソフト取れる場所おしえてください〜
?
そーすhogeでググれ
フリーソフト取れる ってなんだよw
944 :
サン :2005/12/07(水) 23:39:00
なんてゆえばいいのかわからないけど、Javaのソースを入力して結果をだすための、 やつ〜。PSでゆえば本体ってことです〜
946 :
デフォルトの名無しさん :2005/12/07(水) 23:48:59
ゲーム用のフレームのサイズを this.setBounds(0, 0, this.getInsets().left + this.getInsets().right + canvasSizeX, this.getInsets().top + this.getInsets().bottom + canvasSizeY); というふうに設定しているのですが、これだと //this.strategy はフレームの BufferStrategy Graphics g = this.strategy.getDrawGraphics(); g.setColor(Color.green); g.fillRect(0, 0, canvasSizeX, canvasSizeY); this.strategy.show(); このように緑一色にしたときに何故か右の方が描画されません。 フレームサイズの設定が間違っているのでしょうか? それとも描画の範囲が間違っているのでしょうか?
947 :
デフォルトの名無しさん :2005/12/07(水) 23:53:38
1行ミスりました。 g.fillRect(this.insets().left, this.insets().top, canvasSizeX, canvasSizeY);
PCでプレステ2のエミュレータってマジで出来るの?
949 :
946-947 :2005/12/07(水) 23:57:56
追加です。 描画されないのは右側と下側の2ドット分の範囲です。
fillとdrawだと座標系の扱いがちょっと違ったような。 だからinsetsやboundsをそのまま使うと どっちかではズレないけどどっちかではズレたはず。
951 :
デフォルトの名無しさん :2005/12/08(木) 00:49:19
配列に値が20個収まったら 次の処理に移る。 という操作はできますでしょうか? よろしくお願いします。
953 :
デフォルトの名無しさん :2005/12/08(木) 01:08:05
教えてください。
955 :
デフォルトの名無しさん :2005/12/08(木) 01:13:35
>>955 1.配列に20個収める。
2.つぎの処理へ移動。
957 :
デフォルトの名無しさん :2005/12/08(木) 01:28:12
説明がまちがってました。 すいません。 例えば200個の値がある配列があるとすると、 その配列をループで分解して 20個の値を持つ配列を10個つくりたいです。
959 :
デフォルトの名無しさん :2005/12/08(木) 01:37:04
>>950 レスありがとうございます。
座標系の違いについて調べてみます。
960 :
デフォルトの名無しさん :2005/12/08(木) 01:42:39
>>958 作ってるプログラムでそうしたい
からです。教えてください。
>960 20回ループ回してそれを10回繰り返したら?
こんなの? Object[] src;//200要素の配列 Object[][] dst = new Object[10][]; for(int i = 0; i < 10 ; i++){ dst[i] = new Object[20] for(int j = 0 ; j < 20 ; j++) dst[i][j]=src[20*i+j]; }
「うんこをしたら、拭く処理に移る」 でも 「どうやったらいいのかわかりません」 みたいなカンジで酷く訳若芽。
964 :
デフォルトの名無しさん :2005/12/08(木) 02:00:16
配列の要素数が200個ある配列があるとすると、
その配列の固まりを10個に分割するような感じです。
図で表すと
|||||||||||||||||||||||||||||||||
こういう配列から
||||
||||
||||
みたいに分割する感じです。
頭が回転してなくて、
分かりやすい説明できなくてすいません。
>>962 Objectってなんですか?
釣り?
966 :
デフォルトの名無しさん :2005/12/08(木) 02:03:33
Javaは微妙に初心者ですので。
968 :
デフォルトの名無しさん :2005/12/08(木) 02:12:45
Javaがです 眠たくて頭が正常でないので はやく教えてください お願いします
わたしもです。 おやすみ。
970 :
デフォルトの名無しさん :2005/12/08(木) 02:29:02
こちらでは一回目でうまく動きました
こちらでは何回やっても「読み込みに失敗しました」 むかついたので消しました
>>964 > Objectってなんですか?
「Object」が何か知らなくても、プログラミングできる人なら「Object
を自分の目的の型に置き換えればいいんだな」ってわかるだろ。
>>970 俺は再読み込みさせると消えたw
むかついたので消しました
975 :
デフォルトの名無しさん :2005/12/08(木) 03:33:45
ieの設定なのか? アプレットの setVisible(true);// 表示を有効にする このメソッド抜いたら 毎回、非表示なのにウインドウサイズ変えたら 表示してるよ やっぱアプレットのつくりが悪いかもしれんね
976 :
デフォルトの名無しさん :2005/12/08(木) 03:35:40
ieの設定なのか? アプレットの setVisible(true);// 表示を有効にする このメソッド抜いたら 毎回、非表示なのにウインドウサイズ変えたら 表示してるよ やっぱアプレットのつくりが悪いかもしれんね
ソースどこ?
978 :
デフォルトの名無しさん :2005/12/08(木) 04:11:21
こりゃだめだ
GUIで、ボタンを押すと、テキストフィールドに入力した数をラベルに表示して、 もう1度ボタンを押すと、前の数に足してラベルに表示していく。 こういうのってどうすれば出来るのでしょうか?
982 :
デフォルトの名無しさん :2005/12/08(木) 07:16:38
>>980 自分でやるしかない
もしくはJSpinner
983 :
デフォルトの名無しさん :2005/12/08(木) 07:34:37
Javaからmysqlに値を渡すとき、 ―が?に文字化けします。 どうすればいいですか?
その文字を使わないようにする
985 :
デフォルトの名無しさん :2005/12/08(木) 12:07:23
それじゃだめです その他にありませんか?
値を渡す直前で―を何か他の表現に置き換えて 値を取り出すときにその表現から―に置き換える
987 :
デフォルトの名無しさん :2005/12/08(木) 12:24:33
それはだめって… だめ文字あるし やっぱり使用不可とするしかないでしょ どうしても使いたいなら上で示された置換
mysqlじゃなくて他のDBにすればいいじゃない
989 :
質問 :2005/12/08(木) 13:15:28
学校のパソコンはインターネットで規制が掛かって2chが見れないしホームページが途中で途切れたり全く使えないのですが、一部のパソコンは全く規制が掛かってません。 インターネットの規制を解く方法知りませんか? 規制されると右上すみに紫みたいな小さい画面の中に地球みたいな図と規制されました。と表示されます。 教えて下さい。お願いします
Java関係ねー
うめ
993 :
デフォルトの名無しさん :2005/12/08(木) 14:55:56
>>989 うちの学校もIPで規制かかってるんで
自鯖たててフォームでURL入力→サーブレットで指定ページのソース引っこ抜き→表示
で見れるようにしてる
JSPをシングルスレッドモデルにする方法教えてください。
1000?
見つかりました。 <%@ page isThreadSafe="false" %>
1000?
1000ならJavaを勉強する
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。