【初心者】Java質問・相談スレッド71【大歓迎】

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
過去ログ、関連スレッド、よくある質問とその回答、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
http://www.wikiroom.com/java/

これからJavaでプログラミングを始めたいが、何をすればいいかわからない人も、
wikiからのリンクをおたどりください。

以下のエラーが表示されて、途方にくれているあなたは、下のページへ。
「コマンドまたはファイル名が違います」
「'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
「Exception in thread "main" java.lang.NoClassDefFoundError: 」
http://www.wikiroom.com/java/?path,classpath

前スレッド
【初心者】Java質問・相談スレッド70【大歓迎】
http://pc8.2ch.net/test/read.cgi/tech/1124560010/

/* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。
質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */

また、当スレで質問をするかたは、回答をもらえたときに、
wikiの更新をして頂ければ、忝なく存じます。

JavaScriptの質問は、ここでは受け付けていません。
Web製作板をご利用ください。http://pc5.2ch.net/hp/

次スレは>>980あたりでお願いしまする。
2デフォルトの名無しさん:2005/09/06(火) 18:12:00
2 get
3デフォルトの名無しさん:2005/09/06(火) 18:13:54
超余裕の 2 ゲト
4デフォルトの名無しさん:2005/09/06(火) 18:14:43
orz
5デフォルトの名無しさん:2005/09/06(火) 18:53:08
早速の質問。

こないだPGの友人と飲んでる時に色々Javaの事話したんだけど
(自分はかじった程度で友人は2年くらいjava経験)
友達Aの会社はWeb開発時ほとんどJSPのみで作ってて
友人Bの会社はサーブレットかStrutsを使って作ってる。

ここで友人二人が論議。
AはJSPで何でも出来るからJSPだけの開発でもいいと言い張る。
BはJavaの基本はMVCだから保守面とかも考えてMVCで作るべきだと言い張る。

自分はかじった程度なので聞いてるだけだったけどその場で決着は付かず。
んで疑問に思ったんだけど・・・

1.JSPだけで開発するメリット・デメリット
2.サーブレットで開発するメリット・デメリット
3.Strutsで開発するメリット・デメリット

って色々考えたんだけど(ググってもみた)JSPだけの開発は
小規模なら開発が容易とかコンパイルの必要ないとかしか浮かばない。
デメリットはロジックとHTMLが混在しているから見難いし、保守しづらい。

位しか思い浮かばない。
そこで百戦錬磨のみんなに質問。上にあげた各3項目のメリット・デメリットって他にない?
経験してないと分らない部分があると思うからそこを聞きたいです。
よろしくお願いします。
6デフォルトの名無しさん:2005/09/06(火) 18:57:50
>>5
フレームワークは習得に多少の時間がかかる
フレームワークを使うことによりある程度の共通化が出来る
7デフォルトの名無しさん:2005/09/06(火) 19:19:41
>>6
早速のレスありがとうございます。
フレームワークはumLautを使用した事ありますが中身はサッパリなので
勉強が必要ですね。

一番興味を持っているのはJSPだけの開発とサーブレットを使った開発で
JSPで出来るならJSPでもいいと言う友人の発言です。

素人の見た目ではサーブレットの方が保守性に優れ、MVCモデルによって
どこで何をやっているかが明確になる事かなぁと思っています。

ほかにもJSPだけの開発でのデメリットってないですか?
質問してばかりですがよろしくお願いします。
8デフォルトの名無しさん:2005/09/06(火) 19:31:20
適材適所
缶詰開けるのに日本ブレイク工業呼ぶ奴は莫迦
富士山登るのにサンダル履いて来る奴も莫迦
9デフォルトの名無しさん:2005/09/06(火) 19:37:20
だが、さすがにJSPの中にロジックを書くのはなぁ・・
10デフォルトの名無しさん:2005/09/06(火) 19:59:08
PHPやASPでの開発になれている人はJSPだけで書くのに抵抗がないのかもね。
11デフォルトの名無しさん:2005/09/06(火) 20:11:11
MVC で分離するのはビジネスロジックとプレゼンテーションだろ。短絡的に
>>9 を読むと「JSP の中に条件分岐やループ処理が入るのはすべて悪」とも
見えるんだが、もしそうならやりすぎ。
12デフォルトの名無しさん:2005/09/06(火) 20:12:24
スマン、ビジネスロジックの意味
13デフォルトの名無しさん:2005/09/06(火) 20:24:02
iアプリはウインドウズでしか作れないんですか?
14デフォルトの名無しさん:2005/09/06(火) 20:45:18
No
15デフォルトの名無しさん:2005/09/06(火) 20:52:00
>>14
早速落としてきます。
16デフォルトの名無しさん:2005/09/06(火) 20:58:03
たびたびすいませんがどこで落とせるんですか?
17デフォルトの名無しさん:2005/09/06(火) 21:33:10
全スレ986です。
987さん、回答ありがとうございます。
ですが、解決することが出来ませんでした。
申し訳ないのですが、どなたかOSの環境変数を取得する方法を教えていただけないでしょうか?
18デフォルトの名無しさん:2005/09/06(火) 22:15:05
引数は二つ以上投げられるのに返り値は一つだけなのってなんでだろ?
19デフォルトの名無しさん:2005/09/06(火) 22:19:09
Javaに限ったことかよ。オブジェクトで渡せば?
20デフォルトの名無しさん:2005/09/06(火) 22:27:25
式が複雑になるからかな・・
(x, y) = moge.hoge(a, b, c);

出来たとしたらこんな感じになるのか?
21デフォルトの名無しさん:2005/09/06(火) 22:32:15
        おにぎりワッショイ!!
     \\  おにぎりワッショイ!! //
 +   + \\ おにぎりワッショイ!!/+
                            +
.   +   /■\  /■\  /■\  +
      ( ´∀`∩(´∀`∩)( ´∀`)
 +  (( (つ   ノ(つ  丿(つ  つ ))  +
       ヽ  ( ノ ( ヽノ  ) ) )
       (_)し' し(_) (_)_)  (c)avex/わた
22デフォルトの名無しさん:2005/09/06(火) 23:04:12
SQLについての質問です。

あるテーブルから、いくつかのフィールドの内容を指定してレコードを取得
します。
指定するフィールドはキーではないので、複数取得できます。
そのうち、あるフィールド(int格納してある)が最大のレコードを
取得したいのですが、どうやるのでしょうか?
一回だけ発行するという前提です。

select * from hogetable where Hoge1 = 'fa' and Hoge2 = 'afff' and
Hoge3 = 'asdf'
max(HHH) as HHH

これで取れますか?
23デフォルトの名無しさん:2005/09/06(火) 23:07:30
よくスレタイを見ろ
24デフォルトの名無しさん:2005/09/06(火) 23:35:29
SQLの質問がみあたらないんだ・・・・
頼む
25デフォルトの名無しさん:2005/09/06(火) 23:42:13
データベース板にでもいってろ
26デフォルトの名無しさん:2005/09/07(水) 00:49:57
お力をお貸しください。

javacと打つと、
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object
と表示されます。
どうしたらいいでしょうか。

.bash_profile
JAVA_HOME=/usr/java/jdk1.5.0_04
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib
export JAVA_HOME PATH CLASSPATH

環境:
colinux+debian
JDK 5.0 Update 4
2726:2005/09/07(水) 01:21:34
>>22 副問い合わせダー

誰かこたえてくれ〜。
28デフォルトの名無しさん:2005/09/07(水) 01:28:26
>>5
> 早速の質問。
>
> こないだPGの友人と飲んでる時に色々Javaの事話したんだけど
> (自分はかじった程度で友人は2年くらいjava経験)
> 友達Aの会社はWeb開発時ほとんどJSPのみで作ってて
> 友人Bの会社はサーブレットかStrutsを使って作ってる。
>
> ここで友人二人が論議。
> AはJSPで何でも出来るからJSPだけの開発でもいいと言い張る。
> BはJavaの基本はMVCだから保守面とかも考えてMVCで作るべきだと言い張る。
>
> 自分はかじった程度なので聞いてるだけだったけどその場で決着は付かず。
> んで疑問に思ったんだけど・・・
>
> 1.JSPだけで開発するメリット・デメリット
> 2.サーブレットで開発するメリット・デメリット
> 3.Strutsで開発するメリット・デメリット

1と2の組み合わせか3が一番いいに決まっているだろ(この中では)
JSPだけだとコード汚いし。
Strutsは経験がいる。何もしらないでいきなりやるとStrutsの特性を生かし切れない羽目になることも。
実際そういうプロジェクトを見た。
折角Strutsを使っているのに、凄く無駄で汚らしいことばかりしているんだ。
Strutsの利点をわかっていないバカが作ったというか。
2922:2005/09/07(水) 01:29:35
>>27
ちゃんとjavac Hoge.javaってうったの?
packageの構成を述べよ

ところでSQLどうかけば取れる22の?
30デフォルトの名無しさん:2005/09/07(水) 01:31:53
>>10
> PHPやASPでの開発になれている人はJSPだけで書くのに抵抗がないのかもね。
はっきりいって厨ウゼー
っていいたい。
WebPlog板のWebデザイナ上がりの素人ASP厨(VB厨)やPHP厨やがプログラマに跋扈して汚い
コード乱造しているところを想像すると吐き気がする。

WebPlog板のPHPスレを見てもどいつもこいつも素人ばかり。
オブジェクト指向を知らない奴が多すぎるのが致命的。
そんでもってJSPをPHPやASPと対比したがる。奴らキモ過ぎ。
31デフォルトの名無しさん:2005/09/07(水) 01:38:41
>>20 おまえPHP厨とかPerl厨とかMATLAB厨か?クラスの作り方知らんのか?
式が複雑になるからじゃなくて、そういうことする必要がないからだろが。
こうすれば済むことだ。
public class Bag {
 private int x;
 private int y;
 public Bag(int x, int y){
  this.x = x;
  this.y = y;
 }
 pulic int getX(){
  return this.x;
 }
 pulic int getY(){
  return this.y;
 }
}

public class Moge {
 private Bag bag;

 public Bag hoge(int a, int b, int c){
  //>>20が実装したいこと
 }
}

実行方法
Bag bag = moge.hoge(a, b, c);
int x = bag.getX();
int y bag.getY();
32デフォルトの名無しさん:2005/09/07(水) 01:39:28
Mogeのprivate Bag bagは別に必要ない可能性もあるな
3329:2005/09/07(水) 01:40:28
レスサンクス!
class test{
public static void main(String args[]){
System.out.println("test");
}
}

でjavac test.javaです。


select *
from table
where maxcolumn = (select
max(maxcolumn)
from table);

3429:2005/09/07(水) 01:43:57
つーか
java -version
でも
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object
がでる。。。
35デフォルトの名無しさん:2005/09/07(水) 01:44:57
>>
public
36デフォルトの名無しさん:2005/09/07(水) 01:45:15
>>26
.bash_profile設定後に環境変数が有効になっているかどうかsetなどで確認した?

profile bashrcかどっちかがログインしなおしだけで有効だが、片方は再起動しないと
有効にならないというものではなかったっけ?
source .bash_profileでやればいいけれども。

$JAVA_HOME/libにはCLASSPATH通す必要はないよ。
libディレクトリはわざわざクラスパスを通さなくてもJARをそこに置くだけで
なんでも動かせるようになっているんだから。
3729:2005/09/07(水) 01:48:23
レスサンクスコ

編集後は
source .bash_profile
やってます。
evnで確認までしました。
38デフォルトの名無しさん:2005/09/07(水) 01:49:50
>>33
classの頭にpublic をつけろ
そのときファイル名とクラス名は一致しなければならない。

>>22のクエリはmaxのところが何かおかしい。

>>33ならまだええけど。無駄な服問い合わせをしているようにしか見えない。

SQLのコンソールからクエリ直打ちテストしてみろ。

それからDBUnitというテストツールがある。
それも使ってみろ。
3929:2005/09/07(水) 01:54:06
またまたレスサンクス

$ cat test.java

public class test{
public static void main(String args[]){
System.out.println("test");
}
}

$ ls -al | grep test.java
-rw-r--r-- 1 user user 95 Sep 7 01:43 test.java

一致してるんだが。。。
なんでだろう。。。
40デフォルトの名無しさん:2005/09/07(水) 02:00:15
その$はなに?
4122:2005/09/07(水) 02:04:03
>>29
javaが正常にインストールされてないようにみえる。
関係ないけど、クラスファイル(クラス名)の頭は大文字なのがjavaの慣習

ところでさっきのSQLだけど、いっかい条件でレコードをぬいて、
その中であるカラムが最大のレコード一行抜きたいんですが、
どうすればいいの?
4229:2005/09/07(水) 02:12:11
>>41レスありがと
インストールし直してみます。

select *
from table
where maxcolumn = (select
max(maxcolumn)
from table);

これじゃだめ?

複数のカラムでどれが一番でかいかとかいうなら
greatestとかいうのがあったような。。(oracleだけか?)
43デフォルトの名無しさん:2005/09/07(水) 02:19:42
>>40
植田まさしの描く女の髪に付いてるやつ
44デフォルトの名無しさん:2005/09/07(水) 02:21:00
>>22,27
副問い合わせとか複雑なことしなくても
int格納してあるフィールドでorder byして最初の一件とればいい。
4522:2005/09/07(水) 02:23:58
>>42
どーも!

それだと、既存のレコードの中から、
あるカラムが最大値であるレコードを抜くことになります。
いっかい条件で抜いてから、それをやりたかったんです。
ヒントいただいて、かいけつしました!

select * from table where maxcolumn = (
select max(maxcolumn) from table where column1 = 'age' and column2 = 'sage')
4629:2005/09/07(水) 02:26:21
>>44
それがよいね。
47デフォルトの名無しさん:2005/09/07(水) 02:27:01
>>19
複数の値を返せる言語もあることくらいは知っておいた方がいい。

>>20
Ruby や Python では配列の多重代入をうまく使って
そういった形で複数の値を返せるかのように見せている。

>>31
残念ながらそれは「そういうことをする必要がない」からではなくて
「Javaではそういうことができない」から代用しているだけだ。
4822:2005/09/07(水) 02:30:38
度々すいません。
45を、order by で書き換えると、どうなりますか?
4929:2005/09/07(水) 02:31:31
resultsetを一回回して終了。
50デフォルトの名無しさん:2005/09/07(水) 02:32:17
$ってコメントの//みたいなもの?
51デフォルトの名無しさん:2005/09/07(水) 02:34:36
>>50
DOSの>と同じ
52デフォルトの名無しさん:2005/09/07(水) 02:37:08
JDK1.5.0と1.4.2って何か大きな差はありますか
53デフォルトの名無しさん:2005/09/07(水) 02:38:10
余計わからんくなった。
>これってディレクトリだったはず。 たぶん。。
54デフォルトの名無しさん:2005/09/07(水) 02:41:21
今いるフォルダとそこで実行するコマンドの区切りだろ。
55デフォルトの名無しさん:2005/09/07(水) 02:41:27
>>52
大きな差は、こいつは凄い!
という違いといえばGenericsだね。
C++のtemplateとも違うこれまた優れた型安全性が保証されたGenerics.
そして型安全性が保証された、C/C++/C#とは異なる, クラスとGenericsで構成されているenum(列挙)型
クラスやメソッドに付加情報を与えられるようになったアノテーション。
J2SE1.4よりもさらにパフォーマンスが向上したことかな。
他は細々としたモノはあるけど、これといって凄い!画期的というわけでもないかな。
56デフォルトの名無しさん:2005/09/07(水) 02:45:12
>>55
ありがとうございます
57デフォルトの名無しさん:2005/09/07(水) 02:48:08
>>53
> も $ も % も # もプロンプト。
コマンドラインにコマンドが入力できますよーという記号。
それぞれ少しずつ意味が違うけど、#以外は大体どれも一緒。

ログとか引用として見る場合は、行のプロンプトから後の文字列がコマンドだと思えばいい。
58デフォルトの名無しさん:2005/09/07(水) 02:57:12
>>47 Javaではできないていうのは大袈裟だぜ。やる必要がないからだろ。
今まで、C++ではできることはJavaではできないことが多くなった。
だができないからやっていないんのではなく、必要が無い、いやそれどころか
無駄だから排除したんだぜ。
だから「できない」というよりも「必要ない」といったほうが相応しい。

PHPでも戻り値を複数に指定できるようになっているが
あれははっきり言って、Javaでいえば、こういうことをやっているだけに過ぎないぜ。
int[] array;

array = moge.hoge(a, b, c);
int x = array[0];
int y = array[1];

若しくは
Map map = new HashMap();

map = moge.hoe(a, b, c);
int x = mapget.("x");
int y = map.get.("y");

本当はオブジェクトでできることを配列やハッシュで代用するなんてみっともないぜ。
戻り値が複数なんて無駄が多すぎるんだよ。
ソースコードも汚くなるしな。
大抵、戻り値が複数な言語なんてスクリプト臭い言語だぜ。
オブジェクト指向では戻り値が複数なんて邪魔なだけなんだよ。
型は決まって絞り混むんで型安全性を確保することで
PHPやPerlみたいな型にいい加減な言語にありがちなバグを最小限に減らせるってことだ。
59民主党:2005/09/07(水) 03:17:24
  ★★★ また韓国、意図的な、でっち上げ反日報道 ★★★
 韓国大手テレビ局の8月15日番組「日本軍731部隊の生体実験」が、実は真っ赤なウソ、中国映画の盗用でっち上げだった。
 韓国マスコミは反日番組で、この種の歴史歪曲(わいきょく)をよく行うが、今回の事件で 「日本攻撃ならウソも平気」 という腐った体質が改めて確認された。

 番組では実験の様子を「白黒の記録フィルム風」に紹介したが、視聴者から「映画の場面と同じ」との声が上がり、悪質なでっち上げが露呈した。
 この中国映画はカラー作品だが、テレビでは本物に見せかけて「白黒」に変えられており、意図的なでっち上げであることは明白。

 日本の 民 主 党 【岡田党首】 は、日本国内に数十万人もいる反日的な在日韓国・朝鮮人に、日本の選挙権を与え、 民 主 党 に投票させようと画策している。
 在日韓国・朝鮮人の大部分は、戦後のドサクサで勝手に密入国した不法滞在者とその子孫だが、「強制連行された」と真っ赤なウソをつき、被害者のフリをして日本国内に居座っている。
 収入あっても税金払わず、さらに毎月二十数万円の生活保護をもらい、日本人の悪口を言いながら優雅に遊び暮らしている。
6047:2005/09/07(水) 03:21:47
>>58
>あれははっきり言って、Javaでいえば、こういうことをやっているだけに過ぎないぜ。

47の発言の>>20を見ればわかるが、お前の言うようなことは全部わかっとるわ。ボケ。
そもそも何で戻り値が複数で「配列やハッシュで代用する」という思考にいたるのか。
お前がそういうもんしか知らないからだろ。
オブジェクト指向でなくても型安全性が確保される言語なんかいくらでもあるわ。
お前みたいにJavaしか知らんくせに「オブジェクト指向」とか語りだすやつは氏ねよ。
61デフォルトの名無しさん:2005/09/07(水) 03:27:35
>>45
それやると、table 一件一件に対して、
max とってくる気がする
62デフォルトの名無しさん:2005/09/07(水) 03:39:35
>>59
大丈夫だ、漏れは自民党にしか投票しないから。
郵政民営化賛成だし。郵政に反対する奴らは
郵便局長の世襲制を支持しているバカどもだから。
63デフォルトの名無しさん:2005/09/07(水) 03:40:01
>>60は頭わるそう
64デフォルトの名無しさん:2005/09/07(水) 03:44:36

また>>60みたいな短気なアンチが現れたね。
カッとなるすぐに「Javaしか知らんくせに」と根拠もない感情的なことを言う香具師がいる(ワロス
C++やMATLAB, PHPの話をしている奴が「Javaしか知らない」わけ無いじゃんアフォですか(ワラ
スクリプト言語しかしらない低脳君はすぐクダらない機能にこだわるみたいだけどね(プ
65デフォルトの名無しさん:2005/09/07(水) 03:47:39
60がカスなのは同意だけど
プとかワラとか見てて差部位
66デフォルトの名無しさん:2005/09/07(水) 03:49:54
バカが一人Javaスレに割り込んできた
67デフォルトの名無しさん:2005/09/07(水) 03:51:27
Java屋にバカにされるとすぐにカッとなる奴がいるのは
なんでだろうね?
不思議だね。

PHPスレでもJava屋にバカにされたPHP厨がいたけど
結局反論もできないで終わっちゃったし。
6861:2005/09/07(水) 04:00:31
from 句の中で select 文をネストして、
from 句の外と中で table の自己結合

レコード数が多くなきゃ、かまわんか。
SQLなんて数年ぶりのヘタレなのであとは知らん
6922:2005/09/07(水) 04:04:56
>>61
んなこたぁない
70デフォルトの名無しさん:2005/09/07(水) 04:09:16
やる必要がない ≒ 振り替え策がある ≒ できない

「Java ではやる必要がない」という書き込みを見るに付け、現状で覆されている
過去の空しい主張を思い出さずにいられない。

・テンプレートはポリモーフィズム使えば必要ない → Generics キター
・可変引数はオブジェクト配列で代用可能だから必要ない → 可変引数キター
・アサーションはコンパイル時の最適化 (定数条件の if 文削除) があるから必要ない → アサーションキター
・ラッパークラスがあるからコレクションのプリミティブ型対応は必要ない → Auto Boxing キター
71デフォルトの名無しさん:2005/09/07(水) 04:26:09
>>70
> ラッパークラスがあるからコレクションのプリミティブ型対応は必要ない → Auto Boxing キター
autoboxingは型変換の構文糖であって、コレクションのプリミティブ型対応ではない。
コレクションのプリミティブ対応は jakarta commons primitives とかでやってる。

その他も的外れっぽいし、もーちょっと勉強してから出直してくれば?
7261:2005/09/07(水) 04:36:25
> from 句の外と中で table の自己結合
嘘ついている気がしたので、SQLの本を引っぱって作ってみた。

select A.*
from table A, (select max(maxcolumn) as Z from table where ...) B
where A.maxcolumn = B.Z

微妙に嘘ついてる気がする orz
脳内でしか実行してないから、適当に修正・アレンジ

>>69
最近のDBMSは賢いかもしれない。
where 句に出てくる2番目のselect文の如何なるところにも
最初のtableが出てこないことを認識して探索を最適化?
また、select文なので、探査の途中でtableが変わらないことを認識して...
トリガー?ルール?とかの仕掛けもチェック?
73デフォルトの名無しさん:2005/09/07(水) 04:39:34
>>71
> autoboxingは型変換の構文糖であって、コレクションのプリミティブ型対応ではない。

コレクションのプリミティブ型対応の不要論があって、autoboxing でそれができるようになった
という話だ。君の指摘はぜんぜん逆向き。読解力の足りない脳で無理に反論すると墓穴掘るから
止めたほうが良い。
74デフォルトの名無しさん:2005/09/07(水) 04:41:28
age てる時点で ヴァカ と気づけ。
75デフォルトの名無しさん:2005/09/07(水) 04:46:28
さあ!        
        盛
              り
                    上
                          が
                              っ
                                て
                                  来
                                   ま
                                    し
                                     た
                                     !
76デフォルトの名無しさん:2005/09/07(水) 05:02:15
初心者に教えることが自分の勉強にもなるし
教え方の勉強にもなるってか
マネージャークラスのにんげんが多いよなここ
77デフォルトの名無しさん:2005/09/07(水) 05:03:35
>>73
> autoboxing でそれができるようになった
いや、jakarta commons primitives で何年も前から出来るようになってたんだが

つか、「ラッパークラスがあるからコレクションのプリミティブ型対応は必要ない」
なんて頓珍漢な主張は聞いたことが無いし
78デフォルトの名無しさん:2005/09/07(水) 05:06:53
最後の行が意味不明です。
79デフォルトの名無しさん:2005/09/07(水) 05:09:01
なんでラッパーオブジェクトに格納しなきゃいけないの?
そのためだけにいちいちインスタンス化しなきゃいけないの?

前橋曰く 「ああ情けない」
80デフォルトの名無しさん:2005/09/07(水) 05:10:54
>>73
>コレクションのプリミティブ型対応の不要論があって、autoboxing でそれができるようになった
できるようになってないって。
コレクションの中に入ってるのはプリミティブ型じゃなくてラッパー型だし。
autoboxing は構文糖によってラッパー型<->プリミティブ型の暗黙の変換をしてくれるだけ。
81デフォルトの名無しさん:2005/09/07(水) 05:25:59
>>77
そりゃライブラリレベルの話。空を飛べとか言ってるわけじゃないんだから
作りゃできるってそりゃ当たり前だ。最後の二行は、盛り上がってた頃の JHB や
初心者無視スレとかできる以前の質問スレに君が参加してなかったということが
分かった。つーか、君が聞いたことなければ存在しない論議なのか?

>>80
実際にプリミティブ型が格納できても、単なるシンタックスシュガーであっても、
コードを書く人間が要望した結果は同じことだ。プリミティブ型を格納できる
ようになったという表現が気持ち悪かったか? コード上での話の事だ、気にすんな。
いや、そんな揚げ足はどうでも良くてさ、「神はなぜこう作りたもうたか」といった
宗教的解釈を力説するのがいかに空しいかっつーのはいいのね?
82デフォルトの名無しさん:2005/09/07(水) 05:55:59
>>81
> そりゃライブラリレベルの話
ライブラリレベルで解決して何か問題でもあるのか?
コレクションのプリミティブ型対応が出来ればそれで良いじゃん。

「コレクションには参照型しか入れられないからラッパークラスを使うしかない」
って話は何度も聞いたし、オレもそーゆー事を言ったけど
「ラッパークラスがあるからコレクションのプリミティブ型対応は必要ない」
なんて主張は聞いたこと無いぞ。昔はそーゆー人もいたのかね。

っつーか、古参と自慢するよーな人間がレベル低い方に合わせてどーすんだよ。
83デフォルトの名無しさん:2005/09/07(水) 06:14:26
まぁ言った/言わないみたいな話しててもしょうがないからそろそろ止めようや。
この件に関しては Java が熱くなってた頃はそういう人も居た (それに当てられて
俺も深くうなずいてた) 時代もあったっつーことで。まぁその反省か知らんが、
ただの代用手段が根拠になってる不要論には眉にツバ付ける人が多くなったっつーことだ。
84デフォルトの名無しさん:2005/09/07(水) 06:17:11
>>79
よりによって前橋かよ。もっとマシな人の名前挙げて欲しかったな。
85デフォルトの名無しさん:2005/09/07(水) 06:21:19
ひろみちゅって今何やってんの?
86デフォルトの名無しさん:2005/09/07(水) 06:25:48
>>83
> それに当てられて俺も深くうなずいてた
って、「ラッパークラスがあるからコレクションのプリミティブ型対応は必要ない」
みたいな主張に頷いてたの?
87デフォルトの名無しさん:2005/09/07(水) 06:38:54
そうだよ。つーか、正確には、各プリミティブ型ごとにコレクションを用意するのは
無駄で馬鹿げている、という主張だったと思うが。まぁ若気の至りだ、そう突付くな。
88デフォルトの名無しさん:2005/09/07(水) 06:52:29
89デフォルトの名無しさん:2005/09/07(水) 07:34:31
>>87
なるほど。過去の自分の若気の至りは突付かれたくないけど、
他人の若気の至りは突付きたい お年頃なのですね?
90デフォルトの名無しさん:2005/09/07(水) 07:38:28
なんかキモイのが粘着してるな。
91デフォルトの名無しさん:2005/09/07(水) 08:13:04
プリミティブ型自体要らない&演算子オーバーロード導入キボソ派
の俺様が来ましたよ。とりあえず、おはよう皆様。
言っとくが、俺はC#厨じゃないし変わり者でもない。
2ちゃんではどうだか知らないけど、この意見は結構同意者多いよ?

>>87
「各プリミティブ型ごとにコレクションを用意するのは無駄で馬鹿げ
てる」という主張なら真っ当だと思うが?
プリミティブ型のサポートは(SUN自らは)行わない(必要だと思う人
が勝手に書けばいい。実際、commonsが書いた。)、演算子オーバ
ーロードを導入する、ラッパークラスは演算子オーバーロードを使
って全面的に書き換える、それに合わせたVMの最適化も行う。
個人的にはこういう展開を望んでたんだがなorz
92デフォルトの名無しさん:2005/09/07(水) 10:33:09
前スレ最後で途中になってしまったのですが、

・NFD 正規化した String を、決め打ちで作成したい
・決め打ちで作成する材料を集める際に ICU4J の Normalizer 等を
使っても良いが、実際に作成する際には外したい

のですが、良い方法はありませんでしょうか。

前スレでは、例えば Normalizer.normalize("が", Normalizer.NFD) の返値の
String *1の String#getBytes() の結果を標準出力しておき、実際に作成する際には
その結果で byte[] を作成し、String#String(byte[]) のコンストラクタに入れましたが、
これで作成した String は元の String(*1) と equals で異なってしまい悩んでいました。

これに関して、String-byte[] 変換は正規化なんてしないので異なるのは当たり前、
と言うことをお聞きしたのですが、
当初の目的の NFD 正規化文字列を決め打ちで作成する方法が
理解できていないままです…
93デフォルトの名無しさん:2005/09/07(水) 11:24:28
ごっつい初心者です。初心者用の本買って読んでますが、身に付く気配がありません。
みなさん初心者のころどうやって勉強しましたか?
94デフォルトの名無しさん:2005/09/07(水) 11:54:48
>>92
前スレにあった返答で理解できなかったんかい。
きみのコードでは getBytes() した時点でデータが壊れてる。
NFDするとEUC-JPやSJISでは表現できないコードが表われる可能性があ
るので、デフォルトエンコーディングは使っちゃダメ。

NFDした結果を保存するときは、nfd.getBytes("UTF-8") などとしてUTF
系のエンコーディングのバイト列で保存して、new String(bytes, "UTF-8")
などで復帰させる必要がある。

もしくは、char配列でUnicodeのコードポイントで保存して、char配列
で復帰させればいい。

95デフォルトの名無しさん:2005/09/07(水) 11:55:57
>>93
ひたすらデモとか問題のプログラムを打ち込み、実行、デバッグ、アレンジ
96デフォルトの名無しさん:2005/09/07(水) 12:12:56
>>94
ありがとうございます。解決しました。文字セット指定がないから、プラットフォーム
デフォルトのエンコード文字列になってしまっていたのですね…出直します。
97デフォルトの名無しさん:2005/09/07(水) 12:14:29
>>70
あほだねー粘着君は
C++のテンプレートはJavaのGenericsとは違うものだし
Java5の可変長引数はそのままObject[]のシンタックスシュガーになってるだけだし
他の言語に見られるような曖昧な可変長引数とはものが違うってわけよ。
三番目の項目は疑問だね。だれがいらないなんていったのかね。君の妄想かな。
四番目だってC#の基本型とは性質が異なり、暗黙のうちにtoString()が呼び出されているのと同じような仕組みだし。
似て非なるものをそっくりそのまま真似したと勘違いして「現状では覆されている」と妄言を吐く
様はなにか宗教の関係者みたいだ。
98デフォルトの名無しさん:2005/09/07(水) 12:20:10
そもそもさ、C++にはJavaにはない便利な機能があったけど
あえて排除した理由ってのをわかってない奴が約一名いるよね。
Javaを開発した人達が、それぞれに、これこれ、こういう問題があるから、
この機能を排除したっていう明確な根拠があったからその機能が存在していないだけ
なのにね。とにかくすっきりさせたってわけさ。
見た目、一見便利そうなものでも何も考えずに言語仕様に追加すると
C++のような言語に後戻りしてしまうわけさ。そのような過ちを二度と犯さないために
慎重に議論されながら従来のC++とは異なる仕様でGenericsやenumなどが追加されたんだよ。
現にJavaのGenericsはC++のtemplateよりも安全性が高いしエラーが怒りにくい、
enumも同様で、Enumクラスのサブクラスというシンタックスシュガーだし。
それでおいて、C++のenumよりも型安全性は高い。

C++のような問題点やリスク山積みのGenericsやenumは必要ないが、
Javaのような新しい発想から生まれたGenericsやenumなら必要だってことだね。

99デフォルトの名無しさん:2005/09/07(水) 12:26:44
>>81
> いや、そんな揚げ足はどうでも良くてさ、「神はなぜこう作りたもうたか」といった
> 宗教的解釈を力説するのがいかに空しいかっつーのはいいのね?

そりゃこいつ自身のことだろw
100デフォルトの名無しさん:2005/09/07(水) 12:47:16
>>98
>Javaを開発した人達が、それぞれに、これこれ、こういう問題があるから、
>この機能を排除したっていう明確な根拠があったからその機能が存在していないだけ
>なのにね。とにかくすっきりさせたってわけさ。

興味があるのでソース出して
101デフォルトの名無しさん:2005/09/07(水) 12:50:52
俺も挫折しそう・・ でもはじめてjavacできた時の感動や
HALLO JAVA WORLDが動いたときの感動を忘れません。
が、次のステップ「配列」で足踏み
102デフォルトの名無しさん:2005/09/07(水) 13:00:33
Hello World やってる人いるんだな・・・・
103やっちゃん ◆jKwdOs3LE2 :2005/09/07(水) 13:58:27
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class sample92 extends HttpServlet{
public void doGet(HttpServletRequest req,HttpServletResponse res)
throws IOException,ServletException{

res.setContentType("text/html; charset=Shift_JIS");
PrintWriter out =res.getWriter();
out.println("<html><head>");
out.println("<title>こんにちは Servlet</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>こんにちは Java Servlet!</h1>");
out.println("</body></html>");
}
}
104やっちゃん ◆jKwdOs3LE2 :2005/09/07(水) 13:59:09
■C:\Documents and Settings\unko\My Documents\Java\550.2> javac sample92.java
sample92.java:2: パッケージ javax.servlet は存在しません。
import javax.servlet.*;
^
sample92.java:3: パッケージ javax.servlet.http は存在しません。
import javax.servlet.http.*;
^
sample92.java:4: シンボルを解決できません。
シンボル: クラス HttpServlet
場所 : sample92 の クラス
public class sample92 extends HttpServlet{
^
sample92.java:5: シンボルを解決できません。
シンボル: クラス HttpServletRequest
場所 : sample92 の クラス
public void doGet(HttpServletRequest req,HttpServletResponse res)
^
sample92.java:5: シンボルを解決できません。
シンボル: クラス HttpServletResponse
場所 : sample92 の クラス
public void doGet(HttpServletRequest req,HttpServletResponse res)
^
sample92.java:6: シンボルを解決できません。
シンボル: クラス ServletException
場所 : sample92 の クラス
throws IOException,ServletException{
^
エラー 6 個

になっちゃうのですが、サーブレットのやり方教えてください誰か・・・・
105デフォルトの名無しさん:2005/09/07(水) 14:02:06
>>104
ttp://www.hellohiro.com/servlet.htm
ここを読んで環境整えてから出直してこい
106デフォルトの名無しさん:2005/09/07(水) 14:05:20
そういや最近鳩サーブレット食ってないな
107やっちゃん ◆jKwdOs3LE2 :2005/09/07(水) 14:08:19
それでも意味がわかんなくてできません。。。誰か親切に教えて下さい。。。。
108やっちゃん ◆jKwdOs3LE2 :2005/09/07(水) 14:12:50
やることはやってるんですが、こうエラーが出ます
sample93.java:2: パッケージ javax.servlet は存在しません。
import javax.servlet.*;
^
sample93.java:3: パッケージ javax.servlet.http は存在しません。
import javax.servlet.http.*;
^
sample93.java:5: シンボルを解決できません。
シンボル: クラス HttpServlet
場所 : sample93 の クラス
public class sample93 extends HttpServlet {
^
sample93.java:6: シンボルを解決できません。
シンボル: クラス HttpServletRequest
場所 : sample93 の クラス
public void service(HttpServletRequest request,
^
sample93.java:7: シンボルを解決できません。
シンボル: クラス HttpServletResponse
場所 : sample93 の クラス
HttpServletResponse response)
^
sample93.java:8: シンボルを解決できません。
シンボル: クラス ServletException
場所 : sample93 の クラス
throws ServletException, IOException {
^
エラー 6 個
109デフォルトの名無しさん:2005/09/07(水) 14:17:50
>>108
やることやってから質問してください。
110やっちゃん ◆jKwdOs3LE2 :2005/09/07(水) 14:19:00
すいません。それでもわからないんです・・
111デフォルトの名無しさん:2005/09/07(水) 14:20:32
>>108
ttp://www.amazon.co.jp/exec/obidos/ASIN/4798005827/
これでも買って読め
金がないならバイトしろ
112デフォルトの名無しさん:2005/09/07(水) 14:21:05
あきらめてください
113やっちゃん ◆jKwdOs3LE2 :2005/09/07(水) 14:33:31
はあ・・・・誰か親切な人いないかな〜〜・・
114デフォルトの名無しさん:2005/09/07(水) 14:40:34
初心者歓迎、ってのに甘えて質問します。

今までアセンブリ言語やModula-2やCで機械制御系のシステムや事務処理システム用のプログラムを一人で組んでいましたが、そろそろJavaの勉強でもするかなとっています。

今までの経験では、言語仕様そのものよりも、開発環境とかライブラリ群の整備され具合のほうが、開発効率を左右する度合いが大きいのかなと感じています。

サンプルとして、スタンドアロンで稼働するPC(OSはWIn2K,Linux等)上で動作する家計簿ソフトを作ってみようと思っています。もちろん、Webベースではなく、レガシーなスタイルのアプリです。開発はWinにて行う予定です。そこで質問です。

・開発環境をざっと調べてみたのですが、使い勝手とか流通している情報量という
点からEclipseが良さそうです。でも、解説本を立ち読みしたらWebベースの
アプリの組み方ばかりで、Webサーバーを使わないアプリに関しては記載され
ていません。大丈夫とは思いますが、EclipseでWebサーバーを使わないレガシーな
スタイルのアプリを作成するのは適当でしょうか。

・この手の素人向けのアプリの場合、きめ細かいカーソル制御や表示制御が
必要になります。Javaのライブラリとして、グリッドやコマンドボタンや
コンボボックスなどのウィジットはいろいろ提供されているのでしょうか。
「このボタンはデザインが悪いから他のボタンを使おう」なんてことが結構
ありますから。有料ならばグレープシティなどが有名ですが、無料でも
そろっているんでしょうかね。

・Javaとは離れますが、家計簿データを扱うのに適当な軽いDBエンジンは
 ありますでしょうか。MySQLではオーバースペックな感じがするので、
 Jetエンジン程度の仕様で十分です。ただし、WinでもLinuxでも動作する
 ものがよいです。Pervasive.SQLが好きなんですが、有料というのが
 玉に瑕です。

では。
115やっちゃん ◆jKwdOs3LE2 :2005/09/07(水) 14:49:22
http://www.nttdocomo.co.jp/p_s/imode/java/tool.html

ドコモのIモード開発ツールはもう無いのでしょうか???
116やっちゃん ◆jKwdOs3LE2 :2005/09/07(水) 14:53:29
すいませーん
117デフォルトの名無しさん:2005/09/07(水) 14:54:25
>>115
あるけど。普通にTOPから探せばみつかる
118やっちゃん ◆jKwdOs3LE2 :2005/09/07(水) 14:56:28
どこをクリックするのですか??
119やっちゃん ◆jKwdOs3LE2 :2005/09/07(水) 15:01:12
すいませ〜〜ん。誰か〜〜〜
120やっちゃん ◆jKwdOs3LE2 :2005/09/07(水) 15:05:59
誰か親切な人教えて下さい・・・
121デフォルトの名無しさん:2005/09/07(水) 15:11:03
>>114
外しているかもしれませんが、以下、ご参考まで。

> EclipseでWebサーバーを使わないレガシーなスタイルのアプリを作成するのは適当でしょうか。

はい。Visual Editor という GUI 作成支援のためのツールもあります。

また、Eclipse を開発環境として利用するだけではなく
リッチクライアント開発のためのプラットフォームとして利用することも可能です。

> Javaのライブラリとして、グリッドやコマンドボタンや
> コンボボックスなどのウィジットはいろいろ提供されているのでしょうか。

Swing や SWT といったキーワードで検索ください。

> 家計簿データを扱うのに適当な軽いDBエンジンはありますでしょうか。

JDBC を利用して特定のデータベースに依らない形としてみてはいかがでしょうか。
122デフォルトの名無しさん:2005/09/07(水) 15:14:41
114じゃないけど参考になった
123やっちゃん ◆jKwdOs3LE2 :2005/09/07(水) 15:19:26
>>117
なんかインストールしようとすると、sunに飛んじゃうんですけど・・・・
124デフォルトの名無しさん:2005/09/07(水) 15:34:02
>>98
> とにかくすっきりさせたってわけさ。

とっくに方向転換したが。おまえの頭は 20 世紀で止まってるみたいだな。

> C++のような問題点やリスク山積みのGenericsやenumは必要ないが、
> Javaのような新しい発想から生まれたGenericsやenumなら必要だってことだね。

C++ のように何年か経てば陳腐化するのを分かってない。アフォ か。
125デフォルトの名無しさん:2005/09/07(水) 15:39:52
>>114
HSQLDBという軽量のDBがお薦めです。
ttp://hsqldb.org/
別サーバをたてず同一プロセス内でDBの機能を使うことができます。
また、データの保存形式としてCSVを選択することができるため、何かと便利です。

JavaのGUIコンポーネントは、最初の頃は複雑な印象を持つかもしれませんが、
その複雑さはそれなりの理由があってのことです。
また、その理由がわかってくればJavaとオブジェクト指向の考え方の理解につながりますので、
将来のためと思って覚えてみるといいんじゃないでしょうか。
126デフォルトの名無しさん:2005/09/07(水) 15:40:35
>>114
レガシーの使い方が微妙に違ってるですな。
127デフォルトの名無しさん:2005/09/07(水) 15:44:03
質問者の態度次第で良スレにも糞スレにもなるスレですな
128デフォルトの名無しさん:2005/09/07(水) 15:45:13
>>114
GUIアプリ作るならNetBeansの方がいいかも
129デフォルトの名無しさん:2005/09/07(水) 15:52:10
小学4年生の妹が、最近おっぱいの先っぽがコリコリして痛いって言って来た
130デフォルトの名無しさん:2005/09/07(水) 15:55:07
きちんとスルーできる大人なスレだね
131デフォルトの名無しさん:2005/09/07(水) 16:15:10
最近妹がツンデレ化してきてヤバい。
132やっちゃん ◆jKwdOs3LE2 :2005/09/07(水) 16:18:45
やはり参考書が必要なのですね。お金貯めて買います
133デフォルトの名無しさん:2005/09/07(水) 21:03:22
>>113
servlet.jarがコンパイラの
クラスパスに通ってないんだよ。
だからエラーになる。
134デフォルトの名無しさん:2005/09/07(水) 21:06:06
そいつ色々なスレ荒らしてる奴だから
スルーよろ
135デフォルトの名無しさん:2005/09/07(水) 21:14:27
>>131
ツンデレ使いたいだけじゃないのかと
136デフォルトの名無しさん:2005/09/07(水) 21:38:47
>>114
NetBeans+HSQLDBでおけ

GUIはSwingという標準APIを使うならNetBeansがダントツ
Eclipse+VEだと一見表面化しない問題が多少あります

HSQLDBは組み込み向けDBでAccessのMDBを扱う感覚でファイル名を指定して
使うことが出来ます
サブクエリーも使えるのですがJDBC1までしか対応していないのがネックか
つまりSQLレベルまでしかできないってこと
137114:2005/09/07(水) 23:07:43
おお、ひと仕事して帰ってきたらこんなにレスをいただいてTHXです。
お教えいただいたキーワードでいろいろ調べてみました。

>>114 的確なアドバイス、ありがとうございます。
EclipseそのものにネイティブにGUIビルダーが内包されているかどうかは別にして、
VisualEditorを組み込むことによって快適にGUIを構築できるようになる、ということ
ですね。

SwingはJavaで書かれたOSに依存しない標準的なGUI用コンポーネント集、SWTは
OSに依存するものの高速なAPIライブラリ、みたいな理解でよろしいでしょうか。

なお、JDBCにてDBエンジンに依存しないとのご提案ですが、各DBエンジンに特有の
方言があるという実情では、DBエンジンに依存しないコーディングってのはなかなか
難しいんじゃないでしょうか。DBアクセスの用のモジュールの独立性を高めても、実際
SQL文そのものから違うわけでして。であれば、何か一つに統一して、それをあらゆる
局面で採用した方が簡単そうです。ま、私の仕事では、私がDBエンジンを決定できる、
という局面が多いものですから。
138114:2005/09/07(水) 23:08:12
続きです

>>125
HSQLDB、これ軽量で高機能で、すごく良さそうです。ご紹介、ありがとうございます。
以前はBtrieveとかOracle Liteを好んで使っていたのですが、そういった参考書や
解説書が無い製品だと実際の開発時にすごく苦労するので、採用するのに躊躇
します。ちょっと書籍を探してみます。

>>126 そこはご愛敬ってことで。

>>128,136 うーん、痛いところをつかれました。
EclipseとNetBeans、悩ましいです。まだ使ってもいないのにどちらが良いかを悩むのは、
運転免許を持っていない中学生がフェラーリとポルシェの善し悪しを論じているようなも
ので、傍目から見たらバカバカしいでしょうな。

そもそもEclipseがいいかなと思ったのは、NerBeansの勢いに一時かげりがあったことと、
Eclipseのほうが解説書が多そうだったから、それだけです。今までの経験で、誰も使って
いない開発環境をひとりでシコシコ使うのはとっても辛いですから、勝ち馬にのった方が
楽そうというわけで。

具体的な話として、Eclipse+VisualEditorだと、どのような不具合があるでしょうか。それら
が記載しているURLでもお教えいただければありがたいです。当方でも検索したのです
が、ちょっと見つけられませんでした。

HSQLDBですが、SQLレベルで十分かなと思います。
13929:2005/09/07(水) 23:15:18
>>29です。

debian用にパッケージ変換して
正常に動作しました。

皆様ありがと
14026:2005/09/07(水) 23:16:33
29じゃねーや。俺は26だ。
141デフォルトの名無しさん:2005/09/07(水) 23:45:54
>>138
一番問題になるのはウインドウサイズをサイズ指定しようとしやがる
保護しないのでいじるとおかしくなるとか初心者にはSwingの知識がないと意外ときついかも
あと細かいところがNetBeansのほうが便利
自作のコンポーネントとかをすぐにぺたぺたはりつけれたり速度的にVEは遅いとか

基本的な違いはEclipseは基本部+プラグインを前面に出してるのに対して
NetBeansは最初からWEBアプリ、EJB、GUIのプラグインが入ってる
本当はNetBeansもプラグインでできてるんだけど、日本語の記事が少ないし
バージョン違いで苦しむことも多いのでこれは自作しない人は無視していいかと

Eclipse本の95%はTomcat動かすところとVE動かすところまでで説明が終わってるから
構造の違いについてはあんまり問題にはならないかと

次バージョンの5.0でGUI作成が大幅によくなるのとプラグインが簡単に作れるのが改善点らしい
開発バージョンがおとせるのでそれで試すのもいいけどまだそこはバグってるとおもう
http://www.netbeans.org/files/documents/4/475/matisse.html

SQLレベルだけってのは結果セットを取得してそれに対して更新ができないってことだよ
しかもこの方法はわりとDBに依存しやすい
まぁ現状組み込みDBはHSQLDBしか選択肢はないと思っていいけど
142デフォルトの名無しさん:2005/09/08(木) 00:34:48
いいよ。スルーしなくても。
143デフォルトの名無しさん:2005/09/08(木) 01:23:45
JDBCのBLOBについての質問です。
PreparedStatement#setBlob()で、BLOB列にINSERTするにはどうすればよいでしょうか?
とりあえず考えたのは
・ベンダのBlobインタフェース実装クラスをインスタンス化して使う
 →ベンダ依存のクラスはなるたけ明示的に使いたくない(ドライバはまぁしょうがないとして……)
・PreparedStatementでなく、更新可能なResultSetを取ってきて対象列からgetBlob()で
 インスタンスをもらってきて、setBinaryStream()で……とやってupdateする
 →DBの設定で更新可能なResultSetに対応してないorz
といったところなのですが、他に定番のような方法があれば教えていただければ幸いです。

// PreparedStatement#setBinaryStream()でもとりあえず用は足りるのですが
// じゃ何のためにsetBlob()なんてあるんだ、と気になって……
// JDBCのドキュメントでテーブル間の列コピーに使っているらしい? サンプルは見たのですが。
144デフォルトの名無しさん:2005/09/08(木) 01:34:48
>>143
Blobのドキュメント読んだか?
145デフォルトの名無しさん:2005/09/08(木) 02:01:27
>>143
とりあえず最初にレコード作る時は byte[] や InputStream で入れれ
146デフォルトの名無しさん:2005/09/08(木) 02:03:16
>>124
> >>98
> > とにかくすっきりさせたってわけさ。
>
> とっくに方向転換したが。おまえの頭は 20 世紀で止まってるみたいだな。
>
> > C++のような問題点やリスク山積みのGenericsやenumは必要ないが、
> > Javaのような新しい発想から生まれたGenericsやenumなら必要だってことだね。
>
> C++ のように何年か経てば陳腐化するのを分かってない。アフォ か。

おいおい、言いたいことはそれだけか。
だれもわわかりきっていることを、わかっていないと見なして八つ当たりでいちいちレスするなんて、
そのレスをみると餓鬼が最後に悔しまみれにはく捨て台詞にみえてみっともないぞ。
147デフォルトの名無しさん:2005/09/08(木) 02:05:55
>>146
> おいおい、言いたいことはそれだけか。
> だれもわわかりきっていることを、わかっていないと見なして八つ当たりでいちいちレスするなんて、
> そのレスをみると餓鬼が最後に悔しまみれにはく捨て台詞にみえてみっともないぞ。

そりゃおまえだろ。
148デフォルトの名無しさん:2005/09/08(木) 02:11:34
複数返値は「不要」なんて珍説を否定されたのがよほど腹に据えかねたらしいな
149デフォルトの名無しさん:2005/09/08(木) 02:15:27
複数戻り値はJavaの要望に出てたぞ確か
150デフォルトの名無しさん:2005/09/08(木) 02:15:56
>>137
> EclipseそのものにネイティブにGUIビルダーが内包されているかどうかは別にして、
> VisualEditorを組み込むことによって快適にGUIを構築できるようになる、ということ
> ですね。

そうです。Visual Editor を追加することで GUI を簡単に構築できるようになります。

また >>121 では、Eclipse をクライアントアプリの一部として使う提案もされています。
ご参考) ttp://www.mamezou.com/tec/equip016.htm

> SwingはJavaで書かれたOSに依存しない標準的なGUI用コンポーネント集、SWTは
> OSに依存するものの高速なAPIライブラリ、みたいな理解でよろしいでしょうか。

はい。正しいと思います。

> なお、JDBCにてDBエンジンに依存しないとのご提案ですが、各DBエンジンに特有の
> 方言があるという実情では、DBエンジンに依存しないコーディングってのはなかなか
> 難しいんじゃないでしょうか。DBアクセスの用のモジュールの独立性を高めても、実際
> SQL文そのものから違うわけでして。であれば、何か一つに統一して、それをあらゆる
> 局面で採用した方が簡単そうです。ま、私の仕事では、私がDBエンジンを決定できる、
> という局面が多いものですから。

そうですね。そのあたりは技術的な話だけでなく個々の事情を含めて要判断でしょう。
151デフォルトの名無しさん:2005/09/08(木) 02:17:38
Eclipse RCPねぇ・・・
152デフォルトの名無しさん:2005/09/08(木) 02:18:39
>>98
Javaは神!Javaマンセー!ってのはよくわかったw
153デフォルトの名無しさん:2005/09/08(木) 02:18:43
そもそも複数戻り値なんて考えて設計してる時点でおかしい。
一つ戻れば十分な作りになってなきゃおかしい。
154デフォルトの名無しさん:2005/09/08(木) 02:22:12
Mapでいいべさ
155デフォルトの名無しさん:2005/09/08(木) 02:23:29
クロージャは必要か不要かと同じでメリット・デメリットがある
156デフォルトの名無しさん:2005/09/08(木) 02:25:06
必要な場合はクラスや配列やコレクションにまとめるってのは単なる実装手法であって
設計上の複数戻り値は必要だと言っているようなものだが。
まぁ age てる時点でネタか。
157デフォルトの名無しさん:2005/09/08(木) 02:29:24
まさかリターンバッファをパラメータで渡せって話だったりしてw
158デフォルトの名無しさん:2005/09/08(木) 03:24:02
>>149
BugParade の #4222792 は will not be fixed になってるよ。
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4222792

っつか、言語機能の要望は他所でやってくれ。
ここで「複数戻り値」が欲しいって言ってたって Sun の連中には届かんだろ。

そろそろテンプレに入れて欲しいかも。
「Java言語に対する新機能追加の希望、要望等は承っておりません。
JCP や BugParade に言ってください」とか。
159デフォルトの名無しさん:2005/09/08(木) 03:40:05
>>147-148, >>98は同一人物による荒らし
160デフォルトの名無しさん:2005/09/08(木) 03:52:50
複数戻り値が欲しいって言ってるのは >>158 しか居ないわけだが
161デフォルトの名無しさん:2005/09/08(木) 03:53:50
>>158
別に要望を言っているのではなくて
「Javaは崇高な理念に基づいて作られているから新機能なんていらない!」
とアホなこといってるやつに突っ込んでるだけだろ。
162デフォルトの名無しさん:2005/09/08(木) 03:56:01
>>160
じゃ、総員一致で「複数戻り値」は欲しくないって事でOK?
欲しくも無い機能を話題にする必要は無いよね。
以後「複数戻り値」の話題は禁止でおながいします。
163デフォルトの名無しさん:2005/09/08(木) 03:59:52
>>162
なに怒ってんの?w
164デフォルトの名無しさん:2005/09/08(木) 04:00:36
自治厨きたこれ
165デフォルトの名無しさん:2005/09/08(木) 04:04:44
>>162
おまえの読解力が見当違いだっての ヴァカ
166デフォルトの名無しさん:2005/09/08(木) 05:28:17
そろそろすれ違いでつよ。
きっと夏休みに Java に陶酔して浮かれてたんでしょうほっておけ。
167デフォルトの名無しさん:2005/09/08(木) 05:56:44
>>166 が蒸し返している件
168デフォルトの名無しさん:2005/09/08(木) 06:00:31
あの、Javaでプロキシーを作ろうと思うのですが、普通はブラウザとかアプリが
プロキシに対応してるか、"プロキシのアド/リダイレクトされた後接続したいアド"
のような場合しか使えませんよね。
で、普通に外に通信をしようとしてるところをインターセプトして、プロキシにコネクション
張らせるようにしたいです。
普通に考えたら無理そうですが、どうにかやることはできないでしょうか?
(OS寄りの所にJNIとかで手を出せばできるかもだけど、それはやりたくないな・・・・)
169デフォルトの名無しさん:2005/09/08(木) 06:02:14
すいません、日本語がなんかおかしい。

〜使えませんよね。
では上のような場合じゃない時に、インターセプトして〜 と読み替えてください。
170デフォルトの名無しさん:2005/09/08(木) 06:15:14
>>168
言っているのは、AntiVirus が 25/110 ポート (SMTP/POP3) を通るメールを自動でチェックする
ようなことの HTTP 版だろう思うが、それは JNI 使わなければ無理。proxy.pac でも使えば?
171デフォルトの名無しさん:2005/09/08(木) 08:50:14
DBと連携するサーブレットのシステムを「Oracle Application Server 10g 」上で
運用したいのですが。実際的にはどの様に開発するのでしょうか?
また、どの様にアプリケーションサーバに登録するのでしょうか?

172デフォルトの名無しさん:2005/09/08(木) 09:25:16
>>170
プロキシを通るアプリ側にはプロキシの存在を意識させたくないんですよ。
普通に外に出ようとしたら、プロキシ通ってた。というようにしたいです。

あと、プロトコルも制限を与えず、任意の通信でプロキシを通したいです。

なんて、無茶かorz
173デフォルトの名無しさん:2005/09/08(木) 09:28:44
squidでtransparent proxyを設定すればいいじゃない
174デフォルトの名無しさん:2005/09/08(木) 09:41:58
>>173
おぉー。そんな事ができるんですか。

Javaスレで聞くのもおかしいですが、それはどうやって実装してるんでしょうね?
175デフォルトの名無しさん:2005/09/08(木) 09:44:18
>>174
Javaスレで聞くのがおかしいなら、聞かないでください。適切なスレでどうぞ。
176デフォルトの名無しさん:2005/09/08(木) 09:45:27
>>174
ぐぐれハゲ
177デフォルトの名無しさん:2005/09/08(木) 10:44:59
JtoggleButtonが押された状態の色を設定するには
どのようにすればいいのでしょうか?
178デフォルトの名無しさん:2005/09/08(木) 12:00:55
StrutsでActionFormに入ってきた値を
JSPで表示させようと思うけど、うーん上手くいかんよ・・・
因みに表示させようとしている値は
遷移元から渡されたわけではない。

ご教授おながいしまつ、エロい使途
179デフォルトの名無しさん:2005/09/08(木) 12:46:53
>>178
何をどう実装したらどうなったのか、さっぱりわからんよ。
エロい使徒じゃなくてエスパー募集でつか?
180デフォルトの名無しさん:2005/09/08(木) 13:02:04
JakartaかApacheにも100%Pure Java プロキシサーバってなかったっけ?
181デフォルトの名無しさん:2005/09/08(木) 13:06:05
皆さん、掌田 津耶乃ってどう思います?
182デフォルトの名無しさん:2005/09/08(木) 13:12:52
>>181
他所でやれバカ
183デフォルトの名無しさん:2005/09/08(木) 13:23:21
>182
バカって言うなバカ








失礼しました、他所でやらせて頂きます
184141:2005/09/08(木) 13:51:17
夜分の回答ありがとうございます。

>>141
あっさり切り捨てるつもりでしたが、実際にNetBeans環境を構築して評価
してみることにします。

あと、HSQLDBは超軽量で良さそうですね。

>>150
これで、頭の中がすっきり整理できました。ありがとうございます。
185114:2005/09/08(木) 13:52:49
すいません。上の書き込みの名前は141じゃなくて114でした。失礼。
186デフォルトの名無しさん:2005/09/08(木) 14:00:16
>>183
バカごめんよバカ

もうスレ違いにはウンザリなんだよ
187178:2005/09/08(木) 14:03:21
>>179
Actionクラスを起動して
ActionFormに入っている定数を
JSPで読み込もうとしてる訳ですよ

Strutsなんだけど、板違いならばスマン
188デフォルトの名無しさん:2005/09/08(木) 14:05:46
>>187
流石に板違いということは無いが
スレ違い気味というか
より適切なスレがあると思うよ
189デフォルトの名無しさん:2005/09/08(木) 14:07:56
>>187
で、どう実装したらどううまくいかないの?
190デフォルトの名無しさん:2005/09/08(木) 14:37:34
StringからInputStreamをつくるにはどうしたらいいですか。
StringReaderはありますが、StringIntutStreamはありません。
Stringをbyte[]に変換してByteArrayInputStreamに変換しようかと思いましたが、Stringをbyte[]に変換する方法もわかりませんでした。

なお本当にやりたいことは、StringからPropertiesを生成することです。
Properties#load(InputStream)はあるけどProperties#load(String)やProperties#load(Reader)がないのはなぜだろう。
191デフォルトの名無しさん:2005/09/08(木) 14:40:54
>>190
String#getBytes
192デフォルトの名無しさん:2005/09/08(木) 17:18:24
Java1.4 もしくは 1.5, win2000〜XP で
日本語縦書フォントを使うにはどうしたらいいでしょう
@付のフォントが使えないようなのですが

昔は「ゃゅょっ」を右上にもってったり「ー」を回転させてたのですが
正式なやり方があればご教授くださいませ
193デフォルトの名無しさん:2005/09/08(木) 18:36:11
>>192
いちおう java.awt.ComponentOrientation とかそれっぽいのがあるんだけど、
今のところ LEFT_TO_RIGHT と RIGHT_TO_LEFT しか無いんだよね。

縦書きフォントって横書きフォントに縦書き用のヒント情報を適用して仮想的に作り出してたような。
だから Java のフォントレンダラが縦書き用のヒント情報取得してないと APIレベルでは解決できないと思う。
自力で ttf ファイル読み込んで vmtx とか読み込めば、その辺の情報は得られるはず。
ただ、自前でやるとフォントレンダラと計算方法違ったりして 1ドットずれてるとかそーゆー事はあるかも。

SWT はOSのフォントレンダラ使うから Windows なら縦書き用のフォントが得られるんじゃないかと思われ。
194デフォルトの名無しさん:2005/09/08(木) 18:53:55
Tomcat5でCGIを実行するにはどうすればいいでしょうか?
http://muimi.com/j/jakarta/tomcat55/
http://www.atmarkit.co.jp/fjava/javatips/083container012.html
を読み、そのとおりに設定してみたんですがどのCGIを実行しても
画面が真っ白になります。
Perlへのパス(#! /usr/bin/perl)も間違っていませんしパーミッションも755で間違っておりません。
どのCGIを実行しても画面が真っ白になる場合は他にどのような要因が考えられますか?
http://www.atmarkit.co.jp/fjava/javatips/083container012.htmlの下にあるhello.cgiを実行してみたんですが
やはり真っ白になります。
195デフォルトの名無しさん:2005/09/08(木) 19:17:33
なんつー環境にいれたの?
つかぬ事をお聞きしますが、#! /usr/bin/これが動くOSだよね?
196デフォルトの名無しさん:2005/09/08(木) 20:09:22
>>195
OSはLinuxです。
197デフォルトの名無しさん:2005/09/08(木) 20:17:24
普通の HTML や JSP は表示できてるのか?
とりあえず Tomcat のログを見ろ。
198デフォルトの名無しさん:2005/09/08(木) 21:23:03
ちょい、質問を変えてみる。
$TOMCAT_HOME/webapps/ROOT/以下にある全てのCGIを実行可能にするには
$TOMCAT_HOME/conf/web.xmlにある以下の内容をどう変えればいい?(おそらく←をつけたところを変えればいいと思うんだが・・・)
<servlet>
<servlet-name>cgi</servlet-name>
<servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
<init-param>
<param-name>clientInputTimeout</param-name>
<param-value>100</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>6</param-value>
</init-param>
<init-param>
<param-name>cgiPathPrefix</param-name>
<param-value>WEB-INF/cgi</param-value>  ←
</init-param>
<load-on-startup>5</load-on-startup>
</servlet>
...中略...
<servlet-mapping>
<servlet-name>cgi</servlet-name>
<url-pattern>/cgi-bin/*</url-pattern> ←
</servlet-mapping>
・・・中略・・・
>>197
HTMLやJSPは表示出来てる
199デフォルトの名無しさん:2005/09/08(木) 21:54:53
質問しかえしといて申し訳ない、よくわかんない
cgi-binってパスを追加してそこに置いたのも動かないの?
200デフォルトの名無しさん:2005/09/08(木) 22:04:09
手元に試すもんないから試してない、ので確実に動かないと思うけど

<servlet>
<servlet-name>cgi</servlet-name>
<servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>cgi</servlet-name>
<url-pattern>*.cgi</url-pattern>
</servlet-mapping>

こんなんをROOT/WEB-INF/web.xmlに保存すれば動くんじゃないかな?まじで知らないけど
201デフォルトの名無しさん:2005/09/08(木) 22:04:10
動かないね。
単純に言うと
$TOMCAT_HOME/webapps/以下にあるCGIをhtmlと同じようにアクセスしたい。
だからcgi-binとかはつけたくないわけ。

例えば$TOMCAT_HOME/webapps/ROOT/にあるindex.htmlが
http://localhost:8080/index.htmlで動くなら
$TOMCAT_HOME/webapps/ROOT/にあるhello.cgiは
http://localhost:8080/hello.cgiでアクセスしたい
↑このようにするにはどうすればいい?
おそらく$TOMCAT_HOME/conf/web.xml↓を変えればいいんだろうけど
どう変えればいいんだろう?

<param-value>WEB-INF/cgi</param-value>  ←

<url-pattern>/cgi-bin/*</url-pattern> ←

<param-value>*</param-value>、<url-pattern>*.cgi</url-pattern>とかにもしてみたけどだめぽ
202デフォルトの名無しさん:2005/09/08(木) 22:17:29
それはあとで何とでもなると思うけど動かないんでしょ?
WEB-INF/cgiここにはなにがあんの?ある?
そこ見てるっぽいけど、なきゃばんばんしむりんく貼っちゃえ

203143:2005/09/08(木) 22:17:52
>144
一応は読んだつもりです……
BlobとResultSet、*StatementのAPIドキュメントを読んだ限りでは
Blobのインスタンスを得るには、既に中身の入っているBLOB列から
ResultSet#getBlob()で取ってくるしかないように思うのですが
そうするとBlob#set*()は「読み出したモノ」に書き込むことになるわけで
ということは更新可能ResultSetに特化した話なんだろうか? と思ったのです。

>145
ということは、とりあえず適当に何か突っ込んでおいて、
しかる後に取り出して……という手順になるのでしょうか?

 というかレス書いてる間に気がついたのですが、ひょっとしてBlobのインスタンスって
適当にどこかのResultSetから持ってきたものを使い回せる(流石にドライバまたぐのは無理でしょうけど)
ものなんでしょうか……ちょっと実験してみます。お騒がせしますた。
204デフォルトの名無しさん:2005/09/08(木) 22:21:00
>>202
WEB-INF/cgiを作ってその中に文字を表示するだけのテストファイル(test.cgi)を
入れてみますたが404が出る。
205デフォルトの名無しさん:2005/09/08(木) 22:33:39
404は何でアクセスしたよ、スッピンのままじゃないよね?
既にやってるなら勘弁。そこがcgi-bin/に見せるんだと思うぜ!

強がってしまいました。正直、tomcat5のcgiはおろかtomcat5をあまり知りません
住人の方、俺にも教えてください
206デフォルトの名無しさん:2005/09/08(木) 22:35:38
tomcat を起動しているプロセスでそのディレクトリに cd できるのか?
つーかログくらい見ろよ。
207デフォルトの名無しさん:2005/09/08(木) 22:54:16
質問です。
いま会社の研修で図書館の貸し出しをするためのプログラムをJAVAで
オブジェクト指向でしろという課題が出ています。GUIで操作を行わせます。
データは(DBで管理)
・図書コード(5桁、同じ本は1冊しかない)
・書名
・借用者名
・貸出日
・返却日(貸出日の14日後なのでいらないかも)
の5つで、借用者が本をカウンタに持ってきた時、図書館の人間が
貸し借りを円滑にするために作るのがこのプログラムです。

そこで質問なのですが、クラス図を講師から頂いたのですが、
どうもかなり怪しい感じがしますので、皆さんならどのように
クラス図を描きますか?よろしくお願いします。

ちなみに以下のURLがそのクラス図です。
ttp://xtp0001.s3.x-beat.com/cgi-bin/up/source/Sonata_16502.png
208デフォルトの名無しさん:2005/09/08(木) 22:56:06
>>203
本当によんだの?
Blobはインターフェースだよ?
209デフォルトの名無しさん:2005/09/08(木) 23:02:43
>>201
おまいweb.xmlのコメント読んでねーだろ
cgiPathPrefix
 The CGI search path will start at webAppRootDir + File.separator + this prefix.
 [WEB-INF/cgi]
210デフォルトの名無しさん:2005/09/08(木) 23:05:04
>>207
流石にこれに答える気になるやつが居るとは思えんが。
どのように書きますかってあーた。

宿題スレのほうが妥当だと思う。
211207:2005/09/08(木) 23:10:26
>>210
え、宿題スレなんてあるんですか?

教えてほしいのは、どのようなクラスを作ればいいのかな?
ということですよ。細かいところはいいので。
ちょっと知恵を貸して下さい m(_ _)m

212デフォルトの名無しさん:2005/09/08(木) 23:20:50
図書館

利用者
貸し借り

コレくらいでいいよ(GUIクラスは除く)
213デフォルトの名無しさん:2005/09/08(木) 23:21:23
>>194
漏れはそれをTomcat4でやったとき成功したぞ。
ついでにSSIも動いた。
214デフォルトの名無しさん:2005/09/08(木) 23:23:47
>>211
先生の書いた通りでええのちがうかな
作って不都合あれば変えるでいいのでわ
215203:2005/09/08(木) 23:32:23
>208
ええと……java.sql.Blobそのものはインタフェースだということは理解しているつもりなのですが。
「Blobのインスタンス」と書いたのは一応「Blob(を各ベンダが実装したクラス)のインスタンス」のつもりでした。
(Blobがインタフェースだというのはそれこそドキュメントに明記してあることなんで、
こう書けば通じるだろう、と思い)

……ひょっとしてそういうこと以前のレベルで大間違いしてますか漏れ。
216デフォルトの名無しさん:2005/09/08(木) 23:41:07
>>208
インターフェースということだけ見せられても、それをプログラマが実装するのか
どこかで作られたインスタンスを使うのかまでは初学者じゃわからんだろ。

>>215
そもそも Blob はデータベースに格納されている BLOB のロケーション情報など
だけを保持し、部分的に取り出したりするためのものなので、大抵は既に実データが
データベース内に存在していることが前提。だから、Blob は ResultSet から取り出して
バイナリを取り出したり、または別レコードとして新規に INSERT するためのものだと
思えば良い。
217デフォルトの名無しさん:2005/09/09(金) 00:00:15
updateBlob等はPostgresのJDBCでは未実装だったはず

218デフォルトの名無しさん:2005/09/09(金) 00:36:22
>>190
Properties#load(InputStream)しかないのはasciiしか受け付けないから
(ascii以外のファイルはnative2asciiで変換する必要あり)。

StringやReaderはエンコーディングの情報がからんでくるので
Properties#load(String) やProperties#load(Reader) はない。
219デフォルトの名無しさん:2005/09/09(金) 00:41:33
>>137

SWTはネイティブコールをするオーバヘッドで、
最近改良された Swing の方が速い場合があるらしい
という話を少し前に聞いたことがある。本当かどうかは知らないが。

あと、ちょっとしか使ってないのでよく分からないが、
SWTのコンポーネントはほとんど(全部?)継承禁止になっていて、これは、
たぶん、使い勝手を優先してコンストラクタで微妙なことをしているので、
マルチスレッドが絡むと怪しくなるのが大きいのではないかと個人的には思う。
Swing のソースを見ると、Swingのスレッドセーフ性も多分にあやしいけどさw

SWTはそれ自体は、簡単な薄いUIのラッパーみたい感じで、かつ、
継承ができないので、Swing と比べると一見、機能的にしょぼそうに感じるが、
JFace という SWT 上に構築されているモジュールがあって、
モデルとコントロールの切り離しをサポートしてたり、便利そう。
220219:2005/09/09(金) 00:42:24
SwingのUIスレッドが勝手に走って勝手に処理するが、
SWTは自分でUI用のスレッドを提供する(イベントループを回したり)。
フレームワーク自体が根本から違う?
どっちが良いかは一概にはいえないけど。

しかし、最近のSWT は、AWT のコンポーネント
(したがってSWINGも)を表示できるらしい。
それまで作られてきたコンポーネントを表示できるのは、きっととっても嬉しい。

Eclipseの機能を切り出してアプリケーションフレームワークとした
RCPは、個人的には猛烈に期待。ただ、プラグインの開発自体、
Eclipseのフレームワークをよく理解する必要があるらしく敷居が高い。

なお、SWTは(当然ながら)ピュアJavaじゃないので、
Sun は良い顔していないはず。紛争になってない(?)のは、
共通の敵(?)がいるからだろう。
あと、軽視したくとも客観的に見ると重要と判断せざるを得ないのが、
ルックアンドフィール(見かけと触りごこち)で、
SWTはOSっぽいが、Swing はじゃばぁorzって感じ?(でも微妙に好き)
221デフォルトの名無しさん:2005/09/09(金) 00:45:21
リレーショナルデータベース使えますか?
222デフォルトの名無しさん:2005/09/09(金) 00:47:10
質問は明確に
223デフォルトの名無しさん:2005/09/09(金) 00:51:49
失礼しました。リレーショナルデータベースを
JAVAで扱うことは可能でしょうか?
224デフォルトの名無しさん:2005/09/09(金) 00:53:45
結局業務で使うならJFaceが必須になってくるけど
Swingのほうが柔軟に出来て問題ないしねぇ

Swingが快適になったのは1.4.1から
ハードウェアアクセラレーションが使えるようになったからね

SwingはSystemLAF使うとネイティブにかなり似せてあってばれないこともある
ただし、1.4までと5.0では完成度が違う
5.0はあんまりばれない
225デフォルトの名無しさん:2005/09/09(金) 00:54:16
>223
YES.
226デフォルトの名無しさん:2005/09/09(金) 00:54:36
>>223
業務系に強いJavaで出来ないと思うほうが不自然では
227デフォルトの名無しさん:2005/09/09(金) 00:56:30
javaのプログラムからRDBとやり取りしたいって事?
出来るよ
JDBCでぐぐってみれ
228デフォルトの名無しさん:2005/09/09(金) 01:06:10
リレーショナルデータベースいいたいだけちゃうんかと
229デフォルトの名無しさん:2005/09/09(金) 02:31:44
>>223
できなくてどうするんだと
できなきゃJavaの存在価値が薄れるくらい
そのあたりはJavaはかなり得意なほうに位置する
230デフォルトの名無しさん:2005/09/09(金) 02:33:32
リレーショナルデータベースってなに?
231デフォルトの名無しさん:2005/09/09(金) 02:34:45
まずぐぐれ
232デフォルトの名無しさん:2005/09/09(金) 02:52:13
情報通新事典にも載っていることなのに。
233デフォルトの名無しさん:2005/09/09(金) 02:54:20
リレーショナルでないデータベースといえば
CSVフォーマットやXMLフォーマットだね。

すべての個々のデータが関連しているからリレーショナル
だと解説してあったが。

XMLはツリーからぶら下がったところにしかデータの関連性がないから
リレーショナルでない。
234デフォルトの名無しさん:2005/09/09(金) 02:59:26
なんでjavaがRDB得意なん?ほかにいっぱいあるやんけ
235デフォルトの名無しさん:2005/09/09(金) 03:07:57
//だまってろはげ
236デフォルトの名無しさん:2005/09/09(金) 05:00:26
javaしか知らないからjavaはRDB得意だと思ってたんだな
237デフォルトの名無しさん:2005/09/09(金) 05:05:26
JavaでのRDB使用についての参考書籍は多いのでは。
238デフォルトの名無しさん:2005/09/09(金) 08:52:40
>>219
>Swing のソースを見ると、Swingのスレッドセーフ性も多分にあやしいけどさw

ここ笑うところですか?
239デフォルトの名無しさん:2005/09/09(金) 09:35:49
笑うところです
240デフォルトの名無しさん:2005/09/09(金) 11:28:50
書籍の数は問題じゃないな
241192:2005/09/09(金) 11:44:49
>>193
回答ありがとうございます。
なるほど SWT ですか・・・ちょっと思惑と離れていくなぁ。
ふと、Batik で縦書をやってるはずだと思い当たりました (writing-mode="tb")。
で、見てみたところ、横書きフォントをただ縦に並べただけでした・・・残念。
242177:2005/09/09(金) 12:02:39
すみません,JToggleButtonは選択状態の色は変更できないのでしょうか?
どなたか教えてください
243デフォルトの名無しさん:2005/09/09(金) 12:03:08
>>236
JavaとRDBMSは情報が多いしマッピングツールも多いし
期間系業務の仕事も多いからだろ。

大抵、期間系業務といったらRDBMSが使われるからな。

244デフォルトの名無しさん:2005/09/09(金) 12:44:07
>>243
期間限定のシステムのことか?w
245デフォルトの名無しさん:2005/09/09(金) 12:47:28
まさにデジドカ
246デフォルトの名無しさん:2005/09/09(金) 12:51:07
>>242
paintComponent()ってしってる?
247177:2005/09/09(金) 13:09:13
>>246
知りませんでした・・・
248デフォルトの名無しさん:2005/09/09(金) 13:37:22
>>242
ItemListenerをセットして、そこでsetBackgroundを呼んだらどう?
ちなみに、Xpでも実行する場合、
setContentAreaFilled(false);
setOpaque(true);
としておかないとボタンの色が見えないので注意
249 ◆6FWUET4y.6 :2005/09/09(金) 13:46:23
マルチスレッドで動作するJavaアプリケーションを2プロセッサのPCで動作させているのですが、CPUを100%使用してくれなくて困っています。
(タスクマネージャでCPU使用率を見ると、70〜80%しか使用していません)

このアプリは
・ 親スレッドが複数の子スレッドを作成する。
・ 子スレッドは数秒〜数十秒かかる計算を行い、結果を親スレッドに通知する。
という動作をするものです。

当初はsynchronizedメソッドの呼び出し部分で待ちが発生しているかと考えたのですが、親スレッドと子スレッドで共有しているオブジェクトは、子スレッドの計算結果を格納するオブジェクトのみでした。

また、スレッドのrun()メソッドの頭に for( double sum = 0; sum < 100000; sum += 1) {} を追加したらCPU使用率が100%になりましたので、環境の問題などで100%使い切れないという訳ではなさそうです。
(環境はSun JDK1.5、WindowsXP、CPUはAthlon64 X2です。)


この様な現象が起きる原因が全く分からないので、何かご存知の方は教えて頂けないでしょうか。
250デフォルトの名無しさん:2005/09/09(金) 13:54:26
>>249
プロファイラでwaitになってる部分調べてみれば?
251177:2005/09/09(金) 14:27:57
>>248
おっしゃる通りにしたら上手くいきました
有難うございます
252 ◆6FWUET4y.6 :2005/09/09(金) 14:31:36
250さん、ありがとうございます。
JDKにプロファイラがある事をすっかり忘れていました。

多少の進展がありましたので、報告させて頂きます。(長文失礼します。)


まず、javaコマンドに-Xprofオプションを付けて実行してみました。
以下が出力です(一部省略)。

---- 出力ここから ----
Global summary of 9.83 seconds:
100.0% 558 Received ticks
2.7% 15 Received GC ticks
8.2% 46 Compilation
39.1% 218 Other VM operations
0.2% 1 Class loader
0.2% 1 Unknown code

---- 出力ここまで ----

global summaryを見ると、Other VM operationsの割合が大きいのですが、これはインスタンス生成かGCだと思うので、試しに-Xmsで初期ヒープサイズを大きくしてみました。
その結果、CPU使用率が90%前後に向上しました。

インスタンスの生成・破棄に時間がかかっている可能性があるので、不要なインスタンスの生成をしていないかチェックしてみようかと思います。
253デフォルトの名無しさん:2005/09/09(金) 14:55:02
Javaオブジェクトに対してSQLを実行 - JoSQL 0.9公開 (MYCOM PC WEB)
"Javaオブジェクトに対してSQLを実行 - JoSQL 0.9公開"
http://pcweb.mycom.co.jp/news/2005/09/07/019.html
254デフォルトの名無しさん:2005/09/09(金) 15:07:05
メソッドなんですが、月に1〜12以外の数字を入れるとスローされるように
したのですが、return文を書かないと"return 文が指定されていません。"と出ます。
catch内のreturnを返さないようにする方法はないですか?

private int getTotalDaysInMoon(int moon, int year) {
try{
if (moon == 1 || moon == 3 || moon == 5 || moon == 7 || moon == 8 || moon == 10 || moon == 12 )
return 31;
else if (moon == 4 || moon == 6 || moon == 9 || moon == 11 )
return 30;
else if (moon == 2) {
if (((year % 4 == 0) && (year % 100 != 0 || year % 400 == 0)))// うるう年の判定
return 29;
else
return 28;
}
else
throw new Exception();
}catch (Exception e) {
logger.severe("getTotalDaysInMowon(月:1〜12, 西暦:yyyy)を正しく入力してください。");
e.printStackTrace();
>>>>>>>>>>>>>>>>return -1;<<<<<<<<<<<<
}
}
255デフォルトの名無しさん:2005/09/09(金) 15:09:17
すこし見づらいのでちょっと変えます。
private int getTotalDaysInMoon(int moon, int year) {
 try{
  if (moon == 1 || moon == 3 || moon == 5 || moon == 7 || moon == 8 || moon == 10 || moon == 12 )
   return 31;
  else if (moon == 4 || moon == 6 || moon == 9 || moon == 11 )
   return 30;
  else if (moon == 2) {
   if (((year % 4 == 0) && (year % 100 != 0 || year % 400 == 0))) // うるう年の判定
     return 29;
    else
     return 28;
  }
  else
   throw new Exception();
 }catch (Exception e) {
  System.out.println("getTotalDaysInMowon(月:1〜12, 西暦:yyyy)を正しく入力してください。");
  e.printStackTrace();
>>>>>>>>>>>>>>>> return -1; <<<<<<<<<<<<
 }
}
256249 ◆6FWUET4y.6 :2005/09/09(金) 15:12:58
ソースコードを見直して、インスタンス生成を抑制した結果CPUを100%使用する様になりました。ありがとうございました。
257デフォルトの名無しさん:2005/09/09(金) 15:15:30
>>254
そういうのは標準ライブラリ使った方がいい。

Calendar cal = new Calendar();
cal.setLenient(false);
try{
cal.set(year, moon,1);
return cal.getActualMaximum(Calendar.DAY_OF_MONTH);
} catch(Exception e){
// cal.set(int,int,int)にあり得ない月を指定すると例外が発生し、ここに来る。
// 処理内容は任せた。
return -1; // とりあえず-1を返してみた。
}
258257:2005/09/09(金) 15:16:19
しまった、Calendarはnew できないんだった。正しくはこうです。
Calendar cal = Calendar.getInstance();
259 ◆6FWUET4y.6 :2005/09/09(金) 15:19:17
> メソッドなんですが、月に1〜12以外の数字を入れるとスローされるように
getTotalDaysInMoonメソッドが例外を投げるなら、以下の様にすれば良いんじゃないでしょうか。

# メソッド内でthrowした例外をその直後でcatchしている意図が分からなかったもので・・・


private int getTotalDaysInMoon(int moon, int year) throws Exception{
  if (moon == 1 || moon == 3 || moon == 5 || moon == 7 || moon == 8 || moon == 10 || moon == 12 )
   return 31;
  else if (moon == 4 || moon == 6 || moon == 9 || moon == 11 )
   return 30;
  else if (moon == 2) {
   if (((year % 4 == 0) && (year % 100 != 0 || year % 400 == 0))) // うるう年の判定
     return 29;
    else
     return 28;
  }
  else
   throw new Exception();
 }
}
260デフォルトの名無しさん:2005/09/09(金) 15:24:16
Moonか・・・
261254:2005/09/09(金) 15:46:01
さっそくのレスありがとうございます!
>>257さん
そんなクラスやメソッドがあったのですね、探しきれていませんでした。
>return -1; // とりあえず-1を返してみた。
例外が発生した場合、returnを返さないようにしたいのです。

>>259さん
>throw new Exception();
例外を投げた後、その例外は呼び出し元に戻るのですか?
すいません、例外処理がいまだいまいちわからなくて。
262デフォルトの名無しさん:2005/09/09(金) 15:51:53
半角スペース消去はtrim()でできるけど
全角はどうすれば消えるの?
263デフォルトの名無しさん:2005/09/09(金) 15:53:26
大丈夫、全角スペースなんて見えてる奴いないから。
264 ◆6FWUET4y.6 :2005/09/09(金) 15:57:59
>>261さん
呼び出し元に戻ります。ただ、メソッドの引数の後に throws Exception と書いて、"このメソッドはExceptionを投げる"と明示する必要があります。

また、Exceptionにはいろんなサブクラスがあるので、APIリファレンスから適当なサブクラスを探してそれを投げると良いかと思います。
引数が不正な場合なら、IllegalArgumentException辺りかと思います。

# まぁ、>>257さんの方法に例外処理を付け加えた方が良いかと思いますが。
265デフォルトの名無しさん:2005/09/09(金) 16:05:57
>>263
いるよ
266デフォルトの名無しさん:2005/09/09(金) 16:26:44
>>252
後もうひとつ補足してみるか

JavaのGCがネックにはなってないようだけどこれも大規模になると
ネックになってくる場合があるけどその場合は
マルチコアやSMPなら並列GC設定することによって別スレッドに追い出したり
複数のスレッドでGCかけたりすることが可能っす
267デフォルトの名無しさん:2005/09/09(金) 16:34:31
classファイルでhoge$1.classとかいうファイルが生成されるんですが、
この"$1"ってどういう意味なんですか?
あと、どういった場合にこのファイルが生成されるんですか?
268デフォルトの名無しさん:2005/09/09(金) 16:39:58
>>267
インナークラスがある時に出来たと思う
269デフォルトの名無しさん:2005/09/09(金) 16:48:20
半角スペース消去はtrim()でできるけど
全角はどうすれば消えるの?
270デフォルトの名無しさん:2005/09/09(金) 16:53:50
>>268
その場合って、hoge$[インナークラス名].classですよね?
インナークラスを定義していないのに、hoge$1.classとかhoge$2.classとかいう
classファイルが生成されているんです。
271デフォルトの名無しさん:2005/09/09(金) 16:54:45
>>269
正規表現つかったら?
272デフォルトの名無しさん:2005/09/09(金) 16:56:17
自作で拡張trimを作ればいいじゃない
273デフォルトの名無しさん:2005/09/09(金) 16:57:39
>>270
ところで無名インナークラスって知ってるか?
274デフォルトの名無しさん:2005/09/09(金) 17:03:07
>>273
ありがとうございます。解決しました。
無知ですみませんでした。
275252 ◆6FWUET4y.6 :2005/09/09(金) 17:18:47
>>266さん
補足ありがとうございます。
検索してみたとこり、http://www.nminoru.jp/~nminoru/java/cms/concurrent_mark_sweep.html 等が参考になりそうなので、勉強してみようと思います。
276254:2005/09/09(金) 17:26:00
>>264さん
>また、Exceptionにはいろんなサブクラスがあるので、APIリファレンスから適当なサブクラスを探してそれを投げると良いかと思います。
>引数が不正な場合なら、IllegalArgumentException辺りかと思います。
IllegalArgumentExceptionは呼び出し元ですでに使っているので、使えませんでした。
だから、Exceptionをスローしようとしたのですが、できませんでした。
Exceptionはスローできないものなのでしょうか?
277デフォルトの名無しさん:2005/09/09(金) 17:30:12
>>276
できるよ。
メソッドにthrows書けよ。
278デフォルトの名無しさん:2005/09/09(金) 17:33:04
VMも含めて1個のexeファイルにする方法はありますか?
OSはWindowsXPです
279デフォルトの名無しさん:2005/09/09(金) 17:35:58
>>278
gcj
280254:2005/09/09(金) 17:46:33
>>277
ありがとうございます。無事できました。
281デフォルトの名無しさん:2005/09/10(土) 01:17:43
当方eclipseでjavaの勉強を始めたばかりです。

教科書を見ながらソースを写して勉強しているのですが
なぜかエラーが出てしまいます。
「Finallyを挿入してください」だそうですが
教科書には載ってません。
また指示どおりFinallyを追加しても
エラーが消えません。

幾つかソースを入力してみましたが、時折↑のエラーが出て
コンパイルする事が出来なくなります。

エラーの回避方法をご教授ください
282デフォルトの名無しさん:2005/09/10(土) 01:27:20
ソース見せて
283デフォルトの名無しさん:2005/09/10(土) 04:25:50
EclipseのQuickFixでとりあえずエラーだけは消せそう(意図通りに動くは
また別の話として…)だけどな。
284デフォルトの名無しさん:2005/09/10(土) 04:49:05
プログラム自体はじめて勉強してるんだけど
なんとなくEclipseを使わずに学習したほうがいいかな?と思ってます。
実際はEclipse使って学習したほうがよいでしょうか?
285デフォルトの名無しさん:2005/09/10(土) 05:15:17
「finally を挿入してください」なんてどんなときにでるんだろ?
何となく中括弧の対応が取れていない悪寒
286デフォルトの名無しさん:2005/09/10(土) 05:23:15
>>284
そんなことはないと思うが、まぁコマンドライン+テキストエディタで
使えるだけの知識 (環境作ったり実際に作業したり) を持っておいても
損は無いでしょう。
287デフォルトの名無しさん:2005/09/10(土) 09:01:36
>>284
コマンドラインからの入力の勉強も一つの勉強
288デフォルトの名無しさん:2005/09/10(土) 13:00:33
JavaDocを作成するantファイルを作ったのですが、
左にパッケージのフレームが作成されません。
「全てのクラス」のフレームだけが表示されます。
なにかオプションなどが必要なのでしょうか?

<target name="apidoc">
<javadoc
sourcepath="${src}"
destdir="${apidoc}"
author="off"
version="on"
use="on"
windowtitle="Sample"
source="1.4"
charset="Shift_JIS">
<classpath>
<path refid="id.compile.classpath"/>
</classpath>
<fileset dir="${src}">
<include name="***.java"/>
</fileset>
</javadoc>
</target>

289デフォルトの名無しさん:2005/09/10(土) 13:02:36
コマンドラインで書くほうがカッコいい。
Eclipseなんて子供が使うもんだ
290デフォルトの名無しさん:2005/09/10(土) 13:03:57
先日より会社でWeb開発を始めたのですが質問させて下さい。

Webでのユーザ認証というのはどういった仕組みで行うのでしょうか?
一応、自分でやってみた事と疑問点を書きます。
尚、学生時代にHTMLやCGIなどはちょっとだけ触ったことがあります。
また、Tomcatでの認証は試してみましたが、今回の質問はTomcatなどを使わない認証について
ご教授下さい。

一応、動作確認環境として
WindowsXP Pro SP2、JDK1.5.0_04、Tomcat5.5.9、Eclipse3.0.2、MyFacesを使用しています。

これまでやった事は、
・ログイン画面を作成(ユーザ名とパスワードの入力欄、サブミットボタンを配置)
・確認用にログイン成功時のWelcome画面(ようこそと表示されるだけ)

疑問に思っている事は、ログインしたという情報をどうやって保持するのか?という事です。
ログイン画面でユーザ名とパスワードを入力してサブミットさせ、
その情報を元にデータベースやファイルなどでユーザを検索する。(場合により暗号化?)
ユーザが見つかった場合はログインさせる。
見つからなかったらログイン画面に戻る。

ここまでの流れはいいのですが、”ログインしました”という情報をどうやって持つのか?
という疑問が湧きました。
セッションなどで例えばLOGINというキーにTrueといったように管理するのでしょうか?
そうした場合、セッション情報を弄られたらどうにもならないって事ですよね?

さらに疑問は、画面によってはログインされていても会社の部署とかの権限(ロール?)でもって
画面を使える・使えないの制御が必要だと思うのですが、これもどうするのでしょうか?
ログインしたのは誰?という情報を保持していないといけないと思うのですが、
セッションなどにユーザIDなどを埋め込んでおいて画面表示前に検証するのでしょうか?
この場合でも、ユーザがセッション情報を書き換えて上司などになりすます事が可能では?
291デフォルトの名無しさん:2005/09/10(土) 13:41:20
>>290
HttpSession 使え。
弄られたら? HTML の HIDDEN 項目と勘違いしてるのか、誰が作ったかも分からない
プログラムと一緒に動かす気なのか… 権限どうするかって、自由に作れよ。

どうするかどうするかって、なんか Web も Java も知らない管理職が要件定義
してるみたいだな。
292290:2005/09/10(土) 14:16:21
あ、そうかセッションの情報はサーバに格納されてるんですね。
だから、クライアントが分かるのはセッションIDだけで、
クライアントでセッションIDが分かってもサーバに格納されている情報までは見れないんですね。

という事は、セッションに情報を格納するためには、
セッションID毎にキーと値を格納しないといけないって事なんですか?
293290:2005/09/10(土) 14:17:57
>>291
>どうするかどうするかって、なんか Web も Java も知らない管理職が要件定義
>してるみたいだな。

いえ、4月に入社したばかりで、WebもJavaもとりあえず研修で教えてもらった程度で、
今、先輩が設計したものを実装できなくて困っていまして・・・
294デフォルトの名無しさん:2005/09/10(土) 14:19:06
>>293
その先輩に聞きなさい
295デフォルトの名無しさん:2005/09/10(土) 14:24:17
まあセッションID書き換えれば成りすましはできるん違うか
HTTPとクッキーなら
296281:2005/09/10(土) 14:31:52
ソースを貼ろうと再入力したところ
今度は難なく実行できました。

お騒がせいたしましたorz

昨日は確かに正確な入力したのに出たんですよぅ(´・ω・`)ドウシテ?
297デフォルトの名無しさん:2005/09/10(土) 14:41:08
そりゃ正確な入力じゃなかったからだろ。
281でもfinallyのfを大文字にしてるしさ。
自分では気づいていなくても間違っていることは多い。
298538:2005/09/10(土) 15:14:51
JAVA + Oracle で質問です。
JAVAからストアドをコールしてOUTパラメータを取得したいのですが、
そのパラメータが配列の場合にどうすればいいのか分かりません…
どなたかお教え頂けないでしょうか。

-----------------------------------------
DB側の情報です。
TYPEt_stringIS TABLE OF VARCHAR2(10)
INDEX BY BINARY_INTEGER;

PROCEDURE PLUS_INC(
i_numINNUMBER,
o_numOUTNUMBER,
o_stringOUT VARCHAR2,
o_stringArrayOUT t_string
) IS
299298:2005/09/10(土) 15:15:30
すいません。538は間違いです…
300デフォルトの名無しさん:2005/09/10(土) 16:37:57
書き込みさせていただきますm()m
ネットワークのプロトコルをJAVAを用いてシュミレーションするにはどのように
行えばいいのでしょうか?
JAVAの知識がほとんどなくてまったくわかりません。。
どのたか教えてくださいm()m
わかりやすい参考書やサイトなどを教えていただけたらうれしいです。
よろしくお願いします
301デフォルトの名無しさん:2005/09/10(土) 16:46:58
>>300
> ネットワークのプロトコルをJAVAを用いてシュミレーションするにはどのように
> 行えばいいのでしょうか?

JAVAとは何のことでしょうか?
シュミレーションというのも意味がわかりかねます。

> どのたか教えてくださいm()m

どのたかとは?
302デフォルトの名無しさん:2005/09/10(土) 16:48:56
揚げ足とってやるなよ。
SocketからとったStreamに対してプロトコルに沿ったデータを流すだけの話だな。
でもホントにシミュレーションでいいならStreamに流す必要さえないな。
303デフォルトの名無しさん:2005/09/10(土) 16:52:01
>ネットワークのプロトコルをJAVAを用いてシュミレーションする
質問の意味がわからん
304デフォルトの名無しさん:2005/09/10(土) 16:52:04
>>302
それはプロトコルをシミュレーションしているのではなく
プロトコルに応じたサービスをシミュレーションする方法の一つだな
305デフォルトの名無しさん:2005/09/10(土) 16:53:12
>>303
なら黙っとけ
306名無しさん@そうだ選挙に行こう:2005/09/10(土) 16:56:12
>>300
リレーショナルデータベースいいたいだけちゃうんかと
307デフォルトの名無しさん:2005/09/10(土) 16:57:01
>>305
おまえはしんどけ
308デフォルトの名無しさん:2005/09/10(土) 16:57:01
リレーショナルデータベースってなに?
309名無しさん@そうだ選挙に行こう:2005/09/10(土) 16:57:15
>ネットワークのプロトコルをJAVAを用いてシュミレーションする
質問の意味がわからん
310デフォルトの名無しさん:2005/09/10(土) 16:57:36
>>307
おまえは生きろ
311デフォルトの名無しさん:2005/09/10(土) 16:58:40
わかった
312名無しさん@そうだ選挙に行こう:2005/09/10(土) 17:00:29
と、いうことで >>300 は無事解決ですね
それでは次の質問どうぞ
313名無しさん@そうだ選挙に行こう:2005/09/10(土) 17:08:00
プログラマの質
VB=COBOL>java
314名無しさん@そうだ選挙に行こう:2005/09/10(土) 17:21:35
>>309
仮想的なネットワークのモデルをJavaで作って、
プロトコルの安全性やらなんやらを定量的に検証したいのだろう
315名無しさん@そうだ選挙に行こう:2005/09/10(土) 18:15:03
>314
トランスポート層のプロトコルをシミュレートするってこと?
それとも、もっと下の層かな?
316名無しさん@そうだ選挙に行こう:2005/09/10(土) 19:57:10
すみません
物理層ですm()m
317名無しさん@そうだ選挙に行こう:2005/09/10(土) 20:01:30
>>288 これを参考にしてみるといい。見づらいJavadocを読まされるのはたまったもんじゃないのに教えとく
<javadoc sourcepath="${source}"
packagenames="${packagenames}"
excludepackagenames="${excludepackagenames}"
destdir="${javadoc}"
author="true"
Version="true"
Overview="${source}/overview.html"
Encoding="${encoding}"
charset="${encoding}"
docencoding="${encoding}"
Verbose="yes"
Splitindex="true"
Windowtitle="WindowTitle"
Doctitle="DocTitle"
Header="Header"
Footer="Footer"
bottom="<span style="font-style:italic;"> Copyright &copy; 2005 Company Name. All Rights Reserved </span >"
Use="True"
additionalparam="-J-Dhttp.proxyHost=host -J-Dhttp.proxyPort=3128"
>
<link offline="false" href="http://java.sun.com/j2se/1.5.0/docs/api/" />

<!--
<link offline="true" packagelistLoc="file://localhost/C:/j2sdk1.5.0_04/docs/ja/api/" />
-->
</javadoc>
</target>
318名無しさん@そうだ選挙に行こう:2005/09/10(土) 20:04:30
>>313
そ考えるのはプログラミング熟練者の質のことをいっているのだろうか。

俺の場合、こう考える


プログラマの質の高さ(高い順)
Smalltalk > Java > C# > D > VB.NET, COBOL.NET, COBOL2000 > C++ > C > VB, COBOL
319名無しさん@そうだ選挙に行こう:2005/09/10(土) 20:05:55
>>298
果たして、このスレにストア度に詳しい人間がどれだけいることか。
ストア度だけならDB板のほうがよさげな予感。

@ITにあるJavaでストアドを実行するサンプルは三鷹?
320名無しさん@そうだ選挙に行こう:2005/09/10(土) 20:06:50
>>316
JNIを使え
321名無しさん@そうだ選挙に行こう:2005/09/10(土) 20:07:41
>>296
Eclipseはプロジェクトをクリーン、F5で更新するとかしないと
古いエラーが残ったままになることがあるぞ。
322名無しさん@そうだ選挙に行こう:2005/09/10(土) 20:09:55
>>289
エディタとして使う分だけでもEclipseはバカにならないぞ。
プラグイン拡張もバカにならない。
44億ドル相当のIDEをタダで使えることとプラグイン拡張がEclipseの最大の売りなだけに。

格好良いといだけでIDEの使用を拒むのは勿体ない。

323名無しさん@そうだ選挙に行こう:2005/09/10(土) 20:43:00
>>318
これjavaしかできんアホプログラマーがc++プログラマーよりアホだと言うのか
324名無しさん@そうだ選挙に行こう:2005/09/10(土) 20:46:23
自分自身の評価のみが自分の心の支えなんだね
325名無しさん@そうだ選挙に行こう:2005/09/10(土) 20:51:24
>>318くそライブラリで口だけ達者なsmalltalkプログラマが1番上?
326名無しさん@そうだ選挙に行こう:2005/09/10(土) 20:52:00
JNI〜JNI〜JNIギスカーン〜
327名無しさん@そうだ選挙に行こう:2005/09/10(土) 21:14:41
>>322
なんでいつもEclipseを勧める人は金のことをいうのだろう・・・
328名無しさん@そうだ選挙に行こう:2005/09/10(土) 21:15:24
>>327
馬鹿でも理解できるから
329名無しさん@そうだ選挙に行こう:2005/09/10(土) 21:17:21
乞食だから
330名無しさん@そうだ選挙に行こう:2005/09/10(土) 22:33:03
>>289
その気持ちはわかるが

俺は一度リファクタリング機能を使ってしまってから
もう後戻りできない体になってしまったよ。
331名無しさん@そうだ選挙に行こう:2005/09/10(土) 22:40:31
日曜プログラマにはお似合いだよ
332名無しさん@そうだ選挙に行こう:2005/09/10(土) 22:46:59
まあ、いくらなんでも「コマンドライン」はないだろ
333名無しさん@そうだ選挙に行こう:2005/09/10(土) 22:50:14
>>332
どういう意味? 論争にはまったく関係してない初心者なんだけど
ちょっと気になったもので。
334名無しさん@そうだ選挙に行こう:2005/09/10(土) 22:54:29
コマンドライン書くほうがかっこいいって
そんなところにこだわるあたりが初心者御用達言語って感じだね。
335名無しさん@そうだ選挙に行こう:2005/09/10(土) 22:55:18
でも、コマンドラインとか使わないで行き成りEclipseとか行くから
オプションとかクラスパスとか理解してないやつ多いんだよな。

それに、実際に仕事でも居たんだけど、ユーザの環境に持っていって、
ソースの一部が開発・テスト用に固定で書いていた部分が残ってたんだけど、
普通なら、サーバのLinuxでviとかユーザのPC1台借りて、その部分だけ書き直してコンパイルするだけなのに、
一々会社に戻ってきたんだよな・・・

しかも、それ出張。
東京から名古屋まで出張行って、客先のサーバに入れて、そういった不具合?があって、
そのまま帰ってきやがった。
でもって、次の週にまた出張。
当然、そんな事で追加の出張料金を客から貰う訳にいかないから、全額会社負担だよ・・・
336名無しさん@そうだ選挙に行こう:2005/09/10(土) 22:55:26
コマンドラインでjavac・・
ってのはあまりにも非効率って事だろ
337名無しさん@そうだ選挙に行こう:2005/09/10(土) 23:00:45
>>333
上級者はテキストエディターなんか使わず
コマンドラインで書くという意味だろう
338名無しさん@そうだ選挙に行こう:2005/09/10(土) 23:06:54
$ cat > Hoge.java
とか
> copy con Hoge.java
か。うーむ、流石にそれはせめてスクリーンエディタが欲しい。
(つーかWindows、なんでeditを葬るかなぁ……vim入れれば済むけど)
339名無しさん@そうだ選挙に行こう:2005/09/10(土) 23:10:14
そういえばJavaにはMakefileないなぁ
340名無しさん@そうだ選挙に行こう:2005/09/10(土) 23:11:06
Antがある
341名無しさん@そうだ選挙に行こう:2005/09/10(土) 23:11:29
印刷用ツールというかライブラリについてお伺いします。

WWWベースのクライアント−サーバーシステムと、スタンドアロンで動作する
リッチクライアントシステムの二つの方法論で、それぞれ別個の業務システムを
Javaで開発しようとしています。

その二つのシステムの印刷方法について、サーバーサイドでPDFを生成するツールと、
クライアント側でプリンターに出力するライブラリを探しています。フォーム専用エディター
で帳票を設計して、それとテキストデータを重畳して(またはAPIにて各フィールドに
データをセットして)印刷する、っていうヤツです。VB用ではいろいろありますね。

そこでお伺いしますが、皆さんがお使いまたはご存じの印刷システムの中で、
おすすめのものがありましたらお教え願います。希望としては、サーバーサイドと
クライアントサイドの印刷システムが同一製品群となっていて、なおかつ安価であ
れば嬉しいです。というのも、帳票エディターの操作方法や印刷テクニックを複数
習得する必要がないからです。

具体的には、グレープシティの「エリクサーレポート」やHOSの「シーオーリポーツ」
みたいなものです。(これらは悪くはないのですが、ちょっと高いです)

よろしくお願いいたします。
342名無しさん@そうだ選挙に行こう:2005/09/10(土) 23:11:58
>>338 edlin
343名無しさん@そうだ選挙に行こう:2005/09/10(土) 23:14:59
>>339
馬鹿だね
344名無しさん@そうだ選挙に行こう:2005/09/10(土) 23:36:52
>>341
お前さんの要求をみたせるかは分からないが、PXDocなんてどうだ?
俺は殆どの案件(Javaや.NET、サーバ・クライアント問わず)で帳票はこれ使ってるけど、特に問題はない。


ttp://www.pxdoc.com/
345名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:07:08
>>317
ありがとう!参考にしてみます
346名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:09:08
>>335
ノートPCに開発環境とソースいれてもってかなかったの??

俺もヘタレだからLinuxでビルドかけるのに半日はかかりそう・・
347名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:13:07
>>323
C++もJavaできない奴が何を意味不明なことを言っているんだい。
アホが質の高いプログラマになれるわけないだろ。
348名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:13:59
>>331
リファクタリングすると日曜プログラマになるんだ。へぇーしらかなったなー。
初耳だー
349名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:15:04
>>335
実はいきなりEclipseに逝く香具師は意外と少ないと言ってみる。

JBuilderやNetBeansを使っているとクラスパス理解してない香具師が出たり
350名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:16:07
>>335
お前の会社はVNCもVMWareも使えるスキルがアル奴がいないのか
351名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:18:29
>338->339
Ant + Emacsにすればいいだろが

>>337
catやmoreだけを使うのは賢い上級者とは思えないな。
antで設計したほうが賢い。

352298:2005/09/11(日) 00:20:10
>>319
@ITにあるサンプルは拝見させて頂きました。
JAVAからOracleへのストアドのコール方法は書かれていましたが、
残念ながら配列での受け渡しではありませんでした。
どちらかといえば、Javaの記述方法についての疑問だったので
このスレに書かせていただきました。
DB板にも質問をしたいと思います
ありがとうございました。
353名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:25:05
○×式の問題で最後に正解と不正解を集計してくれる
プログラムを書いてください。
100問くらい作れればうれしいのですが。。 
354名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:25:23
>>349
JBuilderはともかくNetBeansは4.0未満なら
逆にクラスパスが前面に出ていて初心者にはきつかったような
355名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:30:45
>>347
javaしか覚えられないからって嫉妬しちゃ駄目だぞ
cとかは無理だろうけどHTMLでもおぼえたら?
356名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:31:58
>>353
宿題?
宿題なら専用スレがあるよ
357名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:32:42
ば、馬鹿にするな
HTMLぐらい打てるわい
358名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:36:43
>>346
まさかとは思うが、>>335の会社では
クラスパスの設定をすべて
環境変数のみで大量に列挙してるんじゃなかろうか。
最悪の場合、すべて絶対パスで、しかもディレクトリを移動すると
膨大なJARファイルへのパスを変更しないといけないなんてこともあったりしてな。
WindowsとLinuxではパスセパレータもファイルセパレータも違うし変数名の表記も%を使ったものと
$を使ったものという違いもあるし、同じLinuxやUNIXでもbashとtcshでは文法もだいぶ違うし。

もしそうだったら、はEclipseなどのIDEを使いすぎてヘタレになったとかじゃなくて
そのようなクラスパスを設計した奴が悪い。すべて同じ奴が
やったっていうならそいつの責任だが、
クラスパスを効率よく設定できない奴が最初にプロジェクトに関わって
そいつにやらせると、あとからプロジェクトに入ってきた人が
非常に迷惑する。クラスパスに限ったことじゃなく、プロパティファイル、
設定ファイル、Tomcatの設定、ファイル入出力プログラムなどすべてに
おいてこういうウザイことをする奴が結構いる。
不思議なことに、なぜかC/C++経験者に多い。

359名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:37:02
C++を知っているならオブジェクト指向を理解した影響でどうすれば開発効率を
挙げられるか必然的に考えられるようになってくるが、C++を知っていると
言っている奴に限ってなぜかオブジェクト指向もソフトウェア工学も知らない奴が多い。なんとも皮肉だが、
そいつらのせいでソースコードに絶対パスを平気でハードコーディングしたり
設定ファイルや設定情報が分散したり、
設定を変えるたびにコンパイルしてJARし直さないといけないなんて下らないことを
しないといけなくなる。で、そいつらがリーダーになったら最悪だ。
今度は、「ソースコードのこの行からこの行までは弄るな。」
「メソッドはprivate staticにしろ」などと細かくうるさいことを言い出す。
実際そういう目に遭ったぜ。まったく。バカを説得するのも随分苦労したぜ。
サンプルを見せて初めて理解できるものだが、そいつの場合、「時間がない」
といって逃げる始末。で、マネージャに話して初めてマネージャのみが状況を理解してくれた。
リーダーはだめだめだ。C++を知っている癖になぜそんなこともわからないのかと。
private staticばかりつかうなと。しかも同じクラスの中にすべてのコードを埋め込むなと。
ちゃんと他のクラスに委譲しろと。
360名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:39:45
>>355
スレ荒らしかお前は。
Javaしか覚えられない奴なんぞこの世にはおらんというてるだろが。
俺はJavaを習得するまえにすでにCを習得している。
クラスもろくに使えないCがそんなに凄いとは思えないが。
Cでもクラスは作れるとか継承できるとか言いそうだが、言うだけアホだぞ。
ソフトウェア工学上Cだけでそんなことをするのはあまりにも愚かだ。

361名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:40:28
c++できるのにjavaの案件に来てるんだからc++あんまできないってことでしょ
362名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:40:53
妄言「Javaしか覚えられない」を連呼するバカはスルーしろ

363名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:42:47
>>361
いや、そいつはダメな奴だったよ。
オブジェクト指向もろくにわかっていないことはすぐにわかる。
そいつのソースコードを見ただけで一目瞭然。
staticなメソッドばかりで構成されていれば
そいつのオブジェクト指向の理解度はたかが知れている。

ひとつのクラス内の行数が無駄に多い、
メソッド内の行数が1000行を超えている奴はレベルがかなり低い奴だ。
364名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:43:26
よって、その程度のオブジェクト指向や開発効率も
考えられない奴が、C++ができるなんて威張る資格はないってことだ。
365353:2005/09/11(日) 00:47:00
宿題じゃないです。簿記とか色々な問題作成アプリ作りたいなぁと
思ったので。

自分が思うには
int a[];
a = new int [100];
a[0] ="問題";

みたいな感じかな?と思うのですが、激しく間違ってるようなきもします。
いかんせんJAVAの勉強が圧倒的にたりません。
366名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:47:02
>>363
そう言ったつもりなのだが
というかクラスも1000行以下にしてくれよ
367名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:48:39
今見直して思ったのですが
365では問題は作れても答えが出せない、正解なら〜 不正解なら〜 と
分岐させなければならない気がしてきました。
自分が思ってたよりはるかに高度な気が。。
368名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:49:47
昔はC++ができただけで凄い、最強だと言われていた時代もあったろうけど
それも過去の話よ。

中国人が、素手で木材に釘を打てるのは凄いだろうけど、
ちゃんとトンカチや道具を正しく使っている人間のほうが賢く、仕事ができる奴だと見なされる。
トンカチがなかったらどうするって?
まさかそこまでして素手で木材に釘を打つなんて馬鹿げたことは賢い人間ならやるまい。
トンカチを探してくるか、買うか、他で代用するなどの工夫をするだろう。

C++で読みにくいコードを書いて凄い凄いなんて言っているのはあまりんもみっともない。
それどころかだらしない。部屋の整理ができない人間以上にだらしない。
オブジェクト指向も理解できない人間の書くコードは非常にだらしない。

C++でソースコードを無意味なtypedefや演算子オーバーロードで覆い尽くして書いた本人にしか
解読しにくようにして、自分の立場を守るために、
汚いコードをわざと書いて煙を巻くというみっともない牛歩戦術をして甘い汁を吸う時代は終わった。


369名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:54:42
>>366
そはも理想だけど、
checksyleを使ってコーディング規約をチェックしつつ
Javadocコメントとメソッド数が多いとクラスは軽く1000行超えてしまうものがたまにあるよ。
メソッドを他のクラスに委譲しても。

大抵のコードは1000行も超えないけれども。

Beanを作るとフィールドの数が数十あるだけでその分のsetter/getterメソッドの
数だけ行数が増えて、さらにJavadocコメントを追加すると1000行は軽く。
フィールド数10以上なんて設計に問題ありかな?
もう一つBeanを作って集約でまとめたほうがいいかな。
370名無しさん@そうだ選挙に行こう:2005/09/11(日) 00:56:59
>>353
ServletやPHP, Perlで作れそうだなそれ
問題フォーマットパターンが一つに定まっていれば
かなり短いコードで実現できる。
371名無しさん@そうだ選挙に行こう:2005/09/11(日) 01:00:40
>>368
過去の話って、javaはjavaだけで動くのか?
372名無しさん@そうだ選挙に行こう:2005/09/11(日) 01:01:57
バカは何が言いたいのかね。
動くわけないだろうが
373名無しさん@そうだ選挙に行こう:2005/09/11(日) 01:10:06
30過ぎてプログラム弄ってる奴の事だろバカって
374名無しさん@そうだ選挙に行こう:2005/09/11(日) 01:10:44
>>368
とりあえず
あまりん だけ気になった
375名無しさん@そうだ選挙に行こう:2005/09/11(日) 01:12:35
あまりんにも

訛りだ訛り
376名無しさん@そうだ選挙に行こう:2005/09/11(日) 01:14:14
>>372
それくらいは知ってたか。でもまだ理解できないのか
377名無しさん@そうだ選挙に行こう:2005/09/11(日) 01:15:41
>>373
30過ぎてもオブジェクト指向を知らない奴のほうがみっともないと思う。
だが、それが現実なんだがな。なんとも皮肉なことよ。
で、そういう奴らが、無能で無知な営業やマネージャや丸投げ会社の担当
になって若い世代に対して無茶をいって見下して
うるさいことを言い出す。

30過ぎるまでにこういう奴を反面教師として見ておかないとな。

おれは30過ぎてもプログラミングやってるだろうよ。
だが、それ以外の重要なことももちろんやるともさ。
378名無しさん@そうだ選挙に行こう:2005/09/11(日) 01:17:36
>>376
ぼやけたことを言って、
30過ぎて過去の栄光に浸りすぎてトチ狂ってもうたか?
オブジェクト指向を知らないことは図星かな。
それを隠すために何かを言いたそにしていることは面白いほど察しがつくぞ。
何かをバカに従っているが逆にバカにされて腹を立てているとな
379名無しさん@そうだ選挙に行こう:2005/09/11(日) 01:19:40
そのうち、Javaを叩きたくてしょうがない彼は誤変換の揚げ足取りとかあら探しをしながら暴走しそうだから、
もうそろそろスルーよろ


380341:2005/09/11(日) 01:27:50
>>344
ご紹介ありがとうございます。

これってXMLフォーマットで出力したデータを、専用ビューワで表示、印刷する
という方式なんですね。なるほど、こういうやり方もあるのか。たしかに、システム
の動作環境は選ばないですね。クライアントにビューワがインストールされて
いればいいわけで。

ただ、ドキュメント管理というか今までの習慣というか開発チーム管理の点から、
なんとなく帳票作成エディターでレイアウトを作成するという方式が好きです。

また、クライアントにビューワをインストールするという方式は、リッチクライアント
システムであれば問題ないのですが、WWWによるクライアント-サーバー
システムだと、ユーザにビューワをインストールしてもらう必要がありそうで、
ちょっと運用が大変そうです。

皆様がご使用中のツールやライブラリがございましたら、ご紹介のほどお願いいたします。
381名無しさん@そうだ選挙に行こう:2005/09/11(日) 01:28:24
>>378
君にとってはオブジェクト指向が難しいことみたいだね
382名無しさん@そうだ選挙に行こう:2005/09/11(日) 01:37:20
>>377
まぁ頑張れ
だがスレ違い
383名無しさん@そうだ選挙に行こう:2005/09/11(日) 02:09:20
>>381
おいおい、今までのレスを見るとどうみてもむしろキミにとってのほうが
オブジェクト指向が難しいようだが。

それより、ちゃんと選挙に行けよ。

384名無しさん@そうだ選挙に行こう:2005/09/11(日) 02:24:40
今夜の異論〜反論〜オブジェクト指向
385名無しさん@そうだ選挙に行こう:2005/09/11(日) 02:26:58
>>383
なにをどう読んだらそういう理解になるんだ?そんなことじゃjavaすら読めないぞ
386名無しさん@そうだ選挙に行こう:2005/09/11(日) 02:31:35
もうさ、俺のために喧嘩するのやめてよ。
387名無しさん@そうだ選挙に行こう:2005/09/11(日) 02:38:29
気が付けば、

名無しさん@そうだ選挙に行こう になっているぞ

>>385
キミの行っているいみもわからないぞ。
とりあえずキミは>>383の言うとおり、選挙にいきなさい。

388名無しさん@そうだ選挙に行こう:2005/09/11(日) 10:23:03
public class A{
 public static B B1;
 public static B B2;
//ここでBクラスを使ったB1かB2のどちらかを乗せる(同時に稼動する事はありません。)
}
class B extends JFrame{
 public static C C1;
 public static D D1
//ここにJTextAreaの拡張であるCを乗せる
//その後、まったく関係ないDクラスのメソッドで、JTextAreaの拡張であるtextCを動かしたい。
}
class C extends JTextArea{
}
class D{
}
*****************************
イメージはこんな感じです。
Aの上にB1かB2のどちらかが稼動。(同時に稼動する事はありません。)
B1かB2の上にJTextAreaの拡張であるC1が稼動。
このC1をまったく関係ないクラスD1のメソッドで動かしたいのですが、
B1かB2のどちらが稼動しているかがAにしか情報が無いのでA.B1.D.setText("")のようにできません。
return("")で値を返す方式だとメソッドがそこで終了してしまうので、私の目的上これは困るのです。

なんかいい方法を教えて。
まぁモチツケよ
390名無しさん@そうだ選挙に行こう:2005/09/11(日) 10:43:27
現在、Struts1.2+Tomcat5.5を使って開発していますが、JSPにて大量データを一覧表示する際に、
1ページn行とかで数ページに渡って表示させる(何というのかがわからない)するような
ライブラリがあったら教えてください。

日本語でも問題なく使えて、できれば、ヘッダ行でソートもできるのがいいです。
ASP.NETのDataGridみたいな感じのやつです。
391名無しさん@そうだ選挙に行こう:2005/09/11(日) 11:47:13
>388
(1) instanceof で何とかする。
(2) Reflection で何とかする。
(3) 共通な操作を interface に定義して何とかする。
392名無しさん@そうだ選挙に行こう:2005/09/11(日) 13:32:31
>>390
JSFならそういうのあるけど、Strutsはたぶん、無い。
高価な商用IDEにStrutsベースの独自フレームワークが組み込んであって、
そういう機能が実装されている可能性はあるけど・・・
393名無しさん@そうだ選挙に行こう:2005/09/11(日) 14:13:46
>>388
なんだかよくわからんが

> B1かB2のどちらが稼動しているかがAにしか情報が無いので
なら、A にその責務を持たせる。

具体的には、
B1かB2にかの区別をしなくて済むような段階のオブジェクトを返したり
B1かB2かを適切に選択して値を設定するようなメソッドを A に持たせたり?
394名無しさん@そうだ選挙に行こう:2005/09/11(日) 14:26:48
JOptionPane で「いいえ」にデフォルトのフォーカスを当てときたい場合はどうすれば良いの?
395名無しさん@そうだ選挙に行こう:2005/09/11(日) 14:31:47
396名無しさん@そうだ選挙に行こう:2005/09/11(日) 17:16:10
自民党に一票投じてきた俺様。

>>391
とりえあずB1かB2をうごかすのはパラメタライズするという手もあるんでない?
instanceofを無くすためにGenericsができたようなもんだし。

public class A<T extends JFrame>{
 public static T B1;
 public static T B2;
}
class B extends JFrame{
 public static C C1;
 public static D D1;
 public do(){
  B.D1 = new D(B.C1);
  B.D1.textD();
 }
}
class C extends JTextArea{
 void textC();
}
class D{
 private C c;
 public D(C c){
  this.c = c;
 }
 public void textD(){
  this.c.textC();
 }
}
397名無しさん@そうだ選挙に行こう:2005/09/11(日) 19:04:33
>391,396ありがとうございました。
複雑でわかりにくい質問文なのに答えてくださってお尻。
398名無しさん@白紙投票してきたぜ:2005/09/11(日) 20:16:07
なんだよオシリって・・・
399名無しさん@そうだ選挙に行こう:2005/09/11(日) 20:18:04
>>396
よくしらないが、C++とかのテンプレートとは違い、
Javaのジェネリクスは実体はクラスが1個なので
static フィールドには使えないと思う気がする
400名無しさん@そうだ選挙に行こう:2005/09/11(日) 23:20:44
JEditorPaneでHTMLを表示すると、表示が崩れてしまって上手く表示されません。
ヤフーのトップページなども文字が重なってしまうのですが、どうすればきれいに表示されるのでしょうか?
IEで表示しているのと同じように表示したいのですが・・・
401デフォルトの名無しさん:2005/09/11(日) 23:57:57
>>400
1.4以前より 1.5以降の方が綺麗っぽい。
あとは見た目が気になるなら、setEditable(false) しておくと少しはマシになるかも。
それ以上を望むなら JEditorPane っつーか HTMLEditorKit とかを改造しないとダメ。

手っ取り早く IE と同じ見た目が欲しいなら JDIC で WebBrowserコンポーネン作ってるから、
それを使うとかした方が良いかも。
402デフォルトの名無しさん:2005/09/12(月) 00:14:49
レンダラはあまり綺麗になってるとは思わんが、機能的に1.4系は実質使い物にならなかったのが
5.0でやっとサブミットの補足とかできるようになって使えるようになったよな
403デフォルトの名無しさん:2005/09/12(月) 10:35:03
404デフォルトの名無しさん:2005/09/12(月) 11:03:00
板違いだったら申し訳ございません。

質問なのですが、携帯電話のアプリでメール管理ソフトを作るのは不可能でしょうか?
405デフォルトの名無しさん:2005/09/12(月) 11:04:54
無理

はい、次どうぞ
406デフォルトの名無しさん:2005/09/12(月) 11:14:30
ありゃ・・・。
携帯版ポストペットとか作れたら楽しいかなと思ったのですが(;д;)

板汚し失礼しましたぁ。
407デフォルトの名無しさん:2005/09/12(月) 11:37:08
>>406
作れると思うよ>携帯版ポスペ
その代わり所謂メールソフトとは別物になるし携帯のメールアドレスも
使えないけど……要はWEBメール+αって感じ。
408デフォルトの名無しさん:2005/09/12(月) 11:43:00
んなわけねぇだろ
409デフォルトの名無しさん:2005/09/12(月) 12:56:06
>>407
サーバ側で処理すれば
メールアドレスは使えるぞ。
ポストペットの古い奴しか知らないが
やろうとおもえばできる。
ただメールを送信するだけだしな。携帯電話側に、
ボタンを押さなくても自動送信できる機能があればの話だが。
携帯でのメール送受信はコストがかかるからやりたがらない人
もいそうな
410デフォルトの名無しさん:2005/09/12(月) 15:40:57
例外処理で同じ例外クラスがスローされるときに
キャッチないで表示するメッセージをエラーした個所によって変えることは
可能ですか?
また、同一メソッド内で下のように
try {
  // int型で数値を設定
} catch (Exception e) {
  ・
  ・
}try {
  // 上記で設定したint型数値を使用
}catch (Exception e) {
  ・
  ・
}
411デフォルトの名無しさん:2005/09/12(月) 15:42:21
することは可能ですか?
412デフォルトの名無しさん:2005/09/12(月) 15:46:50
やってみればすぐわかることをなぜやらないかがわからない。
413デフォルトの名無しさん:2005/09/12(月) 15:57:48
質問の仕方を変えます。
例外処理で同じ例外クラスがスローされるときに
キャッチ内で表示するメッセージをエラーした個所によって変える方法が
わからない、そもそもそういうことが可能か不可能か?
また、同一メソッド内で下のように
try {
  // int型で数値を設定
} catch (Exception e) {
  ・
  ・
}try {
  // 上記で設定したint型数値を使用
}catch (Exception e) {
  ・
  ・
}
したが、エラーが発生したので、私のやりかたが悪かったのか、
そもそもこういうことが可能なのか不可能なのか?
414デフォルトの名無しさん:2005/09/12(月) 16:02:23
>>413
例外を throw するところで状況にあったメッセージを付けろよ。または状況が
分かる例外クラスを throw しろ。それができないなら発生箇所を細かく
try-catch で囲め。

catch ブロックの中に try-catch を記述するは可能。おまえのやり方が悪い。
415デフォルトの名無しさん:2005/09/12(月) 16:20:41
catch ブロックの中にtry-catchを記述するのではなくて、
try {・・・}catch{・・・} ・・・ try {・・・}catch{・・・}と
同一メソッド内に記述したいんです。
前半のtry内で設定した変数などを後半のtry内で使用するとエラーが発生したので。
416デフォルトの名無しさん:2005/09/12(月) 16:25:16
class IntRandom {
 private int start,end;
  IntRandom(int n,int m){
   @;
   A;
  }
  public int getIntRandom(){
   B
  }
}

問題:
nからmまでの整数乱数を発生させるIntRandomクラスを作成した。
オブジェクト生成時にnとmを渡し、メソッドgetIntRandom()により
乱数を得る使用となっている。@ABに適切なコードを入れよ。

Bはreturn (int)Math.random();だと思いました。
@とAが何をすればいいかよくわかりません。
お願いします。

417デフォルトの名無しさん:2005/09/12(月) 16:30:39
>>415
ローカル変数はそのブロック内でしか有効でないから当然。
いやなら宣言だけブロックの外に出せ。

>>416
> Bはreturn (int)Math.random();だと思いました。
違います。宿題スレへどうぞ。
418デフォルトの名無しさん:2005/09/12(月) 16:31:26
>>417
あ、スレ間違いました。
申し訳ないです。
419デフォルトの名無しさん:2005/09/12(月) 16:37:53
>>417
初歩的なことを間違えていました。ありがとうございます。
状況にあったメッセージを付けることにします。
420デフォルトの名無しさん:2005/09/12(月) 18:49:12
>>416
関係ないがコンストラクタで例外を投げたほうがよさげ。
421デフォルトの名無しさん:2005/09/12(月) 20:10:37
【おまいら!】 台湾の国連加盟支持の御願い 【助けてください】

第60回国連総会が9月13日よりニューヨークの国連本部で開幕します。
平和主義の台湾は、これまで12年間、国連加盟を目指し努力してきました
が、中国の卑劣極まりない圧力に合い、いまだに実現していません。

みなさまの声が、そのまま国連へ送られます。
どうか、おまいらの底力を見せつけて下さい、おながいします。

http://www.gopetition.com/online/6889.html
にアクセスしていただき「 Sign the petition 」←ここが署名のページです。

入力個所 First Name(名前)+ Last Name(姓)+ Email Address この3箇所を入力します。

※ (optional)は、未入力で大丈夫です。
※ フリーメールも大歓迎です。
422デフォルトの名無しさん:2005/09/12(月) 21:15:02
だが断る
423デフォルトの名無しさん:2005/09/12(月) 21:16:06
PocketPC(WindowsMobile2003SE)でJavaの開発はできますか?
DellのAxim X50vが欲しいのですが、できるようだったら即購入したいと思ってます。
424デフォルトの名無しさん:2005/09/12(月) 21:16:30
>>421
普通にやだ
425デフォルトの名無しさん:2005/09/12(月) 21:52:46
426デフォルトの名無しさん:2005/09/12(月) 22:00:54
ヒント:iアプリDX
427デフォルトの名無しさん:2005/09/12(月) 22:12:52
ttp://e-words.jp/w/iE382A2E38397E383AADX.html
むむ。
> ただし、こうした機能を使ってウイルスや情報搾取ソフトが開発される危険を避けるため、
> iアプリDXを開発・配布できるのはNTTドコモに認定された「公式サイト」のみに限られている。
使えねぇ(´・ω・`)
428デフォルトの名無しさん:2005/09/12(月) 22:31:22
JFrameから、テキストとボタンがあるJDialogを表示します。
ダイアログでテキストを入力してボタンを押すと
呼び出したフレームでダイアログに入力された値を取りたいんですが
どうすればいいんでしょうか?
429デフォルトの名無しさん:2005/09/12(月) 23:19:11
取り出すメソッドを作る
430デフォルトの名無しさん:2005/09/13(火) 01:48:06
文字列に入った特殊文字 !"#$%&'() を、
全て実体参照に変換してくれるようなメソッドってありませんか?
431デフォルトの名無しさん :2005/09/13(火) 03:09:19
JAVA初心者です(プログラミング自体あまり経験がありません)、10月から職業訓練所のJAVAコースに行こうと考えてるのですが、それまでに何か勉強しといた方が良いことはあるでしょうか(この本を読んどいた方が良いとか)

係りの人には「やる気さえあれば良い」と言われたのですが、だからといって何の対策もなしに行くのはやる気がないかなと。
432デフォルトの名無しさん:2005/09/13(火) 03:13:57
jdkいれてサンプルソースでも改造したら?無料だし
433デフォルトの名無しさん:2005/09/13(火) 03:20:08
なにその訓練所って。無料なの?
僕もいきたいから連れてって
434デフォルトの名無しさん:2005/09/13(火) 06:17:56
>>431
JAVA違いでは?
435デフォルトの名無しさん:2005/09/13(火) 11:09:47
>>433
ハローワーク行って、「会社首になりました、再就職したいけど
なんの技能もありません」って相談すれば紹介してくれるよ。
求職者以外でも参加できるかはしらない。
436デフォルトの名無しさん:2005/09/13(火) 12:27:26
自作のクラスの状態が変更したらイベントを発行して
その自作クラスを使用しているクラスはそのイベントに応じて処理をしたい場合には
どのようなコードを組めばいいのでしょうか..

例えば
class A extends JFrame{
private B[] btns;
}

class B extends JPanel{
boolean isChanged;
}

のようにクラスBの状態が変更されたかをisChangedが持っていて
クラスAは自身が持つ全てのクラスBが変更されてときに
ある処理を行うような場合のことです

状態変更ということでチェックボックスで使用する
ItemListenerとisStateChangedのような方法したいのですが・・・
437デフォルトの名無しさん:2005/09/13(火) 12:41:24
>>436
PropertyChangeListener
あんまり濫用すると java の設計思想から外れていくかもしれんけど
438431:2005/09/13(火) 14:16:52
>>433無料ですよ、テキスト代とかはとられるかもしれませんが。

>>434何が違うのかよくわからないのですが?

とりあえずまずは基本を固めるということで基本情報処理技術者のテキストでも読んでみましょうか?

439222:2005/09/13(火) 15:17:26
すみません。
以下でプルダウンメニューの複数設置を考えておりますが、どうしたらよいでしょうか。
<FORM NAME="f">
<SELECT NAME="jumpto" onChange="Jump();">
<OPTION VALUE="-" SELECTED>移動先を選択</OPTION>
<OPTION VALUE="page1.html">Page1</OPTION>
<OPTION VALUE="page2.html">Page2</OPTION>
<OPTION VALUE="page3.html">Page3</OPTION>
</SELECT>
</FORM>
440デフォルトの名無しさん:2005/09/13(火) 15:22:00
質問は明確に
441222:2005/09/13(火) 15:27:24
はい。
このフォームをコピーし、複数のプルダウンメニューを作成したのですが、
エラーが起きてしまします。
たとえば
http://www.jgc.co.jp/en/04tech/index.html
こちらのページの[Go]ボタンを抜いたものを考えております。
よろしくお願いいたします。
442デフォルトの名無しさん:2005/09/13(火) 15:38:55
なんか課題ください
443デフォルトの名無しさん:2005/09/13(火) 15:44:48
1. FORM の名前を f 以外にする。
2. Jump() の引数にどのフォーム名かを指定できるよう修正する。
3. すれ違い。
4. 222 はおまえじゃない。
444デフォルトの名無しさん:2005/09/13(火) 15:57:02
多分これかな。
ttp://www.ehdo.go.jp/tokyo/10gatsuitaku.pdf

>>438
その方がいいかも。Javaよりも前にプログラマとしての一般教養を覚えた方が役に立ちそう。
どうせJavaの基礎は教えてもらえるんだし、それに
短期間で独学で出来る内容なんてたかがしれてるし。

基本情報をとったからって威張れるものではないけど、ないよりはまし。
長い勉強の第1歩と思って始めてみるといいよ。
445デフォルトの名無しさん:2005/09/13(火) 15:57:16
>>443
ありがとうございました。
やってみます!

222はそうでしたね、すみません!
スレ違ってましたでしょうか_| ̄|○ごめんなさい。
446デフォルトの名無しさん:2005/09/13(火) 16:47:53
なんかこのスレ前見たときより
いい青年ばっかりいる

で言いたい事があって、xmlへのマッピングとかやるけど
class Object implements Node
ってなってくれれば終わりじゃない?とか妄想は膨らむんだけど
どうどう?
447デフォルトの名無しさん:2005/09/13(火) 16:50:28
ちょっと間違い
いい中年ばっかりなのです。
448デフォルトの名無しさん:2005/09/13(火) 16:51:11
誰ぞエスパー求む。
449デフォルトの名無しさん:2005/09/13(火) 17:33:24
>>436
デザパタみてみたら?
addなんちゃらりすなーとremoveなんちゃらりすなーってのを自作するだけ
450デフォルトの名無しさん:2005/09/13(火) 17:49:32
>>447
青年の次は何だ?
青年と中年との間ってのがあるはず。

辞書を引くと青年って25歳までなんだね。
おれ26歳。もう青年期おわっとる。もう中年か?

最近の20代の様子から30歳までを青年だと定義する傾向も出ているらしいが。
といわれたのが10年以上前からだったが。30過ぎてもNEETがいるくらいな
世の中青年扱いが多いのか。

451デフォルトの名無しさん:2005/09/13(火) 17:51:28
>>446
CastorやRelaxarなどのデータバインディングツールを
使ってO-RマッピングみたいにJavaコード自動生成したほうが早いような気がする。
452デフォルトの名無しさん:2005/09/13(火) 20:08:18
いい年したアニヲタヒッキー共の間違いだろw
453436:2005/09/13(火) 20:31:55
>>437
返事遅れてすみません
有り難うございました.
454デフォルト名無しさん:2005/09/13(火) 20:45:22
Javaアプレットでアンケートフォーム入力してもらってメールで送信とかできる?
455デフォルトの名無しさん:2005/09/13(火) 20:48:11
ダウンロードしたサーバ側に何か仕込んどけばできる。
456デフォルトの名無しさん:2005/09/13(火) 20:52:15
>>452
萌え〜
457デフォルト名無しさん:2005/09/13(火) 21:51:18
>>455
無理ってことだね。ありがとう。
458デフォルトの名無しさん:2005/09/13(火) 22:12:20
Stringtokenizerで指定する区切り文字って2文字以上はダメなんですか?

String s = "http://pc8.2ch.net/test/read.cgi/tech/1125991797/";
StringTokenizer sttk = new StringTokenizer(s, "1125991797/");
System.out.println(stk.nextToken());

ってやると「http:」と表示されるですけど…?
459デフォルトの名無しさん:2005/09/13(火) 22:13:57
だめです。
460デフォルトの名無しさん:2005/09/13(火) 22:18:34
>>459
早速の返事ありがとうございます

何がやりたいかというと
http://pc8.2ch.net/test/read.cgi/tech/1125991797/
みたいなURLのケツのディレクトリを削除して
http://pc8.2ch.net/test/read.cgi/tech/
としたいのです
何かいい方法ないでしょうか?
461460:2005/09/13(火) 22:23:38
すいません、URIクラスのresolve()メソッドを使えばいいんですよね…
ド忘れしてました…
スレ汚しスマンです
462デフォルトの名無しさん:2005/09/13(火) 22:38:04
おまいらどうしてJavaやってんの?学校の宿題?
高校?専門?大学?それとも独学?
463デフォルトの名無しさん:2005/09/13(火) 22:44:20
独学で勉強中
464デフォルトの名無しさん:2005/09/13(火) 22:51:42
Javaをマスターしたら素敵な王子様が白馬に乗って雇ってくれると信じてる
465デフォルトの名無しさん:2005/09/13(火) 22:53:09
大学でやることっていうか金払ってまで勉強することじゃない。
まあ書籍代だけで3万くらいつぎ込んだけど・・・。
466デフォルトの名無しさん:2005/09/13(火) 22:54:25
Cやってたから、ネットで調べつつで結構イケる
467デフォルトの名無しさん:2005/09/13(火) 22:56:25
>>464
少女だったといつの日か想う時がくるのさ?
468デフォルトの名無しさん:2005/09/13(火) 22:58:56
書籍代で3万って使いすぎじゃね?
俺ブクオフの105円×4でマスターしたぞ
469デフォルトの名無しさん:2005/09/13(火) 23:01:19
10万円超えてるけどマスターしてないorz
オブジェクトなんちゃらほげほげなんていう怪しい本も入れての値段だけどさ

最近はAPIとかムックでもいい本出てるよな……
470デフォルトの名無しさん:2005/09/13(火) 23:10:18
だいたい本高杉
471デフォルトの名無しさん:2005/09/13(火) 23:16:54
>>462
独学でしたよ
アプレットとか面白そうだったから。

今は仕事でtomcatテラメンドクサs
472デフォルトの名無しさん:2005/09/13(火) 23:23:59
他業種の勤務中に独学したなー
473デフォルトの名無しさん:2005/09/14(水) 00:48:54
>>462
独学
バイト
大学での研究に使用
474デフォルトの名無しさん:2005/09/14(水) 00:51:11
>>465
ソフトウェア設計法という授業でJavaがでてきた
475デフォルトの名無しさん:2005/09/14(水) 01:00:17
>>471
Tomcatの面倒くささは
Apache AntとXDocletと
Apache MavenとEclipseで解決!
Tomcatに内蔵されたAdmin ToolとManager toolも使うべし
476デフォルトの名無しさん:2005/09/14(水) 01:30:56
>>462
ヒッキーで時間だけはあるから
477デフォルトの名無しさん:2005/09/14(水) 06:16:44
InetAddressに格納したIPアドレスを+1したIPアドレスを
得たいのですが、どうすればいいのでしょうか。
例えば、192.168.0.1から192.168.0.2を得たいのですが。
文字列に直してそれをまた整数に直してから+1して…ってやるしかないんでしょうか。
478デフォルトの名無しさん:2005/09/14(水) 06:22:04
あたりまえじゃん。
それがいやなら、Perlでもつかえ。
479デフォルトの名無しさん:2005/09/14(水) 06:35:25
>>477
if (str.equals("192.168.0.1")) return "192.168.0.2";
if (str.equals("192.168.0.2")) return "192.168.0.3";

480デフォルトの名無しさん:2005/09/14(水) 06:52:15
>>478-479
有難うございました。
やってみます
481デフォルトの名無しさん:2005/09/14(水) 07:52:59
>>477
public static InetAddress inc(InetAddress inetAddress) throws UnknownHostException {
byte[] b = inetAddress.getAddress();
for (int i = b.length - 1; i >= 0; i--) {
if (++b[i] != 0) {
break;
}
}
return InetAddress.getByAddress(b);
}
482デフォルトの名無しさん:2005/09/14(水) 10:17:13
おもっくそスレ違いなんだけど失礼して
>472
同じ!!!はじめて同じ人居た!元人事
483デフォルトの名無しさん:2005/09/14(水) 10:30:49
JTextPaneに文章を打ち込み
それを部分的に赤の文字や青の文字に変えてその文章を保存したのですが,
保存した文章を見ると,赤や青の文字が黒にもどってしまいました.
JTextPaneに打ち込んで赤や青に変換した通りに保存できないのでしょうか??
文章がへたくそで伝わるかわかりませんが返信おねがいします
484デフォルトの名無しさん:2005/09/14(水) 11:31:27
保存っつーとテキストか何かに書き出したのかな。

テキストファイルには色情報は無い。 当然、太字などのスタイル情報も無い。
だから、「どこからどこまではこの色」とかの情報も保存しないと戻せない。
rtfとかもあるけど、とりあえずhtml形式で書き出しとけば。
485デフォルトの名無しさん:2005/09/14(水) 12:17:36
それが嫌なら禁断のオブジェクトファイルを使ってみろとか言ってみるテスト。
486デフォルトの名無しさん:2005/09/14(水) 12:32:48
>>484-485
ありがとうございます。
参考にしていきたいと思います。
487デフォルトの名無しさん:2005/09/14(水) 14:26:26
もう一度すいません。483です。
rtfやhtmlで書き出す場合,どのようにしたら
よろしいのでしょうか?
入出力で読み込む場合,String型やint型でとってくるので
色情報とか無理じゃないんですか?
488デフォルトの名無しさん:2005/09/14(水) 14:28:27
*質問は一人一回まで
489デフォルトの名無しさん:2005/09/14(水) 14:29:19
>>487
そのファイル形式に自分で成型して書き出すんだよ
読み込むときはそのファイルから形式に従って各情報を自分で読み出すんだよ
490デフォルトの名無しさん:2005/09/14(水) 14:38:33
>489
ありがとうございました。
チャレンジしてみます。
491438:2005/09/14(水) 16:02:47
>>444 ありがとうございます、そうしてみます。
492デフォルトの名無しさん:2005/09/14(水) 19:32:53
>>478,479,481にだれもつっこまんのか?
493デフォルトの名無しさん:2005/09/14(水) 20:54:38
下のプログラムをコンパイル、実行すると、
jdk-1_5_0_04 では
X ボタンで終了しようとすると必ずプログラムが「応答なし」状態に入ってしまいます。
JDK をアンインストールし、
j2sdk-1_4_2_09 をインストールした後に全く同じように試したところ、
こちらでは問題無く終了できました。
これは JDK 5.0 のバグなのでしょうか。
それとも僕に過失があるのでしょうか…

import java.awt.*;
import javax.swing.*;

public class SwingTest1 {
public static void main(String[] args) {
JFrame frame = new JFrame("HelloSwing");
JLabel label = new JLabel("Hello World!");

Container cont = frame.getContentPane();
cont.add(label);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);
}
}

494デフォルトの名無しさん:2005/09/14(水) 21:12:10
問題なく実行できたが
Jreとかの情報もほしぃ
495493:2005/09/14(水) 21:25:00
早速のコメントありがとうございます。
JRE は jdk-1_5_0_04 同梱のものでした。
再インストールしても全く同じ状況が再現されました。
関係無いかもしれませんが OS は WinXPPro です。
496デフォルトの名無しさん:2005/09/14(水) 21:30:50
試したけど
(build 1.4.2_07-b05)も
(build 1.5.0_01-b08)でも
問題なかったよ、

497デフォルトの名無しさん:2005/09/14(水) 21:40:17
同じ環境だけど大丈夫だった
498493:2005/09/14(水) 21:40:52
そうですか…。
僕のは (build 1.5.0_04-b05) です。
他の JRE は同居させていません。
今再々インストールして確認してみましたが、
やはり終了を試みるたび「応答なし」になってしまいます。
どうもご協力ありがとうございました。
499デフォルトの名無しさん:2005/09/14(水) 21:43:11
ローカルで実行?ローカルじゃないと出そうな気がしてきてきたくもこなくなくないこともないかもしれなくもない
500デフォルトの名無しさん:2005/09/14(水) 21:44:18
コマンドラインからそれともEclipseとかから?
501493:2005/09/14(水) 21:47:08
たびたびすみません。もう一つだけ。
コントロールパネル → Java Plug-in から起動できる
「Java コントロールパネル」も正常終了できません。
ウィンドウが閉じずに「応答なし」になってしまいます。
JRE のバグでは無いでしょうか?
502493:2005/09/14(水) 21:47:58
ローカルで、コマンドラインです。
WinXP のコマンドプロンプトから起動しています。
503デフォルトの名無しさん:2005/09/14(水) 21:51:44
悪名高きMicrosoft VMを使ってるってことか・・・
504493:2005/09/14(水) 21:56:01
>> 503
いえ、Sun から純正(?) Java をダウンロードし、
ちゃんとパスを通して使っています。
まわりくどくてすみませんでした。
505デフォルトの名無しさん:2005/09/14(水) 21:59:20
CPU,PCベンダの情報が
506デフォルトの名無しさん:2005/09/14(水) 22:00:54
Sunの使用してるのにJavaPlug-inがあるのね
507493:2005/09/14(水) 22:10:13
>> 505
すみません。
Pentium 4 (3Ghz) でベンダは Dell です。

>> 506
Java Plug-in (Java コントロールパネル) でバージョン情報を表示させると、

Java 2 Platform Standard Edition
バージョン 1.5.0 (ビルド 1.5.0_04-b05)
Copyright 2005 Sun Microsystems, Inc.

と出るのでてっきり Sun のを使っていると思いこんでいたのですが、
まさか実は Microsoft の VM を使ってしまっているのでしょうか。
508デフォルトの名無しさん:2005/09/14(水) 22:24:21
MS JVM じゃそもそも実行できんコードだろw
多分 Java 的なものではなく JRE とあんたの環境 (グラフィックボードのドライバ
とか) の相性だと思うが。とりあえず Windows Update して DELL のサイトから
最新のドライバ入れてみ。

あと、Eclipse などからデバッグ起動し、反応なし状態になったら Eclipse から
「ブレーク」 してみ。Java のどっかで無限ループしてるならそこで (Java Core
の中でも) 処理が止まるはず。
509デフォルトの名無しさん:2005/09/14(水) 22:27:31
ベンダ同じで
あっしのバージョンは

バージョン 1.5.0 (ビルド 1.5.0_04-b05)
Copyright 2005 Sun Microsystems, Inc.
All rights reserved. Use is subject to license terms.

と同じだけど実行しても問題なかったっす
510デフォルトの名無しさん:2005/09/14(水) 22:35:46
1.3あたりからいっきに信頼感あがったよね1.4なんて不可解な挙動みたことない
1.5で若干ぶれだしたけど取り戻してく、SUNはすごいね
長いものには巻かれたいので言わせてもらいました
511デフォルトの名無しさん:2005/09/14(水) 22:45:48
すれ違いだがジャギーでまくりのガタガタ和文フォントそろそろなんとかせれ。
512デフォルトの名無しさん:2005/09/14(水) 22:50:13
>>510
ずっとJava2DとSwingさわってきたが1.3.1からの安定性は確かに高い
が、1.4.xは初期はわりと問題だらけだったぞ

>>511
そんなにジャギーでる?
アンチエイリアスは簡単に出来るけどぼやけて見にくいが
513493:2005/09/14(水) 23:29:07
>> 508, 509
ありがとうございます。
ドライバを更新したものの改善されませんでした。
思い立って、セーフモードで実行してみたところ、
admin でログインすれば正常終了できることが確認できました。
いつもの user (管理者権限) でログインした場合は、
セーフモードでも駄目でした。
あまり長く続くのも何なので、ここまでにして引き上げます。
どうもありがとうございました。
514デフォルトの名無しさん:2005/09/15(木) 02:30:17
すごい基本的なことで申し訳ないんですけど。
メソッドに引数を渡す場合と渡さない場合の
違いは何ですか?
よろしくお願いします。
515デフォルトの名無しさん:2005/09/15(木) 02:32:40
UMLのクラス図からJAVAでプログラミングするとき
どういったことからはじめればよいのでしょうか?
何をまずはじめのかんがえるかとか・・・。
よろしくお願いします。
516デフォルトの名無しさん:2005/09/15(木) 02:47:32
>>514
C言語などの「関数」について触れてみることをオススメする。
517デフォルトの名無しさん:2005/09/15(木) 02:48:05
クラス図のクラスを、Javaのクラスで実装すればいいんじゃねーの?
そのまんまだよ。
518デフォルトの名無しさん:2005/09/15(木) 02:52:29
C言語などと・・ 貴様JAVAだけをやれい
519デフォルトの名無しさん:2005/09/15(木) 02:56:21
Java で縮小した画像を ImageIO を使って保存すると、まるでグレースケールを
Red チャネルにしたような赤みがかかってしまいます。ただしその画像を ImageIO
で読み出して表示してみると意図した縮小画像になっています。何か指定が
おかしいのでしょうか? 縮小処理は以下の通りです。

int w2 = 100, h2 = 100;
Image image = ImageIO.read(url);
int w = image.getWidth(null);
int h = image.getHeight(null);
BufferedImage original = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);
original.getGraphics().drawImage(image, 0, 0, null);
BufferedImage thumbnail = new BufferedImage(w2, h2, BufferedImage.TYPE_INT_ARGB);
Graphics g = thumbnail.getGraphics();
g.setColor(Color.white);
g.fillRect(0, 0, w2, h2);
Image temp = original.getScaledInstance(w2, h2, Image.SCALE_SMOOTH);
g.drawImage(temp, 0, 0, null);
ImageIO.write(thumbnail, "jpeg", file);

(別メソッドに分かれてるのを切り貼りしたのでコンパイル通らんかも。)
元画像と縮小後の画像です。
http://tool-ya.ddo.jp/2ch/trash-box/contents.jsp?file=20050915024249005.jpg (元画像)
http://tool-ya.ddo.jp/2ch/trash-box/contents.jsp?file=20050915024934006.jpg (縮小後)
520デフォルトの名無しさん:2005/09/15(木) 02:57:09
>>492
他にやりかたあるのなら教えてください
521デフォルトの名無しさん:2005/09/15(木) 02:58:58
うは、Explorer や Windows ファイルビューアで見たら真っ赤だったのに
Internet Explorer だと表示されない。じゃ、そもそも壊れてんじゃん orz
失礼しました
522デフォルトの名無しさん:2005/09/15(木) 03:00:15
>>520
四つん這いになって「お願いします」と言いなさい。
523デフォルトの名無しさん:2005/09/15(木) 03:04:53
縮小後こわれてるぞ
524519:2005/09/15(木) 03:15:19
TYPE_INT_ARGB を TYPE_INT_RGB に変えたらうまいこと JPEG で保存できた。
保存する形式によって画像をアルファチャネル付きかどうか変えなきゃいけない
のね。
5251:2005/09/15(木) 07:44:14
ServletでBeansに値を入れてJSPで表示するプログラムを作成しています。
ですが、ServletでセットしてもJSPで表示することができません。
また、JSPでセットしてJSPでゲットするとうまく表示されます。
対処法を教えてください。

ソースの一部
<Servlet>

ConBeans cntr = new ConBeans();  //Beans
  
prgNo = req.getParameter("cmdp"); //JSPからパラメータを入れる
cntr.setPrgNo(prgNo); //Beansにセット

<JSP>
<%@ page import="パッケージ名.ConBeans" %>
<jsp:useBean id="con" class="パッケージ名.ConBeans" scope="request" />

<%
String inStr = con.getPrgNo();
out.println(inStr);
%>
5262:2005/09/15(木) 07:46:07
<Beans>
package パッケージ名;

import java.io.*;

public class ConBeans implements Serializable {
private String prgNo;

/* コンストラクタ */
public ConBeans() {
this.prgNo = "";

}

public ConBeans(
String prgNo
) {
this.prgNo = prgNo;
}

public void ConBeansClear() {
this.prgNo = "";
}

public void setPrgNo(String prgNo) {
this.prgNo = prgNo;
}

public String getPrgNo() {
return this.prgNo;
}
}
527デフォルトの名無しさん:2005/09/15(木) 09:14:08
>>525 ビーンを受け取る上記の<JSP> ファイルがHTMLのフレームの中
だったりしませんか?リクエストスコープだと、フレームの中だと消失
しちゃいますよ。セッションスコープで試してみては?
528デフォルトの名無しさん:2005/09/15(木) 09:54:02
初心者質問で失礼します。
winXPでjava1.5をインストしてコンソールで"HelloWorld"を確認した後、
Eclipseをインストールして、次にomondeを入れようとして、jarファイルを
ダウンロードしたのですが、JARファイルをどのようにすれば、Eclipseに
取り入れられるのか解りません。

サイトによると、ダブルクリックすればインストーラーが起動と書いてあったりするのですが、
windowsの関連づけが無いと言われてしまいます。
529デフォルトの名無しさん:2005/09/15(木) 10:10:42
コマンドプロンプトからjava -jar 対象のJARファイル名
530デフォルトの名無しさん:2005/09/15(木) 10:37:37
>>524
Java2D理解してないだけ
531デフォルトの名無しさん:2005/09/15(木) 11:07:11
<input type = "hidden">で使われるhiddenとは
どういうときに使えば(使われる)のですか?
隠すという意味はわかるのですが、初心者なんで
よくわかりません。
教えていただけますか。お願いいたします。
532デフォルトの名無しさん:2005/09/15(木) 11:09:58
HTMLスレで聞けハゲ
533デフォルトの名無しさん:2005/09/15(木) 12:54:40
throw new NullPointerException()
534デフォルトの名無しさん :2005/09/15(木) 13:01:10
test
535デフォルトの名無しさん:2005/09/15(木) 13:57:25
>>530
意味が分からん
536デフォルトの名無しさん:2005/09/15(木) 15:10:34
>>535
縮小処理そのものはJava2Dだろ
537デフォルトの名無しさん:2005/09/15(木) 15:12:13
>>529
うまくできました。ありがとうございました。
538デフォルトの名無しさん:2005/09/15(木) 15:27:09
>>536
拡縮処理はそうだが、これは出力フォーマットの特性の問題だろ。
解決策を見ても拡縮処理とは関係が無い。
539デフォルトの名無しさん:2005/09/15(木) 17:34:38
質問です
apacheTomcat5.5をインストールしました。
起動し、アイコンを右クリックしスタートしたんですが
http://localhost:8080/ にアクセスしても
tomcatの画面になりませんでした。
解決法などご存知の方教えてください。

※前にPHP作成のために別apache入れたことがあったのですが
もしやそれが原因でしょうか?
540デフォルトの名無しさん:2005/09/15(木) 17:37:45
起動してないんだろ
541デフォルトの名無しさん:2005/09/15(木) 17:40:42
起動できてないんだろ
542デフォルトの名無しさん:2005/09/15(木) 17:44:57
起動しなければどうということはない
543デフォルトの名無しさん:2005/09/15(木) 17:46:22
起動のしかたに心がこもってない
544デフォルトの名無しさん:2005/09/15(木) 18:09:57
SwingのJListで、リストの項目が選択されたときの処理をvalueChangedに書いてあるのですが、なぜかリストの項目が選択されると、valueChangedが2回実行されてしまいます。
ぐぐってみたところこのあたりとまったく同じ症状だったのですが、結局具体的な解決方法がわかりません。

ttp://java-house.jp/ml/archive/j-h-b/025190.html
ttp://oshiete1.goo.ne.jp/kotaeru.php3?q=793248

if( e.getValueIsAdjusting() == false )
の中に処理を書くというのもやってみたのですが、はやり2回実行(マウスの押しと離し)されてしまいます。
選択したときに1度だけ実行されるようにするにはどうしたらいいんでしょうか?

jdk1.4.2です。
どなたかアドバイスよろしくお願いします。
545493:2005/09/15(木) 19:02:56
Java5 で Swing アプリケーションが実行時にハングアップする問題は、
SKKIMEのバグが原因でした。
どうもお騒がせしました。ありがとうございました。
546デフォルトの名無しさん:2005/09/15(木) 19:50:36
>>545
有耶無耶になった質問の結果報告をちゃんとしに戻ってくる
そんなオマイの態度が大好きだ!
オマイこそ2ちゃんねらの鏡、ねらオブザねらだと呼びたい。
547デフォルトの名無しさん:2005/09/15(木) 21:17:03
お聞きしたいのですが、javaでメニュースクリプトをつくって、背景を透明にしたいのですが、
何と書けばいいのでしょうか?
548デフォルトの名無しさん:2005/09/15(木) 21:41:38
javaやってる香具師の何割がヲタ?
javaの萌え本とかでてる?
549デフォルトの名無しさん:2005/09/15(木) 21:55:17
つ萌え単語帳
550デフォルトの名無しさん:2005/09/15(木) 22:06:51
>>547
javaでスクリプトインタプリタを作るのか?
551デフォルトの名無しさん:2005/09/15(木) 22:31:36
>>550
気にかけてくれてサンクス。自己解決でけた。
やったー!!
552デフォルトの名無しさん:2005/09/15(木) 23:23:17
>>545
どこかのバージョンの JDK にも ATOK との相性の問題とかあったな。
よく報告に戻ってきた。それに付けても >>551 は… (透明化くらいまぁ良いけど)
553デフォルトの名無しさん:2005/09/16(金) 01:55:00
>>548
おまいのヲタの定義が萌え系なら
俺はヲタじゃないし、ヲタはかなり少ないと思われ。
汗んぶら系、C系, Perl系、*BSD系にそれ系の怪しいヲタが多そう。
とくに*BSD系は怪しい香具師ばっかり。
しかも彼らはJavaが大嫌いな香具師が多い。
よってJava系にはヲタが少ないと思われ。
554デフォルトの名無しさん:2005/09/16(金) 02:16:20
>544
全然詳しくなくて期待してる答えじゃないんだけど
気になってしょうがないんだったら再現するコードだけ引っこ抜いて
貼った方がいいと思うぜ!!そのURLだけだとそのお二方の状況はわかるけど
あなたの状況まるでわかんない
555デフォルトの名無しさん:2005/09/16(金) 02:54:36
>>544
お前、ホントに
ttp://java-house.jp/ml/archive/j-h-b/025190.html
ttp://oshiete1.goo.ne.jp/kotaeru.php3?q=793248
読んだのか?上は全然関係ない話だし、下は解決方法が書いてあるし。
そもそもJavadocは読んだのか?

>if( e.getValueIsAdjusting() == false )
>の中に処理を書くというのもやってみたのですが、
ttp://java.sun.com/j2se/1.4/ja/docs/ja/api/javax/swing/event/ListSelectionEvent.html#getValueIsAdjusting()
このイベントが複数の変更イベントのうちの 1 つである場合に true を返します。

t r u e を 返 し ま す 。
556デフォルトの名無しさん:2005/09/16(金) 05:13:16
JMF を使って動画のサムネールを作成しようとしているんだけど、MPEG-1 だと Windows ネイティブで
(って表現が正しいか分からんが) 処理されるため、画像取得に必要な FrameGrabbingControl, Buffer
が取れないってので良いのかな。QuickTime なんかは出来るんだが。

↓の Cross Platform Version がサポートしているものしかだめなんか?
http://java.sun.com/products/java-media/jmf/2.1.1/formats.html

MediaLocator locator = new MediaLocator(url);
DataSource source = Manager.createDataSource(locator);
Player player = Manager.createRealizedPlayer(source);
final Object signal = new Object();
player.addControllerListener(new ControllerListener(){
  public void controllerUpdate(ControllerEvent e) {
    if(e instanceof PrefetchCompleteEvent){
      synchronized(signal){signal.notify();}
    }
  }
});
synchronized(signal){
  player.prefetch();
  try{signal.wait();} catch(InterruptedException ex){/* */}
}
FrameGrabbingControl frameGrabber =(FrameGrabbingControl)player.getControl("javax.media.control.FrameGrabbingControl");
if(frameGrabber != null){
  Buffer buffer = frameGrabber.grabFrame();
  Format format = buffer.getFormat();
  if(format instanceof VideoFormat){
    BufferToImage bti = new BufferToImage((VideoFormat)format);
    return bti.createImage(buffer);
  }
}
557デフォルトの名無しさん:2005/09/16(金) 05:55:56
すいません質問なのですが下の問題の答えを見ても意味が分かりません
どなたか、教えてください
public class Sample{
public static void main(String[]args){
Sample obj=new Sample();
    obj.foo();
}
(a)
}
class A{}
class B extends A{}

上記の(a)の部分に記述する文として下から適切なものを選択して下さい

1.public A foo(){  2.public A foo(){    3.public B foo(){
return new A();    return new B();      return new A();
}           }            }
4.public B foo(){  5.public Object foo(){ 6.public Object foo(){
return new B();    return new A();      return new B();
}           }            }
7.public A foo(){  8.public B foo(){
return new Object(); return new Object();
}           }
解答 1.2.4.5.6
558デフォルトの名無しさん:2005/09/16(金) 06:37:04
Superクラスの型でサブクラスのオブジェクトを扱えるけど
その逆のSubクラスの型ではSuperクラスのオブジェクトは扱えない
と言うきまりを解ってほしいと意図している問題じゃない?
メソッドの戻り値でもあてはまると。

559デフォルトの名無しさん:2005/09/16(金) 09:40:06
これが問題の全文じゃないんだろうから詳しくはワカランが
回答者にかなりのエスパーっぷりを要求する設問だな
560デフォルトの名無しさん:2005/09/16(金) 11:39:28
>>544
JListって選択項目が変わったときってアクションイベント発生してなかったっけ?
561デフォルトの名無しさん:2005/09/16(金) 12:22:23
>>557
「適切な」ってのが頭を悩ますな。メソッドの意味ねーし。
単に、コンパイラを通るのが解答と思われ。
562デフォルトの名無しさん:2005/09/16(金) 12:42:33
{( a="test" , b=1 , c="2005/12/22") ,
( a="test" , b=2 , c="2005/12/20") ,
( a="test" , b=3 , c="2005/12/24") }

こんな感じの文字列から、HashTable(HashSet)のようなデータ構造をこしらえてくれる
ものをご存じの方いませんか。自前で実装する時間がほとんど無くて…ううう(;´д`)
563デフォルトの名無しさん:2005/09/16(金) 12:55:34
>>562
どこがどう文字列なのか。
それ全部が入ったテキストファイルがあるとかそういうことなのか。
何がキーで何が値の Map 構造が欲しいのか。

疑問は尽きないが、答えは「ない」。

あるいは定義だけ書けばやってくれるライブラリもあるかと思うが、
それを探して習得するより、自前で実装する方が早かろう。
564562:2005/09/16(金) 13:13:54
>>561 ありがd。少しテンパってたよ(;´д`) 実装する時間がもらえたので自前で頑張りマッスル
565login:Penguin:2005/09/16(金) 13:28:04
全く同じプログラムをVisual CafeとEclipseでコンパイルしました。
どちらもコンパイルエラーは出ませんでした。
このイメージを走らせたときVisual CafeのほうだけJDBCのロードに失
敗するんですけどなんでそうなるのかわからない・・・。
EclipseはリモートデバッグできるけどVisual Cafeはできないし・・・。
566デフォルトの名無しさん:2005/09/16(金) 18:06:18

>557

すげー舌足らずな問題だね答えないと問題の意味理解できないねこれ

俺的には9番以外不適切に見えるんだけどまーいいや
9. void foo() {
 }
567デフォルトの名無しさん:2005/09/16(金) 21:55:40
>>565
ハンドルからして
Linuxを使いこなしているのか。
568デフォルトの名無しさん:2005/09/16(金) 21:57:02
>>557
その問題ってSunのJava認定試験の問題?

だとしたらSunのJava認定試験ってかったるい問題が多そうだな
569デフォルトの名無しさん:2005/09/16(金) 22:02:24
>>562
正規表現使って文字列をパースしてから
List list = new ArrayList();
for(int i = 0; i< 行数; i++){
 Map map = new HashMap();
 map.put("a", a);
 map.put("b", b);
 map.put("c", c);

 list.add(map);
}
570デフォルトの名無しさん:2005/09/16(金) 23:42:55
質問です。
「Exception in thread "main" java.lang.NoClassDefFoundError: 」
のエラーが出るので、
>>1に書いてあるとおり、set CLASSPATH=%CLASSPATH%;.と書いて、
一応動くようになるのですが、コマンドプロントを落とすと、またリセットされてしまいます。
これはどうにかならないのでしょうか?
571570:2005/09/16(金) 23:45:21
自己解決orz
CLASSPATHの最後に;.と設定したら動きました・・・。
572デフォルトの名無しさん:2005/09/17(土) 00:33:52
>569
それで何をとるんだい?
数列(?)をみるぶんにbがidとなりそうだから
Mapのkeyにbのvalue
valueにStringを入れ込むほうがよくないか?


573デフォルトの名無しさん:2005/09/17(土) 00:40:13
Javaでファイルのコピーを作りたいときは
どうやったらいいのでしょうか?

例)
file.txtのコピー
file.txt.bakを作成したい。

わからなかったのでとりあえず
FileInputStreamで読んでFileOutputStreamで吐き出すように書きました。
これだとファイルスタンプを保持できん・・・。
574デフォルトの名無しさん:2005/09/17(土) 00:44:14
>573
ファイルスタンプ(?)がなにを意図してるか解らんが
Runtime.getRuntime.exec(command);
では無理?
575デフォルトの名無しさん:2005/09/17(土) 00:58:28
>574
間違えました、ファイルスタンプではなくてタイムスタンプです。
この方法だとOSに依存しない?
576デフォルトの名無しさん:2005/09/17(土) 01:05:09
まあ、OSが何かを見てcommandを変えるしかないかな
577デフォルトの名無しさん:2005/09/17(土) 02:53:45
>576
もっとスマートな方法は無いですか?
OSをどうやって見分けるかも気になる・・・。
578デフォルトの名無しさん:2005/09/17(土) 03:10:52
>>577
バカとそうでない人間を見分ける力は必要w

File#setLastModified(), File#lastModified()
579デフォルトの名無しさん:2005/09/17(土) 03:31:33
【のまネコ問題】エイベックスがモナーとおにぎり盗用?61インスパイヤ
http://news19.2ch.net/test/read.cgi/news/1126838251/
580デフォルトの名無しさん:2005/09/17(土) 04:58:26
最近やりはじめなんですが、コンパイル後のClassを消して、
次に同名でClassを作ると、前回作ったClassが生きていて
新しく作ったClassが生きません。どうすればいいんでしょうか?
581デフォルトの名無しさん:2005/09/17(土) 07:56:22
素直に再度コンパイル
582デフォルトの名無しさん:2005/09/17(土) 08:28:59
Mac mini 買ったんですがSunのJDKがインストールできません
なぜなんでしょうか?
583デフォルトの名無しさん:2005/09/17(土) 08:45:37
>>582
Mac mini と Sun の JDK の間には関係が無いです。

あなたの質問は
「リンゴを買ったんですがコーヒーが飲めません。なぜなんでしょうか?」
というレベルの質問と同様にズレた質問です。
584580:2005/09/17(土) 08:50:55
素直に再度コンパイルして、新しくClassが出来てるんですけど
前のClassが生きてて・・・。
585デフォルトの名無しさん:2005/09/17(土) 09:03:12
>>580
具体的な操作手順も示さず
生きてるだの何だのと勝手な用語を使われても
まともな回答なんか期待できませんよ。

> どうすればいいんでしょうか?

あなたはJavaの初心者云々以前に
質問の初心者ですから
まずは質問の仕方を勉強しなしてきたらよいと思います。
586デフォルトの名無しさん:2005/09/17(土) 09:24:41
>>582
SunのJDKはMacPCにはインストールできませんアーキテクチャ対応していないから・・・
Mac実装のJDKが落とせるはずなのでそれを使いましょう
587デフォルトの名無しさん:2005/09/17(土) 09:30:12
   ∩___∩         |
   | ノ\     ヽ        |
  /  ●゛  ● |        |
  | ∪  ( _●_) ミ       j
 彡、   |∪|   |        J
/     ∩ノ ⊃  ヽ      >>586
(  \ / _ノ |  |
.\ “  /__|  |
  \ /___ /
588デフォルトの名無しさん:2005/09/17(土) 09:32:17
589デフォルトの名無しさん:2005/09/17(土) 09:33:08
590デフォルトの名無しさん:2005/09/17(土) 09:37:58
SunのJDKはインテル系とAMD系SPARC系のみしかインストールできないね
591デフォルトの名無しさん:2005/09/17(土) 10:23:36
PPCはIBM?Apple?
592デフォルトの名無しさん:2005/09/17(土) 13:26:59
JMF でサポートしているファイルタイプや Content-Type の一覧って取れないの?
API リファレンスざっと見たけどそれっぽいのが見当たらない。
593デフォルトの名無しさん:2005/09/17(土) 13:29:57
あのー、複数のjarファイルをCLASSPATH環境変数に設定するときって
こんなふうにjarファイルそのものをパスにしないといけないんですか?

set CLASSPATH=C:\jarファイル格納フォルダ\jarファイル1.jar;C:\jarファイル格納フォルダ\jarファイル2.jar


それともjarファイルをまとめていれたフォルダのパスでもよいのですか?

set CLASSPATH=C:\jarファイル格納フォルダ
594デフォルトの名無しさん:2005/09/17(土) 13:35:31
>593
jarいっこずつ。
マンドクサイならant使えば多少幸せになれるかも。
595デフォルトの名無しさん:2005/09/17(土) 13:37:20
いっこずつ、ゆーと変だな
言いたいことは「前者○、後者×」ということでつ
596593:2005/09/17(土) 13:41:20
>>595
ありがとう
597デフォルトの名無しさん:2005/09/17(土) 14:26:46
>>593
>>594の言うとおり、絶対Ant使ったほうがあとで後悔しないぞ。
環境移行が楽になるからな。
598デフォルトの名無しさん:2005/09/17(土) 16:31:35
>>594
じゃーいっこずつで。
599デフォルトの名無しさん:2005/09/17(土) 16:39:17
>>573
file.txtをコピーするのではなくfile.txt.bakにリネームして
新たにfile.txtを作ればよい。(リネームの方法は下記参照)

File file1 = new File("C:\\z\\test.txt");
File file2 = new File("C:\\z\\test.txt.bak");
file1.renameTo(file2);
600デフォルトの名無しさん:2005/09/17(土) 17:04:50
package test;

class Sample {

public static void main(String[] args) {
int n1 = Integer.parseInt("8");
int n2 = Integer.parseInt("255");
System.out.println(n1 & n2);
}
}

なんでこれで出力結果8なんですか?
601デフォルトの名無しさん:2005/09/17(土) 17:08:20
>600
8じゃなければ、どんな結果になると思いましたか?
602デフォルトの名無しさん:2005/09/17(土) 17:09:16
  00001000
.&) 11111111
-----------
  00001000
603デフォルトの名無しさん:2005/09/17(土) 17:09:20
>>601

いや、検討がつきませんでした。
テキストの問題であったんで。
604デフォルトの名無しさん:2005/09/17(土) 17:10:06
>>602
あ、ありがとうございます
605デフォルトの名無しさん:2005/09/17(土) 17:52:16
>>599
ファイルセパレータに\\を使うのはイクナイ!
606デフォルトの名無しさん:2005/09/17(土) 18:08:17
C: やってる時点でどうでもいい
607デフォルトの名無しさん:2005/09/17(土) 22:22:20
Javaであるバイナリデータを吐き出すプログラムを作っているのですが、
Java には unsigned の 1 byte を表現できるデータ型がないのを知りました。
byte は signed でしか使えず、唯一のunsigned 型であるchar は2 byteデータなんですよね?
今は仕方がないので、StringBuffer に2byteづつデータを詰め込んで最後にchar[] で吐き出さ
せる方法をとっていますが、もっとスマートな方法はないものでしょか?

こういう場合の定石があったら教えてください。
608デフォルトの名無しさん:2005/09/17(土) 22:27:28
ファイルに関連付けられたアイコンを取得するにはどうすれば
いいのでしょうか?
609デフォルトの名無しさん:2005/09/17(土) 22:31:21
>>606
/で統一したほうがJava的にはすっきりする。

それから絶対パスをハードコーディングするんじゃない!
そいつは使用禁止だ!
610デフォルトの名無しさん:2005/09/17(土) 22:33:22
今気づいたが Swing の JTextField や JTextPane で [CTRL]+[SHIFT]+[O] 押すと
右寄せ/左寄せが切り替わるのな。

>>607
バイナリ自体には符号付も符号なしも関係ない。1 バイト幅で 255 を出力したきゃout.write(255 & 0xFF);
読み込みしたきゃ
int num =
611デフォルトの名無しさん:2005/09/17(土) 22:33:39
>>607
普通にbyteを使えばいい。
必要に応じて0xffとの&をとって自分でunsigned化する。
612デフォルトの名無しさん:2005/09/17(土) 22:36:22
失礼、書きかけで送ってしまった。

>>607
1 バイト幅で 255 を出力したきゃout.write(255 & 0xFF);
それを読み込みしたきゃ int num = in.read() & 0xFF; (← EOF チェック省略)

>>608
Java だけでは出来ません。JNI 使ってください。
613デフォルトの名無しさん:2005/09/17(土) 22:37:40
>>607
基本的には byte で扱って、必要な場合に byte_value & 0xFF とか (byte)unsigned_value とかする。
614デフォルトの名無しさん:2005/09/17(土) 22:41:21
>>608
・JConfig を使う
・JDIC の Icon Service を使う。(Mustang か JDK7.0に入るかも?)
・自分でJNI使って取得する。

どれでも好きにすれば良い。
615デフォルトの名無しさん:2005/09/17(土) 22:42:16
>>610-612

入出力はそうかもしれませんが、プログラムでバイト配列の操作をするときに、

byte[] data = { 0x79, 0x80, 0x81, 0x82 };
byte data = 0xff;

こんなのがどちらもコンパイルエラーになってしまいます。
これでは、バイナリデータの操作がしにくいと思うんですが。

とおもったけど、こうすればいけるかぁ。

byte[] data = { (byte)0x79, (byte)0x80, (byte)0x81, (byte)0x82 };
byte data = (byte)0xff;

んー。
616デフォルトの名無しさん:2005/09/17(土) 22:44:00
>>615
それは慣れるしかねーな。俺もそう思ったことあるし。
617デフォルトの名無しさん:2005/09/17(土) 22:46:15
>>608
16x16 のアイコンでよければ

・javax.swing.filechooser.FileSystemView#getSystemIcon(File) を使う

ってのもあるね。
618デフォルトの名無しさん:2005/09/17(土) 23:04:39
>615
どうしてもプログラム中バイト配列を固定値で初期化せんならんなら

byte[] data = "\u7980\u8182".getBytes("UTF-16BE");

正直良コードとは自分でも思わないが。
619607=615:2005/09/17(土) 23:10:18
どうも、ありがとうございました。
ちょっと面倒ですが、キャストしながややってみようと思います。
char[] から解放されるだけでも、こっちのほうがよさそうです。
620デフォルトの名無しさん:2005/09/17(土) 23:26:05
SwingのImageをSWTのImageに変換するにはどうすればいいのでしょうか?
621デフォルトの名無しさん:2005/09/17(土) 23:38:47
>>620
一度RGBかなんかのバイト列に直せ。
622デフォルトの名無しさん:2005/09/17(土) 23:40:15
>>620
BufferedImage(っつーか、RenderedImage の実装クラスなら)
javax.imageio.ImageIO#write() で、SWTがサポートする形式のファイルに書き出してから
org.eclipse.swt.graphics.Image をファイルから作成する。

もしくは java.awt.image.PixelGrabber とか使って画像データ読み出して
画像データから org.eclipse.swt.graphics.ImageData 作成、
ImageData から org.eclipse.swt.graphics.Image を作成するとか。
623デフォルトの名無しさん:2005/09/17(土) 23:42:59
624デフォルトの名無しさん:2005/09/18(日) 00:46:45
TimerTaskは一度スケジュールされると二度と使えないのでしょうか?
cancelした後でスケジュールしても例外が投げられるので困っています。
625デフォルトの名無しさん:2005/09/18(日) 01:18:45
>>624
API仕様を読め。

> IllegalStateException - タスクがすでにスケジュールされたか取り消された場合、
> タイマーが取り消された場合、またはタイマースレッドが終了した場合

二回スケジュールできるとか、
cancelした後でスケジュールできるような実装は仕様違反。
626デフォルトの名無しさん:2005/09/18(日) 06:30:01
>>599
例示の内容をあげつらうなんて、お前ら馬鹿だろ?
こういう奴らがのさばっているから、この業界はダメなんだよ
627デフォルトの名無しさん:2005/09/18(日) 06:37:06
m9(^Д^)プギャー
628デフォルトの名無しさん:2005/09/18(日) 06:46:39
>>624
TimerTaskを使いまわしたいようだけど、まさかTimerTask自体にやらせたいことを実装していないよね?
629デフォルトの名無しさん:2005/09/18(日) 08:16:47
>>625
了解しました。メンバクラス化して何度も作れるようにします。

>>628
以前はしてましたw
メンバメソッドを呼び出すだけのrun()を
メンバクラス(非static)に持たせる方法を選択したのですが
これなら生成コストも安く済みますか?
630620:2005/09/18(日) 08:53:47
アイコンを表示できましたが、背景が黒くなってしまいました。
エクスプローラのアイコンのような背景にするには
どうすればいいのでしょうか?

public static Image getImage(Display display, Object element) {
Image image = null;
try {
image = new Image(display, 16, 16);
FileSystemView view = FileSystemView.getFileSystemView();
ImageIcon icon = (ImageIcon) view.getSystemIcon(new File("C:/OemOut.ini"));
java.awt.Image awtImage = icon.getImage();
PixelGrabber pg = new PixelGrabber(awtImage, 0, 0, 16, 16, true);
try { pg.grabPixels(); }
catch (InterruptedException e) { }

int px[] = (int[])pg.getPixels();
631620:2005/09/18(日) 08:55:28
つづき
GC gc = new GC (image);
image.getImageData().setPixels(0, 0, 16, px, 0);
for (int y = 0; y < 16; y++) {
for (int x = 0; x < 16; x++) {
int p = px[ y * 16 + x];
int r = p>>16 &0xff;
int g = p>> 8 &0xff;
int b = p &0xff;
Color color = new Color (display, r, g, b );
gc.setForeground(color);
gc.drawPoint(x, y);
}
}
} catch (Exception e) {
return null;
}
return image;
}
632デフォルトの名無しさん:2005/09/18(日) 08:58:14
>>629
C++を知らないからメンバメソッド・メンバクラスという言葉が
はっきりわからないけど、委譲していればTimerTask自体のnew
だけになるから、生成コストは安く済むと思うよ
633デフォルトの名無しさん:2005/09/18(日) 09:09:38
>>629
おまえさん言葉がおかしいよ
メンバメソッドなんて言わねぇから
634デフォルトの名無しさん:2005/09/18(日) 09:19:14
>>633
うるせーカス
635デフォルトの名無しさん:2005/09/18(日) 09:58:19
カスにカス呼ばわりされました(^ω^;)
636デフォルトの名無しさん:2005/09/18(日) 10:07:03
とカスが言ってます
637デフォルトの名無しさん:2005/09/18(日) 10:12:39
C++だとクラス化されていない関数があるからおかしくはないと思う
638デフォルトの名無しさん:2005/09/18(日) 10:25:27
>>630
SWT でファイルに関連付けされたアイコン出したいんなら

return new Image(display, Program.findProgram( "拡張子" ).getImageData());

が簡単かな。 null チェックとかしてないけど。
639620:2005/09/18(日) 10:44:52
>>638
ありがとう。

できれば拡張子ではなく、ファイルが持っているアイコンを表示したい。
エクスプローラで表示されているアイコンと同じものはどうすれば
いいのでしょうか?
640デフォルトの名無しさん:2005/09/18(日) 10:52:49
意味わかってないだろ、おまえ。
641デフォルトの名無しさん:2005/09/18(日) 10:56:21
1.実行ファイル内に専用のアイコンがあればそれを表示
2.無ければ関連付けされた拡張子のアイコンを表示

この順で処理しなくちゃ正しくアイコン表示なんて出来ないはずだけど
実行ファイル内にリソース埋め込むのってWindowsだけでは?
Linuxとかだとインストールした実行ファイルしかリソース持てないよね
642デフォルトの名無しさん:2005/09/18(日) 11:15:47
>>641
いや、Windows オンリーならレジストリ見れば実行ファイルも関連付けされてるはずだから、
関連付けされた拡張子のアイコンを表示だけで良いはず。 %1 とかを解釈しないとダメだけど。
643デフォルトの名無しさん:2005/09/18(日) 11:28:35
exeだけ落としてきてもそのファイルって独自のリソース持ってるよね?
エクスプローラが描画するときに自動的にレジストリに追加するってこと?
644デフォルトの名無しさん:2005/09/18(日) 11:43:50
>>630
アルファつぶしてるだけじゃないか?
645デフォルトの名無しさん:2005/09/18(日) 11:47:43
>>643
.exe 以外にも .ico も内部に持ってるアイコンが使用されるでしょ。それと同じ。

regedit とかで
HKEY_CLASSES_ROOT\.exe
HKEY_CLASSESROOT\exefile\DefaultIcon
とか見てみろ。
646初心者 ◆ACiNmI6Dxs :2005/09/18(日) 11:51:19
すいません。質問です。
StringBufferクラスはtoStringメソッドにて
Stringクラスに変換できるようなのですが、
反対にStringクラスをStringBufferクラスに変換する
メソッドってないものなのでしょうか。
647デフォルトの名無しさん:2005/09/18(日) 11:55:10
>>646
つ new StringBuffer("文字列")
648デフォルトの名無しさん:2005/09/18(日) 11:58:53
>>645
なるる。
649初心者 ◆ACiNmI6Dxs :2005/09/18(日) 12:00:00
>>647さん
ありがとうございました。
650デフォルトの名無しさん:2005/09/18(日) 12:03:00
StringBuilderつかったほうが速くていいけどな
651デフォルトの名無しさん:2005/09/18(日) 12:28:16
StringBuilderよさそうだ、これ単に同期省いた版?
これもMatcherとかで投げさせてほしかった
言ってみたが1.5の機能未だに使った事ない
652デフォルトの名無しさん:2005/09/18(日) 12:55:33
>>599
コピー元が消えてしまわないか?
653デフォルトの名無しさん:2005/09/18(日) 13:39:15
>>651
Genericsサイコー
メタデータサイコー
ですぞ
654デフォルトの名無しさん:2005/09/18(日) 13:40:33
ファイルのコピーなんて普通に>>589を使えばいいのに
655デフォルトの名無しさん:2005/09/18(日) 13:41:01
>>651
そう、同期省いただけ
だから速い
656デフォルトの名無しさん:2005/09/18(日) 14:17:16
>>633
メンバメソッドという用語は Sun のドキュメントにも登場しますが。
ttp://java.sun.com/j2se/1.4/ja/docs/ja/api/java/lang/Class.html
657デフォルトの名無しさん:2005/09/18(日) 15:04:34
>>651
文字列連結とかユーザーは意識しないけどコンパイル時にStringBuilderにかわってるので
従来のアプリも5.0でコンパイルしなおすだけで高速になってる、という場合がある

1.4でなければならないという旧システムでない限り5.0がでてから1年たつんだから
もう5.0で開発してよい

今のところ致命的なのは印刷周りにバグ大量に抱えているというあたりかな
業務アプリでは致命的だがなー
658デフォルトの名無しさん:2005/09/18(日) 15:14:34
そんなに速くなってるか? 何か数値で比較できるものはないんか。
659デフォルトの名無しさん:2005/09/18(日) 16:05:54
J2MEは5にならないの?
660デフォルトの名無しさん:2005/09/18(日) 16:29:18
>>652
だから、もともとコピーする必要性がないんじゃないかって言いたいんだよ・・・
タイムスタンプを保持してコピーなんてバックアップツール以外に何に使うんだと
661デフォルトの名無しさん:2005/09/18(日) 16:36:04 BE:52031423-
>>659
J2MEは知らないけど
Docomoの開発環境DoJaは未だにJ2SE1.3コンパイラにしか
対応していないかと思った。
662デフォルトの名無しさん:2005/09/18(日) 17:03:05
>>661
1.4でいけるぞ
663デフォルトの名無しさん:2005/09/18(日) 17:14:22
正確にはコンパイラのバージョンじゃなくてクラスファイルのフォーマットのバージョン
だよな。
664デフォルトの名無しさん:2005/09/18(日) 23:23:51
そうそう、コンパイラ準拠レベルを1.3にしないと動かないんだよね。
ということは・・・・
TigerでかかれたGenericsとかのコードは動かんってこと?
665デフォルトの名無しさん:2005/09/18(日) 23:34:51
List<String>なんてもっての外だから安心して
666666:2005/09/19(月) 00:33:10
今、jspを利用して、顧客、メーカー、サプライヤーの枠組みで生産管理システムを
3台のパソコンで仮想的な受注と発注を行いたいのですが、他のパソコンから
データベースに接続する方法が分かりません。一応フォーム、データベースは
もうできているので、後は他のパソコンから接続してデータを反映する事で
問題は解決できると思います。
たぶんサーバ名を"localhost"にしているためだと思うのですが何に変更すれば
いいか、調べてはみたのですが、全く分かりません。分かる方、どうかお教えお願いします。


667デフォルトの名無しさん:2005/09/19(月) 00:37:12
もうJava関係ねーよそれ
668デフォルトの名無しさん:2005/09/19(月) 01:32:22
>>666
マルチポストウザイぞ。
どうしてもマルチポストになるってんなら
あちらでも質問したということを記せ。
そしてどちらで返信して欲しいかも書け。
669573:2005/09/19(月) 01:57:06
573です、見るの遅くなりました。

578>
これは僕が使った方法にロジックを追加する方法ですよね。
こういう処理を行わずに一発でコピーはできないですかね?

589>
654>
できればSDKに最初から入っているクラスだけで。

599>
これは同じファイルを作れないのでダメです。

660>
いろいろファイル操作をするのでバックアップを取ろうと考えています。
別にJavaでやる必要も無いのですが後々インターフェースをCUIからGUIへ変えたい&
開発環境がただって言うのが魅力的で・・・。

そんな方法無ければ「できない」って答えでも良いです。
670573:2005/09/19(月) 01:59:59
アンカーが反対だった・・・。
>>578
>>589
>>654
>>599
>>660
671デフォルトの名無しさん:2005/09/19(月) 02:40:05
>>669
> 573です、見るの遅くなりました。
>
> 578>
> これは僕が使った方法にロジックを追加する方法ですよね。
> こういう処理を行わずに一発でコピーはできないですかね?
>
> 589>

なぜ
> できればSDKに最初から入っているクラスだけで。
に拘るのだろうか。
Jakarta製品は CommonsでもSandboxでないものであれば
かなり信頼と実績があるわけだが。
Jakarta Commonsのコンポーネントは、
試験に合格したものだけがSandboxの外に出られる。
その中でJakarta Commons IOは試験という関門をくぐり抜けてきた
それだけ信頼されているということだ。それを使わない理由がわからない。
672デフォルトの名無しさん:2005/09/19(月) 02:43:18
>>671
573ではないが標準外だと配布が多少面倒だと言うのもあるだろう。
673デフォルトの名無しさん:2005/09/19(月) 02:45:10
どこが面倒なんだ
自分で作ったJARの配布はできる癖に
他人のJARは面倒か。
Apache Mavenを使えば配布する必要すらないのに。

Tomcatを使っておきながらservlet.jarの配布も面倒だとか言い出すんだろうか。
Tomcatにはcommons系のAPIが沢山使われているのに
commonsは標準じゃないから配布が面倒だとか言い出すのだろうか。
674デフォルトの名無しさん:2005/09/19(月) 02:45:39
オプソ 厨ただいま光臨中
675デフォルトの名無しさん:2005/09/19(月) 02:54:48
相手の事情を尊重しないでああすればできるこうすればできるなぜやらない
としか言わない奴ってリアル世界もでたまに居るよな。
宗教押し付けんなっつーの。
676デフォルトの名無しさん:2005/09/19(月) 03:44:02
>>674
だったらJava使うなと
2chもな
677デフォルトの名無しさん:2005/09/19(月) 03:48:02
ファイルの複製なんかプラットフォーム依存だからある程度妥協するしかないだろ
ファイルの属性がwin95,winNT,unix,その他とかでばらばらなんだから
678デフォルトの名無しさん:2005/09/19(月) 03:48:40
>>673
少なくともTomcatをクライアントに配布することはないな。
Mavenなんかもってのほか。

>>676
Javaはオープンソースではないし2chもオープンソースではないな。
679デフォルトの名無しさん:2005/09/19(月) 03:57:49
>>677
そんな細かい依存はないだろ。
ファイルセパレータだって File.separatorを使えばいいし
相対パスにすれば依存度はほぼ無に近い。
ファイルの大文字小文字区別問題はif文で判定して重複して上書きしないような
自動リネーム機能をつかえばよいし。

>>678
サーバで使う場合の話でしょ。サーバならMavenも使う価値があるかな。
jarもFatJarでまとめれば面倒ということもないかと。

使われている技術がオープンソースってことかと。
Javaも完全ではないがAPIはオープンソースになっているわけだし。
Java6から完全にオープンソース化される可能性もあるわけだ。
680デフォルトの名無しさん:2005/09/19(月) 04:03:02
「だったら〜」 という言い回しは大抵知能障害を起こしてる法則
681デフォルトの名無しさん:2005/09/19(月) 04:06:41
>>679
君はファイルのタイムスタンプとか権限とか知らんのか?
682デフォルトの名無しさん:2005/09/19(月) 04:09:55
それから
>ファイルの大文字小文字区別問題はif文で判定して重複して上書きしないような自動リネーム機能をつかえばよいし。
リネームするとかの処理すら嫌って言ってるから妥協しろってことね
683デフォルトの名無しさん:2005/09/19(月) 04:11:35
また キチガイ じみたのが沸いてきたな
684デフォルトの名無しさん:2005/09/19(月) 04:21:00
>>683
そんな負け惜しみ言ってないで素直に勉強したほうが君の為だぞ
685デフォルトの名無しさん:2005/09/19(月) 04:56:27
>>669
だったらリネームしてから、それを元にコピーを作ればいいんじゃないのか?
同一のコピーを作ることにそんなにこだわる理由がわからん
686デフォルトの名無しさん:2005/09/19(月) 05:07:23
派遣は連休は暇なのか。
687デフォルトの名無しさん:2005/09/19(月) 05:12:06
>>684
なんか心当たりでも?
688デフォルトの名無しさん:2005/09/19(月) 11:47:54
質問があります。
テンプレサイトを一通り目を通したのですが、お薦めの書籍のようなページを見つけることができませんでした。
全くプログラミングをしたことがない人間に勧められるJAVAの書籍というものはないでしょうか。

689デフォルトの名無しさん:2005/09/19(月) 11:51:08
Canvas上でマウスをドラッグを検知して線などを
描画できるSWTのサンプルはありませんか?
690デフォルトの名無しさん:2005/09/19(月) 12:31:09
>>688
> 全くプログラミングをしたことがない人間に勧められるJAVAの書籍というものはないでしょうか。

あります。以上。
691デフォルトの名無しさん:2005/09/19(月) 12:39:13
初心者スレで初心者煽ってるって派遣?
692デフォルトの名無しさん:2005/09/19(月) 12:43:45
自称中・上級者がたむろするスレだから人間の質に期待しちゃダメ絶対
693デフォルトの名無しさん:2005/09/19(月) 12:44:49
ここは2ちゃんねるですよ
694デフォルトの名無しさん:2005/09/19(月) 13:14:08
>>690 みたいに一応は回答になってるものと
>>690-694 みたいに単に煽ってるだけのものでは
前者の方が圧倒的に意味があると思うのは俺だけか?
695デフォルトの名無しさん:2005/09/19(月) 13:16:26
質問させてください。
現在、Strutsを勉強しております。

Strutsのアクションにて前処理としてデータベースからデータを取得し、
リクエストやセッションに保存した後、取り出したデータを表形式で表示するJSPを呼び出し、
JSPにて表示させています。

こういった場合、行き成りJSPを直接呼び出されると、データが無いので一覧が表示されません。
必ず、前処理のアクションから呼び出す為にはどうしたら良いのでしょうか?

一応、自分なりに考えた事を書いておきます。

・直接JSPを呼ばれても表示させない
・直接JSPを呼ばれたら、前処理のアクションに処理を移し、そこからJSPを再度呼ぶ
・そもそも、前処理をアクションで行わない

ただ、いずれにしても、どのように実装したらいいかも分からなく、
また、Strutsで何か設定すれば、同様なことが簡単にできるのでは?とも考えています。

よろしくお願いします。
696デフォルトの名無しさん:2005/09/19(月) 14:09:43
>>660
おまえいろんなプロジェクトで、
勝手に自分で解釈して仕様変更しちゃって(こっちのほうがいいとか言って動作を変えてしまう)
迷惑がられないか?
697デフォルトの名無しさん:2005/09/19(月) 14:11:27
>>696
俺新人なのに勝手に仕様変更して通しちゃったことあるw
一切の反対がなかったから気にも留めなかったが、よく考えたらずうずうしいと反省した
698デフォルトの名無しさん:2005/09/19(月) 14:13:51
http://www5b.biglobe.ne.jp/~ohloto6/quickpic.htm
このページの、選択された数字を外して残りの中からランダム生成する方法が
どうやっても解らないんですけど誰か解りませんか。
699デフォルトの名無しさん:2005/09/19(月) 14:16:17
>>694
それは完全に質問者次第では。

しかし一般的な解釈から言えば「初心者向けの解説書はないでしょうか」という質問には
「もしあるならご教示ください」という意味が含まれるし、
質問者も「ある」ということは最初からわかっているだろう。
それに>>690の回答は>>691-694のような煽りを招くというのもある。
700デフォルトの名無しさん:2005/09/19(月) 14:18:26
>>697
いやいや、「こうやって見てはどうでしょう」って言う相談なら全然問題ないのよ

問題なのは、ここ最近、おとなしいなあいつ・・・とおもってほったらかしにしてたら
勝手にいろんなとこ書き換えていやがったりとか
まぁ、おれが監査しているわけではないのでいいのだが、PGリーダは大慌て もちPGリーダの責任
701デフォルトの名無しさん:2005/09/19(月) 14:21:11
>>698
トランプのカードを引くことを考えてみそ
702デフォルトの名無しさん:2005/09/19(月) 14:21:14
>>695
遷移(Forward)だけ行う空のActionがありますので、それ使いましょう
最近Strutsやっていないから忘れたけど名前なんて言うんだっけ・・・
なんかJSP直でアクセスされないために
全部WEB-INF内に入れていたような気がするが・・・・もう覚えていない・・・・
703デフォルトの名無しさん:2005/09/19(月) 14:41:02
Javianならこれ

ttp://snapplatform.org/
704デフォルトの名無しさん:2005/09/19(月) 14:44:01
去年Javaの勉強を少ししたのですが、今日からまたはじめることにしました。
以前は1.4.0(?)あたりを使っていました。
今の5.0への変更点で注意するべきところがあったら、教えて頂けませんでしょうか。
705デフォルトの名無しさん:2005/09/19(月) 15:09:59
706デフォルトの名無しさん:2005/09/19(月) 15:12:14
気を付けるというか
例えば推奨されないメソッド使ったとしてもコンパイラが教えてくれるし
ふつーにやっていればいいと思う
よく使う中では、コレクション関係は書き方変わった、どっかの勉強サイトみて解決できると思う程度だが
707デフォルトの名無しさん:2005/09/19(月) 15:27:37
>>705-706
レスありがとうございます。
705さんのリンク先を拝見しましたが、
もともと大して理解していなかったので、よくわかりませんでした。

私程度のレベルならあまり気にしなくてもいいという事ですかね。
708デフォルトの名無しさん:2005/09/19(月) 15:39:09
>私程度のレベルならあまり気にしなくてもいいという事ですかね。
俺もほんとはそれを言いたかったんだがな
709デフォルトの名無しさん:2005/09/19(月) 15:56:28
今、私はJavaの入門書を読んでいるのですが、サンプルコードを打ち込むとこ
ろで、こういうものにでくわしました。

 JButton btn1= new JButton("Button1");
 JButton btn2= new JButton("Button2");
 JButton btn3= new JButton("Button3");
 JButton btn4= new JButton("Button4");
 JButton btn5= new JButton("Button5");
 JButton btn6= new JButton("Button6");

似たようなコードを6行も打つ場面です。面倒くさくてイヤになりますよね。
そこで私はさっそくQBasicでこんなプログラムを作りました。

CLS
OPEN "javasrc.txt" FOR OUTPUT AS #1
FOR i = 1 TO 6
 PRINT #1, USING "JButton btn#"; i;
 PRINT #1, "= new JButton(" + CHR$(34);
 PRINT #1, USING "Button#"; i;
 PRINT #1, CHR$(34);
 PRINT #1, ");"
NEXT i
PRINT "done"
END

実行すると javasrc.txt という名前のテキストファイルに 上記の6行のコー
ドが出力されるので、あとはそれをエクスプローラーからメモ帳で開いてJava
用のエディターにコピペすればオッケー。 普通はこういう作業はPerlでやる
そうですが、私はまだPerlの本は5ページしか読んでないので、QBasicでちゃ
ちゃっと作って見ました。
710707:2005/09/19(月) 15:57:04
>>708
けっこう大きく変わったと聞いたので、
本の通りにやっても間違っていたらやだなあ、と思いまして。

使ってる本は独習Java第2版なんですが、
第3版に変えなくても大丈夫でしょうか。
711デフォルトの名無しさん:2005/09/19(月) 15:59:37
>>709
普通に行コピーして数字変える方が速いと思うが。
712デフォルトの名無しさん:2005/09/19(月) 16:04:40
>>710
だから、コレクション関係だけだと思う
君の視点からすると、コレクション関係は書き方が変ってしまい
旧来の書き方だと5.0ではコンパイルエラーになる
713デフォルトの名無しさん:2005/09/19(月) 16:11:07
>>710
出版社のページで目次だけ見たけど第3版でも Vector とか Hashtable とか使ってるし
AWTの章があるのに Swing の章が無かったりで、5.0用に全面的な書き換えとかはしてなさそう。
(っつか、JDK1.1の頃のまんまっぽい)独習Java 使うんなら第2版でもよいと思うけど。
714デフォルトの名無しさん:2005/09/19(月) 16:15:15
別に非推奨扱いされてるわけじゃないんだし
同一インタフェースのコレクションの違いを説明するよりVectorで通したほうが説明が楽
715707:2005/09/19(月) 16:21:36
>>712
正直、ガベージコレクションという概念自体よく知りませんが、
そのへんに変更があるということを念頭において勉強することにします。

>>713-714
なんだかよく分かりませんが、とりあえず買い替えないで使うことにします。
716デフォルトの名無しさん:2005/09/19(月) 16:21:48
Vector・・・全然つかわね〜よ
おまえはiappliしかつくらないのか?
717デフォルトの名無しさん:2005/09/19(月) 16:22:50
>>715
おい、・・・・俺の言っているコレクションは
ガベージコレクションの事ではない
java.util.Collection
718デフォルトの名無しさん:2005/09/19(月) 16:29:53
MSJVM で動かそうと思ったら 1.1 ベースで作る必要があるな。
とか言ってるとまた人の事情を無視するおせっかいが沸いてくるか。
719デフォルトの名無しさん:2005/09/19(月) 16:34:26
>>718
jdk5.0じゃtarget指定しても無理ってこと?
720デフォルトの名無しさん:2005/09/19(月) 16:38:36
>>716
俺はクライアントサイドずっとやってるから使いまくりだが
おまえはSwingつかったことないのか?
721デフォルトの名無しさん:2005/09/19(月) 16:48:53
>>719
ライブラリレベルの話。target 1.1 でコンパイルしても ArrayList とか
使ってたら意味ないだろ。
722デフォルトの名無しさん:2005/09/19(月) 16:53:24
>>686
最近の派遣はマジで裏山すぃ

時給3000円ももらえるんだってよ。
派遣の癖に!!!!
723デフォルトの名無しさん:2005/09/19(月) 16:54:21
>>680
それが本当に法則であることを証明できるかね?
724デフォルトの名無しさん:2005/09/19(月) 16:56:17
>>722
5000円くらいのもあるぞ
725デフォルトの名無しさん:2005/09/19(月) 16:58:04
派遣だからだろ
何を言ってるのやら
726デフォルトの名無しさん:2005/09/19(月) 17:01:41
おまえら、ちゃんとボーナス・退職金・保険・年金・有給分も入れて自分の時給計算したか?
派遣を羨ましがってる奴って、手取りや額面だけ見てて所得の仕組みすら分かってない奴
多いんだが。

とかいう俺も独立するまでよく知らんかったが。
727デフォルトの名無しさん:2005/09/19(月) 17:02:45
728デフォルトの名無しさん:2005/09/19(月) 17:07:59
Graphicsでモーションを並べたキャラチップを描画するのってどうしたらいいの?
729>>728:2005/09/19(月) 17:08:41
同じ規格の画像並べて歩いてるように見せてる画像のことね
730デフォルトの名無しさん:2005/09/19(月) 17:10:31
CG 分野はよく知らんが、アニメーションと同じ要領じゃだめかね。
731デフォルトの名無しさん:2005/09/19(月) 17:12:41
>>728
普通に一定の時間が経過したら次のモーション表示すれば良いのでは?
732デフォルトの名無しさん:2005/09/19(月) 17:16:17
>>726
残業代が出ない正社員なんて時給300円以下だぞ
733デフォルトの名無しさん:2005/09/19(月) 17:21:01
>俺はクライアントサイドずっとやってるから使いまくりだが
クライアントサイドとVectorは関係ないよ

>おまえはSwingつかったことないのか?
Swingは使った事あり
734720 ではないが:2005/09/19(月) 17:24:24
735>>728:2005/09/19(月) 17:27:17
>>731
Image側に処理させたいの。
Clipみたいなことして本来の画像の大きさ隠蔽する方法ないかな?
736デフォルトの名無しさん:2005/09/19(月) 17:39:14
>>735
> Image側に処理させたいの。
そーゆー Image を作れば?アニメーションgif を実装してる方法を参考にするとか。

> Clipみたいなことして本来の画像の大きさ隠蔽する方法ないかな?
意味がわからん。
737デフォルトの名無しさん:2005/09/19(月) 17:41:47
意味分かるだろ馬鹿は答えなくていいよw
738デフォルトの名無しさん:2005/09/19(月) 17:58:35
>>733はSwingつかったことないんだろうなぁ
739デフォルトの名無しさん:2005/09/19(月) 18:20:27
booleanの配列からtrueになってる要素番号の配列を高速に取得する方法はありませんか?
独自にKeyListenerの実装してて必要になりました。

Integerの配列を256個作ってLinkListに放り込まれたものをtrueと見なす方法が良いのでしょうか?
740デフォルトの名無しさん:2005/09/19(月) 18:25:27
256個くらいなら配列のまままわしたほうが高速そうだ
741デフォルトの名無しさん:2005/09/19(月) 19:10:00
boolean[256]: 2140
LinkedList<Integer>: 250
ArrayList<Integer>(256): 219

ベンチマーク取ってみました。100万回ほど出し、入れ、配列取得をまわしたミリ秒数です。
new ArrayList(256)という初期化でremoveのコストが抑えられるようですね。
742デフォルトの名無しさん:2005/09/19(月) 19:13:13
SWTで簡単なペイントを作っていますが、一旦ウィンドウが隠れると
絵が消えてしまいます。どうすればいいの?

public class B extends Composite {

private Canvas canvas = null;

public B(Composite parent, int style) {
super(parent, style);
initialize();
}
private void initialize() {
setSize(new Point(300, 200));
setLayout(new FillLayout());
createCanvas();
}

private Point sp = null;
private boolean mouseL = false;
743デフォルトの名無しさん:2005/09/19(月) 19:14:59
private void createCanvas() {
canvas = new Canvas(this, SWT.NONE);
canvas.addMouseListener(new org.eclipse.swt.events.MouseAdapter() {
public void mouseUp(org.eclipse.swt.events.MouseEvent e) {
if(e.button==1) {
mouseL = false;
sp = null;
}
}
public void mouseDown(org.eclipse.swt.events.MouseEvent e) {
if(e.button==1) mouseL = true;
}
});
canvas.addMouseMoveListener(new org.eclipse.swt.events.MouseMoveListener() {
public void mouseMove(org.eclipse.swt.events.MouseEvent e) {
if (!mouseL) return;
if (sp == null) sp = new Point(e.x, e.y);
Color red = getDisplay().getSystemColor(SWT.COLOR_RED);
GC gc = new GC(canvas);
gc.setForeground(red);
gc.drawLine(sp.x, sp.y, e.x, e.y);
gc.dispose();
sp = new Point(e.x, e.y);
red.dispose();
}
});
}
}
744デフォルトの名無しさん:2005/09/19(月) 19:17:36
>>741
falseのほうはとってこないわけね
ならそれでいい

つーか、やればわかるようなのを先に聞くな
745573:2005/09/19(月) 19:18:32
573です。

>>671
信頼性がどうとかではないです。
人にソースをあげたときコンパイルできんとか言われるのが嫌なので。

>>685
この方法は使えるかもしれません。
でもやっぱり完全なコピーが欲しい・・・。

とりあえずJavaSDKに最初から入っているクラスを使用して
完全なファイルのコピーを作成することはできないと言う事でクローズします。
回答してくれた方々ありがとうございました。
746デフォルトの名無しさん:2005/09/19(月) 19:23:16
>>744
他にもっと良い方法があれば知りたかったんです。
747デフォルトの名無しさん:2005/09/19(月) 19:27:36
>>742
paintComponentで描画してみ
748デフォルトの名無しさん:2005/09/19(月) 19:29:19
SWTだったか。すまん知らんわ
749デフォルトの名無しさん:2005/09/19(月) 19:29:51
知ったかしてる馬鹿にわざわざベンチマーク用意せなならんほど
このスレってレベルが低かったのか
750デフォルトの名無しさん:2005/09/19(月) 19:32:30
>>749
やりたいことがわからん以上どうしようもないのでは?
そもそもキーコードは256でたりんわけだが
751デフォルトの名無しさん:2005/09/19(月) 19:35:38
やりたいことは書いてあるだろw
falseが必要ないならとか苦し紛れにもほどがある
752デフォルトの名無しさん:2005/09/19(月) 19:39:29
>>751
キーのステート見るときtrueとfalseの両方が必要な場面は多いだろ
そしてキーコードは最大16bit

256回まわすというのも意味不明だろ
753デフォルトの名無しさん:2005/09/19(月) 19:42:07
> 256回まわすというのも意味不明だろ
???
なんで日本語読めない人間が回答者やってるの?
754デフォルトの名無しさん:2005/09/19(月) 19:44:38
>>753
キー入力とるのに配列が256個じゃたりないってことだろう?
755デフォルトの名無しさん:2005/09/19(月) 19:46:47
用途次第だろ、何で仕様を回答者が決めるんだっての
756デフォルトの名無しさん:2005/09/19(月) 19:49:21
実行時にバグ出さないための老婆心だろ
757デフォルトの名無しさん:2005/09/19(月) 19:49:58
758デフォルトの名無しさん:2005/09/19(月) 20:10:54
16bit分をサポートするなら尚更Listが優位だな
しかしクラスをロードするだけで1MBくらい食いそうw
759デフォルトの名無しさん:2005/09/19(月) 20:34:00
どーでーもいーでーすよっ
760デフォルトの名無しさん:2005/09/19(月) 20:35:09
>>709
Jakarta Velocityを
使えばもっとスマートに記述できるよ。
でももっとさらにスマートにするなら

JButton[] btn = new JButton[6];
for(int i = 0; i < 6; i++){
 btn[i] = new JButton("Button" + i);
}

だね。
761デフォルトの名無しさん:2005/09/19(月) 20:36:52
>>745
> 573です。
>
> >>671
> 信頼性がどうとかではないです。
> 人にソースをあげたときコンパイルできんとか言われるのが嫌なので。
それはそいつのJavaスキルの足り無さが(ry
762デフォルトの名無しさん:2005/09/19(月) 20:42:14
Apacheライセンスがダメというところもあるんじゃないかな
763デフォルトの名無しさん:2005/09/19(月) 20:42:29
trueとfalseしかないサイズ256の配列なら
trueになっている部分のindexだけをとって
それをbyte型の配列に入れてしまえば(ry

もしくはそいつを list.add(new Byte(arrayIndex));
でListに入れてしまえば(ry
764デフォルトの名無しさん:2005/09/19(月) 20:43:14
>>762
GPLより緩いけど
Apacheって不利になる要素あるのかな?
765デフォルトの名無しさん:2005/09/19(月) 20:46:02
Apacheライセンス2って修正BSD系でしょ?一番ゆるいな
766デフォルトの名無しさん:2005/09/19(月) 20:49:33
>>764
GPL使ってるとか
767デフォルトの名無しさん:2005/09/19(月) 20:51:31
>>763
先にstatic初期化子でByte配列にしとくとガベコレ&new対策になるよ
768デフォルトの名無しさん:2005/09/19(月) 21:17:07
>>739
java.util.BitSet
769デフォルトの名無しさん:2005/09/19(月) 21:39:42
>>768
調べてみましたが、nextSetBitを使えばよろしいのでしょうか?
770デフォルトの名無しさん:2005/09/19(月) 22:56:31
>>765-766
緩いとかそういう問題かよw バグや仕様変更の要求あっても
メンテの責任ある奴がプロジェクトに参加してない状況は
普通に歓迎されないから。おまえら本当は仕事してないだろ?
771デフォルトの名無しさん:2005/09/19(月) 22:59:29
>>722
俺1500円ももらってねーよw
プログラマとかじゃ全然ないけど。
てかJAVAでそんだけ貰えるんなら明日にでも転職したいです。
772デフォルトの名無しさん:2005/09/19(月) 23:15:18
GoogleはJavaの募集するのにPythonの経験が必要だってよ
なんで?
773デフォルトの名無しさん:2005/09/19(月) 23:26:05
>>771
そんなのjavaできるって言っちゃえばいいだよ。
大きいプロジェクトなら8割以上役立たずだから大丈夫。
774デフォルトの名無しさん:2005/09/19(月) 23:26:49
>>771
今、言語の違いによって収入がかわるってことは少なくなってきた感だな。

ワンマン経営の零細企業ほどそういうところは適当だしね。
775デフォルトの名無しさん:2005/09/19(月) 23:31:39
>>768
java.util.BitSetは立ったビットによってかなりムラがありますね。
キー値が0x02FFくらいまでならList法の倍速を叩き出しましたが
0x0FFFでは1.3倍くらい遅くなり、0xFFFFではかなり遅くなります。
ただ現実的にはVK_UNDERSCORE=0x020Bまでのキー値で勝てればよいので
こちらを採用しようと思います。ありがとうございました。
776デフォルトの名無しさん:2005/09/19(月) 23:33:37
>>770
ゆるいとかそういう問題じゃね?
Javaそのものにもバグがあるのに何を言ってるんだか。
777デフォルトの名無しさん:2005/09/19(月) 23:36:24
>>776
おまえはタダでダウンロードする Sun の JDK しか知らないようだな。
778デフォルトの名無しさん:2005/09/19(月) 23:38:08
>>777
それ以外を知ってるお前も結局SUNのJDKじゃねーか
779デフォルトの名無しさん:2005/09/19(月) 23:42:45
今日の流れみるかぎり釣り人が一人いる気がする
780デフォルトの名無しさん:2005/09/19(月) 23:43:39
(´,_ゝ`)プッ
良いから仕事に就けよw 派遣なら時給 3000 らしいぞ。
781デフォルトの名無しさん:2005/09/19(月) 23:49:06
>>780
実際問題仕事に就いてないのは、このスレでおまえくらいだ。
782デフォルトの名無しさん:2005/09/19(月) 23:49:58
>>776
「Apache は緩いからOK」 「GPL は厳しいからNG」
そんなプロジェクト見たことない。
783デフォルトの名無しさん:2005/09/19(月) 23:50:59
>>782
鯖だけやってるからだろw
784デフォルトの名無しさん:2005/09/19(月) 23:54:14
Javaのアプリってシェアウェアで売ってる?
IDE関係のツールやプラグインは売ってるんだろうけど
785デフォルトの名無しさん:2005/09/19(月) 23:55:12
オプソ 厨大活躍中w
786デフォルトの名無しさん:2005/09/19(月) 23:58:57
やっぱりWつかうやつが一人いるな
787デフォルトの名無しさん:2005/09/20(火) 00:01:13
日本語に特徴のある奴も一人いるな
788デフォルトの名無しさん:2005/09/20(火) 00:03:02
GPLはだめってのはよくあるだろ
789デフォルトの名無しさん:2005/09/20(火) 00:13:05
>>776
JDK にバグがあったら購入元 (バンドル元) に問い合わせるだけだろ。
でかいプロジェクトじゃ免責 JDK なんて使わない。
790デフォルトの名無しさん:2005/09/20(火) 00:16:13
某通信会社の大規模システムに携わってるが、普通にSUNのJDKですよん
791デフォルトの名無しさん:2005/09/20(火) 00:18:16
でかいプロジェクトだと共通ライブラリつくる部隊とかいて
例えば一つログ出すのになんでこんな手間かかるんじゃっていうライブラリ作ってくれて
それのバグとりまでやらしてくれるからオープンソースのライブラリなんて用なしです。
792デフォルトの名無しさん:2005/09/20(火) 00:22:56
Apache Jakarta関係のライブラリって世間的にJava標準の拡張ライブラリって感じで使われてるよな
Javaのオプソ界隈で一番開発力があるってことかな?
793デフォルトの名無しさん:2005/09/20(火) 00:32:19
おっと、使わない方針なのは俺の周囲での話だな。本番環境で Sun の
ダウンロード版 JDK 使うでかいプロジェクトもあるだろう。

話を戻すと、うちみたいにライセンス条項に 「何があっても責任は取りません」
とあればほぼ却下な所は珍しくない (金融機関なら金融庁の監査入るし)。
そういう方針のところに 「APL なら緩いだろ?」 というのは勘違いも甚だしい。
794デフォルトの名無しさん:2005/09/20(火) 00:40:08
>>793
自慢?
795デフォルトの名無しさん:2005/09/20(火) 00:43:28
Strutsみたいなゴミフレームワークがのさばってる現在でオプソ使う奴は無職って理屈もおかしいな
796デフォルトの名無しさん:2005/09/20(火) 00:47:41
793じゃないけど、それなりに大所帯の会社だとライセンス上Sunからダウン
ロードしたのを使えないってとこは多いんじゃないの? うちの会社でも、
別の部門でSunとライセンス結んだから勝手にSunのサイトからダウンロード
して使用許諾契約のボタン押すと先に結んだ契約が反故にされるおそれが
あるのでやるなって全社に御触れが出たことがある。
797デフォルトの名無しさん:2005/09/20(火) 00:49:26
>>793
そんな当たり前のことを。

… 説明しなきゃいけないほどスレの質下がってるのかw むしろ派遣の方が
そういう事情はよく分かってる思うが、ここはそれ以下の連中が多い
インターネッツ なのなw
798デフォルトの名無しさん:2005/09/20(火) 00:54:45
誰か >>795 を訳してください
799デフォルトの名無しさん:2005/09/20(火) 01:01:51
>>798
Struts使う奴は無職
800デフォルトの名無しさん:2005/09/20(火) 01:51:14
昨日から Jakarta 信者が光臨してるのな。布教活動御苦労様。
801デフォルトの名無しさん:2005/09/20(火) 02:08:05
つーか必死なやつも光臨してるが。
802デフォルトの名無しさん:2005/09/20(火) 02:13:07
Commons とかの品質が悪いとは思わないが、相手の事情無視で押し付けて
勝手に憂いてる奴が居るみたい。
803デフォルトの名無しさん:2005/09/20(火) 02:18:10
>>780
その派遣社員が年収いくらになったか知ってるか?
400万超えたんだってよ、
派遣の癖にムカツクーーーーーーーーーーー!!!!
804デフォルトの名無しさん:2005/09/20(火) 02:19:17
>>786
そいつの正体は、嘲笑激藁ドトネトゲラVB厨です
805デフォルトの名無しさん:2005/09/20(火) 02:23:11
>>791
おまえの会社が潰れて、他社と吸収合併したとき、
もしくはチームが解散して人がいれかわったとき、
もしくはどこかの会社を吸い取ったらオープンソースを使った
素晴らしいコードが送られてきて、そいつをメンテして
お前らの自作アプリと合体させろって命令させられたとき、

オープンソースにすればよかったーって後悔してももう遅いぞ。

みずほ銀行のような面倒なことを避けるには
有名なオープンソース製品を積極的に使うといい。

806デフォルトの名無しさん:2005/09/20(火) 02:23:30
…額面の年収 400 万が羨ましいのか?
807デフォルトの名無しさん:2005/09/20(火) 02:25:27
| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
| 電波を感知しました。 |
|__________|
              / /
              /
      _         ビビビ
     /||__|∧    /
  。.|.(O´∀`) /
  |≡( ))  ))つ
  `ー| | |
    (__)_)
808デフォルトの名無しさん:2005/09/20(火) 02:28:45
30歳ぐらいまでは派遣のほうが給料いいらしいよ
809デフォルトの名無しさん:2005/09/20(火) 02:29:49

               _.. ..‐::´/
             _/::::::::::::/
           _/:::::::::::::/ ____
         ,..::::´::::::::::::::::::::: ̄:::::::::::._/
       /:::::::::::::::::| ヽ、:::::;::::::::::::/
       /:::::::::::::::::::::|´|ヽ   |/_:::.::/
  _ .. -─':::::::::::::::、::|`'   ,   .!::∠
  `'' ‐-.._:::::::;-‐、`(●)  (●) |::::`::-、オッス!オラ、ゴクウ!
 =ニ二::::::::::::::::|6    \___/、| -──`   会社が潰れることまで想定してシステム組んだことねぇや!
    ‐=.二;;;;;`‐t    \/  ノ             やっぱプロは考えることが違うな!
810デフォルトの名無しさん:2005/09/20(火) 02:30:32
30超えてから正社員になれば一番儲かるということだな
811デフォルトの名無しさん:2005/09/20(火) 02:33:15
>>792
Jakarta TomcatはもともとSunで作られたものだ。
それをApache Communityに寄贈して現在に至っているのだ。

そういうものはいくらでもある。IBMがつくったものとか。


それから、各大手企業には
オープンソース開発部隊がいる。
たとえばIBMにはApache開発部というものがある。
そこではApche製品を開発しApacheコミュニティに
コントリビュートするためにパッチを作る
専門の職の人が常駐している。

Eclipseも同様だ。
Eclipseの開発に専念している人が常駐している。
企業がオープンソース製品に手を出して
開発するということは、自社の影響力を
高めることになる。さらに、この行為は
すでに普及してしまったオープンソース製品を自社製品に近づけて
自社製品と互換性を持たせるようにする戦略でもある。
オープンソース製品を利用して、
自社製品を売ろうとするという戦略なのだ。

こういう、一見企業の金にも
ならなさそうな開発部隊は富士通、日立, BEA, 東芝にもいる。
彼らもApacheやEclipse製品, Linuxなどに手をだしている。

このように、企業が大きく関与しているからEclipseやApacheの開発速度は
尋常ではなくスケジューリングも非常にしっかりしている。
これはもはやフリーソフトとはとても思えないだろう。
812デフォルトの名無しさん:2005/09/20(火) 02:33:26
そこまでの打算を遂行できる奴なら 30 超える頃には正社員なんて莫迦らしくて
独立してるだろ。
813デフォルトの名無しさん:2005/09/20(火) 02:36:11
>>810
会社にもよるわな。
営業が無能でワンマン社長に支配された零細企業じゃだめだ。
いくら頑張っても営業と社長がバカだから会社は大きくもならないし
黒字にもならない。
金がほしけりゃ大手企業にいって労働組合がしっかりついているところのほうがいいな。

それから株や投資信託、不動産、社債、国債、特許などで
収入を得ることも考えるべきだわな。

おまいらみんな30過ぎてるのか。

20代ばかりだと思っていたが。

814デフォルトの名無しさん:2005/09/20(火) 02:41:29
>>811
ソースは?
確か Tomcat のガイドか何かに 「Apache で以前作ってた JServ の後継版だよ」 と
書いてあったが。Apache が JServ 作ってた頃の Sun は独自に JavaServer とか
何とかいうの作ってたはず。
ひょっとして Sun ONE の中が Tomcat だからそう思ってるとか?
815デフォルトの名無しさん:2005/09/20(火) 02:53:21
おっと、どこかで Sun の資源が Tomcat に合流してることは否定しないよ。
だかそういうのを 「Tomcat は Sun 起源ニ…だ」 と言い切ってしまう君は
どこの国の出身?
816デフォルトの名無しさん:2005/09/20(火) 02:58:07
>>810
転職したら給料リセットされるじゃん
817デフォルトの名無しさん:2005/09/20(火) 03:20:56
>>815
半島出身ニダ
ニダは嘘だよ。
房総半島出身だよ
818デフォルトの名無しさん:2005/09/20(火) 03:22:50
>>816
転職してから給料が大幅にあがったという事例も最近増えてきているぞ。
300万だったのが転職して500万になったとか。

これから収入をえるには特許と株だよ株
給与だけじゃ限界があるんだよ。

819デフォルトの名無しさん:2005/09/20(火) 03:27:01
最近は成果主義が流行っているためかリセットは少ないかと。
だが、成果主義と偽って業績主義にしている会社が多い。
インチキってもんだ。
業績主義では個人が成果を出してもだれかのヘマによって会社全体の
業績が低いと結局賞与は無視される。
で、おまけに残業代も出ないと。

労働組合がないことをいいことに経営者が
精神論を部下に吐いて誤魔化しながら横暴を振り回している。
学生アルバイトしながらそんな現場をよく見てきたものだ。


残業はしないほうがいい。
するなら物好きだけがやればいい。
820デフォルトの名無しさん:2005/09/20(火) 03:32:07
言われてみればウチも業績主義って奴になるな。今度文句言お。

821デフォルトの名無しさん:2005/09/20(火) 03:41:55
文句言っても、労働組合がないときいてくれない可能性もある。

労働組合を決起するという手もある。
労働組合を決起するときは基盤が固まるまで経営者には
絶対に知らせない方がいい。ワンマン経営者だったら
潰しにかかってくる。
822デフォルトの名無しさん:2005/09/20(火) 03:48:58
>>818
そんな給料で特許の維持ができるとは思えんが……
823デフォルトの名無しさん:2005/09/20(火) 03:55:46
最近特許維持も安くなった。
まず20万払って
それから7年間は放置だろ。
あとは売るか維持するかを選択する。

あとは株とかしかないな。
824デフォルトの名無しさん:2005/09/20(火) 04:43:17
Swing の JOptionPane で使われている「はい」「いいえ」「キャンセル」って文字列は
どうやって決定してるんだろ。自分でダイアログを作りたいのであれと同じ文字列を
取りたいんだけど。
825デフォルトの名無しさん:2005/09/20(火) 09:36:30
かなり話ぶり返すけど
boolean[256]をスパゲッティ風だとint[8]で済むねlong[4]??
bit[i] & Integer.MAX_VALUEでがーがーがーーって
こゆーのjavaでやるとなんか悔しいよね、俺だけ?
826デフォルトの名無しさん:2005/09/20(火) 09:37:39
>>824
J2SE 1.4.2 だと javax.swing.UIManager.get("OptionPane.yesButtonText"); とかで取って来てるね。
最終的には com.sun.swing.internal.plaf.basic.resources 配下の properties ファイルみたい。
827デフォルトの名無しさん:2005/09/20(火) 09:39:59
>>825
new boolean[256] って new byte[256] と同じだけのメモリ容量使うから
メモリ節約したいなら new int[8] とかした方が良いかも。
828デフォルトの名無しさん:2005/09/20(火) 09:58:26
>>825
java.util.BitSet使え。
829デフォルトの名無しさん:2005/09/20(火) 10:16:43
職を斡旋してもらえるスレはここですか?
830デフォルトの名無しさん:2005/09/20(火) 10:26:38
>>826
おお、サンキュー。
ソース検索してみます
831デフォルトの名無しさん:2005/09/20(火) 10:43:23
832デフォルトの名無しさん:2005/09/20(火) 10:54:31
>>831
適正テストをやるとプログラムとか専門職がいいってでるんだけど、
そのジャンルで相談しに行くと年がネックになるとか言われる。
ヒキーをなめんなヽ(`Д´)ノウワァァァン

不自由しない時間(?)を利用して、このスレで勉強させてもらってますです。
833デフォルトの名無しさん:2005/09/20(火) 10:58:56
>>832
独学でマスターして職務経歴書でっち上げでOK。
834デフォルトの名無しさん:2005/09/20(火) 11:01:14
>>832
ぎょう鉄職人なんてどうだ?
今、なり手不足らしいが。
根性と体力が重要らしい。
835デフォルトの名無しさん:2005/09/20(火) 11:48:56
>>811
> Jakarta TomcatはもともとSunで作られたものだ。
Tomcat3まではその流れだが、現在のCatalinaは全くの別物だけどな。
SunのJWSDKがApache Software Foundationに寄贈されたのがTomcat。
その時の契約調印に使った部屋の名前が「Jakarta」。
Apacheは独自にApache JServを作っていたが、Jakartaプロジェクト発足で
ServletエンジンはTomcatに一元化。

> たとえばIBMにはApache開発部というものがある。
Apache Software Foundation のコミッタがどう選ばれているか知っているか?
Apache HTTP Serverは元々の流れにIBMが関わっているから結局そうなっているし
Apache BeehiveもBEA主導だが、Jakartaプロジェクトの大半はボランティアベースで
成り立っている。
ただし、Eclipseに関してはほぼその通りだと思う。

> このように、企業が大きく関与しているからEclipseやApacheの開発速度は
> 尋常ではなくスケジューリングも非常にしっかりしている。
このあたりも、Eclipseにはあてはまるが、Apacheは尋常でなくスケジュールが
ルーズだ。Struts1.1のリリースなんて、1年近く遅れたぞ。

836デフォルトの名無しさん:2005/09/20(火) 13:59:38
>>832, >>834
技術営業も今不足しているらしいぞ
837デフォルトの名無しさん:2005/09/20(火) 14:02:18
コミッタはメールで他のコミッタが投票して選挙によって選ばれるんだろ。
+1, 0, -1のどれかを選んで数値が一番多かったのがコミッタに選ばれるとかでなかったかな。
IBMとかに常駐しているのは大抵コントリビュータだろ
838デフォルトの名無しさん:2005/09/20(火) 16:48:14
class Wave{}
839デフォルトの名無しさん:2005/09/20(火) 18:55:43
誰か知ってたら教えて下さい。
javaでCtrl-Cによる割り込みに対応して処理をさせるって
可能ですか?
840デフォルトの名無しさん:2005/09/20(火) 18:59:34
>>839
コマンドラインアプリケーションじゃない AWT や Swing 使ってれば
[CTRL]+[C] は利かないだろ。
841839:2005/09/20(火) 19:07:24
>> 840
説明不足で申し訳ない。
バックグラウンドで起動しているJavaアプリに
kill -9 や kill -2 などでシグナルを通知し、
そのタイミングでユーザ処理をはさめないかと思いまして。
842デフォルトの名無しさん:2005/09/20(火) 19:08:11
JInternalFrame をカスケード上に表示しようとしてるんだけど、タイトルバーの高さって
どうやったら取れるん?
843デフォルトの名無しさん:2005/09/20(火) 19:10:28
>>841
シグナルなんてシステム依存するもの JNI 使わなきゃ無理でしょ。
ソケットで通信してくれ。鯖作るなら RMI に乗ったほうが楽だが。
844839:2005/09/20(火) 19:19:39
やっぱ、JNIでやんなきゃダメか。
ご指摘の通り、現在はソケットでやってるんだけど
シグナルで実装した方が確実というか
安心だと思いまして。
考えてみれば、OS依存の仕掛けなんで
java標準でサポートしてるわけないですね。
どうもありがとう。
>> 840
>> 843
845デフォルトの名無しさん:2005/09/20(火) 19:32:24
勉強し始めてまだ間もないのですが、最初でコケてしまいました…;;
"Java Test"と表示するプログラムで、多分コンパイルは出来ていると思うのですが、実行出来ません。
実行時に↓の文章が出ます。

could not open `C:\Program Files\Java\jre1.5.0_04\lib\i386\jvm.cfg'

自分で出来る限りは調べてみたんですけど、どうしても解決方法がわかりません;
誰か助けて下さい!!(TT)
846デフォルトの名無しさん:2005/09/20(火) 20:50:05
>>845
まず何をどうやったらそうなったのか
順を追って説明汁
847845:2005/09/20(火) 20:56:35
>>846
え〜と、Javaの本を買ってやってみたんですけど、

//Hello.java

class Hello{
public static void main(String[]args){
System.out.println("Hello Java");
}
}

本の通りにして、↑これをコンパイルは出来たんですよ。
プロンプト起動させて、ディレクトリをC:\Java_studyに変更して
javac Hello.javaって入力して…
それで、java Hello と入力したら実行されるって本には書いてあるんですけど、
java Helloって入力したら、エラーメッセージが出た、と。
こういうわけなんですが…
848デフォルトの名無しさん:2005/09/20(火) 21:29:59
>>845
それって普通のエラーじゃなさそう・・・おれ見たことないもん

ちなみに俺のC:\Program Files\Java\jre1.5.0_04\lib\i386\jvm.cfg
こいつと同じになっているか?
このファイル他で誰か開いているんとちゃうの?

#
# @(#)jvm.cfg1.7 03/01/23
#
# Copyright 2003 Sun Microsystems, Inc. All rights reserved.
# SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
#
#
#
#
# List of JVMs that can be used as an option to java, javac, etc.
# Order is important -- first in this list is the default JVM.
# NOTE that this both this file and its format are UNSUPPORTED and
# WILL GO AWAY in a future release.
#
# You may also select a JVM in an arbitrary location with the
# "-XXaltjvm=<jvm_dir>" option, but that too is unsupported
# and may not be available in a future release.
#
-client KNOWN
-server KNOWN
-hotspot ALIASED_TO -client
-classic WARN
-native ERROR
-green ERROR
849デフォルトの名無しさん:2005/09/20(火) 21:39:16
>>845環境設定はいれたか?
「Java 入門」でぐぐれ
850845:2005/09/20(火) 21:40:41
>ちなみに俺のC:\Program Files\Java\jre1.5.0_04\lib\i386\jvm.cfg
>こいつと同じになっているか?
>このファイル他で誰か開いているんとちゃうの?

スイマセン、ちょっと意味がよく分からないのですが;;
詳しく説明して貰えますか?
851845:2005/09/20(火) 21:43:36
>>849
環境設定、ちょっと自信が無いんですけど…

@SET CLASSPATH=C:\PROGRA~1\PHOTOD~1.0\ADOBEC~1
REM Environment Settings For McAfee VirusScan
SET PATH=C:\JUST\JSLIB32;%PATH%;C:\PROGRA~1\NETWOR~1\MCAFEE~1
SET JAVA_HOME=C:\j2sdk1.4.2_08
SET PATH=%PATH%;%JAVA_HOME%\bin
SET CLASSPATH=.;%JAVA_HOME%\lib\tools.jar

どっか間違ってるところあったら教えて下さい<(__)>
852デフォルトの名無しさん:2005/09/20(火) 21:51:40
×SET JAVA_HOME=C:\j2sdk1.4.2_08
○SET JAVA_HOME=.;C:\j2sdk1.4.2_08

よく見ろよ
853845:2005/09/20(火) 21:54:39
>>852
ありがとうございます!!
早速試してみます!!
854845:2005/09/20(火) 21:59:23
やっぱダメでしたぁorz|||
855デフォルトの名無しさん:2005/09/20(火) 22:11:48
SET JAVA_HOME=.;C:\j2sdk1.4.2_08\bin
じゃね?

たしかjavaw.exeがあるところを指定してたはず
856845:2005/09/20(火) 22:15:50
>>855
試してみましたけどダメでしたorz
857デフォルトの名無しさん:2005/09/20(火) 22:28:15
858デフォルトの名無しさん:2005/09/20(火) 22:30:20
なんでsetでやってんの?
すぐ消えるやん。
859845:2005/09/20(火) 22:34:26
>>858
詳しく説明お願いできますか?
860デフォルトの名無しさん:2005/09/20(火) 22:38:20
>>855
ちげーよ馬鹿
HOGE_HOMEてのはインストールして出来たホームディレクトリ
binを環境変数に放り込むならPATHだろ
861デフォルトの名無しさん:2005/09/20(火) 22:40:05
>>859
「windows 環境変数 SET」でググれ
862デフォルトの名無しさん:2005/09/20(火) 22:41:14
>> 845
エラーメッセージは、j2sdkが1.5なのに環境が1.4なんで
そのへんじゃね?
863デフォルトの名無しさん:2005/09/20(火) 23:03:44
システム→環境設定→新規→変数:JAVA_HOME 値:.;C:\j2sdk1.4.2_08\bin

以上
864845:2005/09/20(火) 23:05:10
ききき、緊急事態です!!(・Д・|||)
みなさんのアドバイス通り、環境変数を色々いじってみたんですけど改善されなかったんで、
再起動させないとダメなのかな?と思って再起動して試してみたんですが…
コンパイルさえ出来なくなってしまいました!!何故!!
助けて下さいーーーーーーーー(叫)
865845:2005/09/20(火) 23:07:22
>>863
私、98使ってるんですけど、98でも出来ますかね?;;
866デフォルトの名無しさん:2005/09/20(火) 23:08:24
JDK再インスコ汁
それでもだめなら知らね
867デフォルトの名無しさん:2005/09/20(火) 23:08:45
>>865
98ならAUTOEXEC.BATにかかなあかんかも
868デフォルトの名無しさん:2005/09/20(火) 23:09:26
>>863
何が以上?
869デフォルトの名無しさん:2005/09/20(火) 23:13:08
>864
アホの言うこと信じたから。

set JAVA_HOME=C:\j2sdk1.4.2_08

に戻せ。

さらに、
SET PATH=%PATH%;%JAVA_HOME%\bin
じゃなくて
SET PATH=%JAVA_HOME%\bin;%PATH%
にしておけ。
870845:2005/09/20(火) 23:28:16
戻しても、どうにもこうにも動かなくなってしまいました(TДT)
JDKを再インストールしてみます…
871デフォルトの名無しさん:2005/09/20(火) 23:32:56
JAVA_HOME に複数パスを指定してる莫迦が多い件について
872デフォルトの名無しさん:2005/09/20(火) 23:34:52
質問があります。
サーブレットからPDFデータを作成し、ファイルダウンロードダイアログ経由で
ファイルのダウンロードを行おうと思っているのですが、
ダイアログで「開く」を選択すると、ダイアログが2回表示されてしまいます。
2回目の「開く」では正常にダウンロードされます。
「保存」を選択すると、1回だけしか表示されません。

コード:
response.setContentType( "application/octet-stream" );
response.setHeader("Content-Disposition","attachment; filename=\"xxx.pdf\"" );
response.setContentLength(pdfbytes.length);
OutputStream out = response.getOutputStream();
out.write(pdfbytes);
out.close();
※POSTを使用しています。
※IEは6を使用しています。
※ASはOracleAS10gを使用しています。

@IT等の掲示板にも対応方法は載っていたので、
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=5606&forum=12&start=0
octet-stream → octet-stream-dummy
attachment  → inline
等に変更して試したのですが、そうするとダイアログ自体表示されません。

どのように指定すればダイアログが"1回だけ"表示されるようになるでしょうか?
わかる方がいれば是非教えてください、宜しくお願いします。
873デフォルトの名無しさん:2005/09/20(火) 23:56:52
>>852
ドットセミコロン(.;)を追加するのはそっちじゃないだろ
PATHのほうに追加するだろ

>>855
それじゃ意味がないぞ。
PATHが \bin\bin と連なってしまう

それからコマンドラインでPATHやCLASSPATHが有効になっているか
echo %PATH%
echo %CLASSPATH%
echo %JAVA_HOME%
とやってみたか?
874デフォルトの名無しさん:2005/09/20(火) 23:58:07
環境見たいときsetだけでいいんじゃね?
875デフォルトの名無しさん:2005/09/20(火) 23:58:32
>>865
win98の場合はOSごと丸ごと再起動しないと環境変数は有効にはならないぞ。

ちょくせつautoexec.batを実行してもいいが
すでに定義されている環境変数に余計な文字列を追加して
上書きされてしまう恐れがある。
876デフォルトの名無しさん:2005/09/20(火) 23:59:45
>>874
setだと余計なモノまで表示されてしまう。

set | moreとすればいいがOSがWin98なのでUnixのパイプ処理は使えない。残念なことに。
OSをNT系にするか、Linuxなどにするか、cygwinをインストールするかしたほうがいいだろう
877デフォルトの名無しさん:2005/09/21(水) 00:01:11
moreでいいじゃない
878デフォルトの名無しさん:2005/09/21(水) 00:02:49
>>872
同じ事になったことあるけど、@ITの情報だけでどうにかなったとおもう・・・・。

いまソースをみて違うところを見たら
res.setHeader("Cache-Control","");
とかやってる。
たぶんno-cacheを殺してるんだと思う。

これじゃないような気がするけど、やってみた方がいいかも。
879デフォルトの名無しさん:2005/09/21(水) 00:03:18
>>869
OSを再起動することを忘れているぞ。

NT系ならコマンドプロンプトを再起動するだけでいいが
9x系は糞OSなのでそうはいかない。

cygwin入れて
export PATH=$PATH:$JAVA_HOME/bin
とかやったほうが楽そうに見えてきたなあ。
880デフォルトの名無しさん:2005/09/21(水) 00:07:07
autoexec.batの弄り方がわからないなら、

直接コマンドラインから
set path=なんたらという文字列を貼り付けるか
そういうバッチファイルを自作したほうが早いと思う。

javastartup.batとかいう適当なバッチファイルを作って
中にset pathなんたらとかいて、
プログラミングを始めるたびにそのバッチファイルをコマンドライン上から
実行するとか。


881845:2005/09/21(水) 00:07:11
>>873
そんな方法があるんですか!!知りませんでした;;
今、JDKを再インストール中なので、出来たらやってみます♪
882デフォルトの名無しさん:2005/09/21(水) 00:08:15
>>879
さすがにDOSの知識ゼロでそれはきついだろ
>>880のやり方が一番かと

閉じるとやり直しなのさえきをつければ
883872:2005/09/21(水) 00:09:02
>>878
ありがとうございます。
明日、早速試してみます。
884デフォルトの名無しさん:2005/09/21(水) 00:09:35
AまたはBまたはCという条件式を記述するのに、

A || B || C

ではコンパイルできないようです。
なんとか一行で書きたいのですが、どうすればよいですか?
885デフォルトの名無しさん:2005/09/21(水) 00:09:52
JAVA_HOMEという環境変数をなぜ用意しているのか
わかってない香具師がおおすぎ。

大抵、TomcatやAntのために使われているが、
それ以外の用途としてJavaのバージョンアップに即座に対応できるというメリットもある。
JAVA_HOMEの値を変更するだけでバージョンアップされたjavaを使うことができるというように。
886デフォルトの名無しさん:2005/09/21(水) 00:11:08
>>884
Javaはif句にbooleanしか置けないのは知ってる?
nullや0をfalseと見なしてはくれないよ
887デフォルトの名無しさん:2005/09/21(水) 00:11:41
というか、環境変数はJavaの文字列連結と同じように
機能することをわかってない香具師が多すぎ。
JavaやってるならStringオブジェクトを+で何度も連結してるのでそれくらいわかるだろと

888デフォルトの名無しさん:2005/09/21(水) 00:13:01
>>884
どんなエラーがでたのかね?
>>886のいう説もあるが、
A,B,Cの結果がboolean型ではない説もありそうだ
889デフォルトの名無しさん:2005/09/21(水) 00:13:29
StringBuffer使うと未だにびっくりされるプログラマが多めにいらっしゃって困ります。
Stringで+が使える弊害なのかな。
890デフォルトの名無しさん:2005/09/21(水) 00:14:03
>>881
再インストールしている間でも有効になっているかどうかは確認できるよ
echoはJavaのSystem.out.print()と同じようなものにすぎないから。
891デフォルトの名無しさん:2005/09/21(水) 00:15:08
>>889
いまならStringBuilderですぞ。

以前、String#concat()を使ったら怒られた
でよくしらべたら確かにStringBuffer#append()よりも遅かった
892デフォルトの名無しさん:2005/09/21(水) 00:16:47
if (find_value : iterator or array)の実装はまだですか?
893デフォルトの名無しさん:2005/09/21(水) 00:17:42
>>891
5.0の機能使うとそれはそれで怒られるんです^^;
894デフォルトの名無しさん:2005/09/21(水) 00:19:53
>>886
>>888

ありがとうございます。解決しました。
ご指摘の通りABCの結果がboolean型ではありませんでした。

895845:2005/09/21(水) 00:22:32
プロンプト起動時に、本だと「C:\Documents and Settings\tanaka」って出てるんですけど
「C:\windows」って出ます。
これって何か悪いんですかね?
896デフォルトの名無しさん:2005/09/21(水) 00:24:11
>>895
NTは複数ユーザを前提にしてるからDocuments and Settings内にユーザを区切るんだよ。
9xは単独ユーザを想定してるからそのままプロンプトのおいてある所を開く。
897デフォルトの名無しさん:2005/09/21(水) 00:26:32
そろそろDOS関連のスレにでも移動してもらえないだろうか
898845:2005/09/21(水) 00:26:46
>>896
問題は無いって事ですかね?
スイマセン、馬鹿で(−−;)
899デフォルトの名無しさん:2005/09/21(水) 00:29:42
>>898
もうスレ違いだから出て行けよ
900デフォルトの名無しさん:2005/09/21(水) 00:30:52
ぐぐれば出てきそうな気もするけどなぁ
901845:2005/09/21(水) 00:52:28
触れば触るほど悪化していく…
とうとう、再インストールしてファイルを開こうとしたら強制終了になってしまいました凹
疲れたので一先ず諦めます…orz
助言の数々、ありがとうございました
902デフォルトの名無しさん:2005/09/21(水) 01:03:26
プッ
莫迦どもの助言でシステムぶっ壊して去って行く初心者の姿。
おまえら楽しいか?
903デフォルトの名無しさん:2005/09/21(水) 01:11:31
2chなんかに芯から頼るほうがどうかしてる
904デフォルトの名無しさん:2005/09/21(水) 01:15:19
>>889
ソースコード上ではString で + を使っても、ほとんどの場合は
コンパイラがStringBufferやStringBuilderを使ったものに
最適化することを知らない奴が多すぎることにもビックリだがな。

905デフォルトの名無しさん:2005/09/21(水) 03:33:19
>>893
説得力だ罠。
既存のシステムがどうだこうだだから使えないってならわかるにしても
何がおこるかわからないから不安だから5.0を使わない
とか逝ってる香具師は1.4から5.0への変更点がわかってない香具師
906デフォルトの名無しさん:2005/09/21(水) 03:38:23
>>895
? Win98じゃなかったのか?
NT系か? どっちだ?

環境変数の中にスペースが入ったディレクトリがあった影響で
それでうまくいかないんだろ、もしかすると

Document and Settingsを入れるときは 変数の値全体を""(ダブルクォーテーション)で囲む必要がある。
set path="c:\Document and Settings\user\なんか" みたいに

ってそういう話じゃないか
書いてからスレ読み直して気づいたが、
とりあえず書き残しておこ。

>>901
だめだおまい。質問方法が糞だ。
どのファイルが壊れたんだよ。
まったく、こちらは質問に答えやすいような情報を示してみやがれってのに
907デフォルトの名無しさん:2005/09/21(水) 06:58:12
船頭多くして船山に上る
908デフォルトの名無しさん:2005/09/21(水) 08:05:02
船が山に登るなんて、ものすごいパワーがみなぎっている証拠!
すげーな!
909デフォルトの名無しさん:2005/09/21(水) 09:29:37
>>907
火吹きまくってるからって PM やアーキテクト投入しまくって
さらにグズグズになってゆくシステムを見てるようだ。

>>908
すげぇだろ!そのまま斜め上方向に射出してやってくれ!
910デフォルトの名無しさん:2005/09/21(水) 10:12:54
ばかだなぁ、船頭組合のみんなで船山に登ってるだけだよ。
911デフォルトの名無しさん:2005/09/21(水) 11:27:37
サーバ側にある配列データをクライアント側に渡し、
クライアント側がそれを受け取る方法を教えてください
912デフォルトの名無しさん:2005/09/21(水) 11:36:15
>>911
ttp://www.hellohiro.com/socket.htm
後は配列を渡すところと受け取るところの変換を適当に決めて実装すればなんとかなるだろ
913デフォルトの名無しさん:2005/09/21(水) 11:37:31
>>911
それだけの情報でどうしろと。Javaである必要があるのかすらわからん。

サーバはWebサーバで、クライアントはWebクライアントで
配列をCSVでHTMLで表示するだけでもいいのか?
質問の仕方から勉強しろ。
914デフォルトの名無しさん:2005/09/21(水) 12:49:29
Microsoft Java VMの為の開発ツールってもう手に入らないの?
ぐぐってもSunVM用のしか見つからない。
target 1.1じゃぁ仕様まで合わせられないし。
915デフォルトの名無しさん:2005/09/21(水) 13:21:19
>>914
Sun JDK 1.1.8 でいけるはずだが。
916914:2005/09/21(水) 15:33:25
>>915
ありがとう。見つかった。

続けて質問。
SunVMとMSVM両方で動くコードを作る事は可能?
SunVMで動作してたコードをjdk 1.1.8でコンパイルしても、メソッドの仕様が違っててエラーでまくり。
917デフォルトの名無しさん:2005/09/21(水) 15:52:25
JDK1.1.8で動くコードなら、SunVMでもMSVMでも動くんじゃ?
918デフォルトの名無しさん:2005/09/21(水) 16:30:48
JDK1.1.8といってもそれどこのSDKよ
919914:2005/09/21(水) 16:31:33
MSVMで動作してSunVMで動作しないアプレットを見た事があるけど、
実際のところどうなんだろう。
もし知ってる人居たら教えて下さい。
920デフォルトの名無しさん:2005/09/21(水) 16:35:11
>>919
独自拡張するとMSのみになります
921デフォルトの名無しさん:2005/09/21(水) 18:46:18
あーあ、>>845おいかえしちゃったの?
知人の18の女子大生だったのに。
これだから2ちゃんのJava厨共は( ´,_ゝ`)プッ
922デフォルトの名無しさん:2005/09/21(水) 18:56:30
>>919
Sun の API リファレンスの範囲内でやってるうちは大丈夫。
com.ms とかいうパッケージ使うとアウト。ただ、バグや仕様のせいで
Sun と MS の VM/ライブラリで挙動が異なることはあるかも知れない。
923デフォルトの名無しさん:2005/09/21(水) 19:17:50
>>921
女子大生だろうと何だろうとスレ違いやJava初心者以前の困ったちゃんにはお引取りいただく
924デフォルトの名無しさん:2005/09/21(水) 19:30:45
と、年齢=もてない歴の>>923が申しておりマス
925デフォルトの名無しさん:2005/09/21(水) 19:55:42
うはwwwおれ1歳児www
926デフォルトの名無しさん:2005/09/21(水) 19:57:27
>>921
おまいが相手してやれよ
変なの誘導されても困るよ
927デフォルトの名無しさん:2005/09/21(水) 19:58:29
女は俺を嫌うから苦手
928デフォルトの名無しさん:2005/09/21(水) 21:50:25
>>904
コンパイラがしてくれない状況は初期化だけだろ、馬鹿?
929デフォルトの名無しさん:2005/09/21(水) 21:51:18
逆。してくれるのが初期化だけ。
930デフォルトの名無しさん:2005/09/21(水) 22:41:52
漏れは彼女に挿入して初期化
はげしく突いてコンパイル
毎晩絶頂という実行結果を迎えている。

おまいらはパソコンしか相手してくれないんだろ?
プログラムだけがいうことを聞いてくれるのか(ぷ
931デフォルトの名無しさん:2005/09/21(水) 22:48:06
Swingについて勉強しているのですがリスナクラスのメソッドで
JList tmp = (JList) e.getSource();
String str = (String) tmp.getSelectedValue();
lb.setText(str + "ですね");
という風に書いてあるのですが文法の意味がよく分かりません。
インスタンス化してオブジェクトに( )以下を代入しているのでしょうか?
newは使わないでいいのでしょうか?
932デフォルトの名無しさん:2005/09/21(水) 22:52:53
>>931
e.getSource()というJListの選択済みソースが返されてるだけじゃん。
eってのは自分で作ったJListそのもののはずだよ。
933デフォルトの名無しさん:2005/09/21(水) 23:40:29
>>928-929
思いこみって恐ろしいですね。
934デフォルトの名無しさん:2005/09/21(水) 23:47:05
>>904
>ソースコード上ではString で + を使っても、ほとんどの場合は
「ほとんどの場合は」って言うあいまいが気になるけど
class HogeClass {
String hoge="ABC"+"XYZ";//これはStringBuilderでやってくれる

public String getFoo() {
String foo="ABC"+"XYZ";//これはやってくれず遅い
 return foo;
}
ってことですか?
935デフォルトの名無しさん:2005/09/21(水) 23:54:07
>934
どっちもコンパイル時に連結される。
936935:2005/09/21(水) 23:55:06
補足: StringBuffer も StringBuilder も使われない。
937デフォルトの名無しさん:2005/09/22(木) 00:03:16
これはStringBufferが使われますが、何か?
(Java2SDK1.4.2_08)

String s = "abc";
System.out.println("s = " + s);
938デフォルトの名無しさん:2005/09/22(木) 00:16:42
>>937
あたりまえじゃん。
939デフォルトの名無しさん:2005/09/22(木) 00:18:09
>>938
比較してみ。
final String s = "abc";
System.out.println("s = " + s);
940デフォルトの名無しさん:2005/09/22(木) 00:21:03
>>939
それはリテラル埋め込みになるだろ。
だから当たり前じゃんと言っておろうが。薀蓄厨?
941デフォルトの名無しさん:2005/09/22(木) 00:24:46
話を無視してマメ知識を御披露されてる方が居られるようだが
942デフォルトの名無しさん:2005/09/22(木) 00:27:51
>938
どうして、あたりまえなの?
なんで最適化してくれないの?
943デフォルトの名無しさん:2005/09/22(木) 00:42:16
初期化の時だけっていってた奴、どこ行った?
944デフォルトの名無しさん:2005/09/22(木) 00:51:26
>>942
大雑把に説明すると、System.out.println("s = " + s) のステップだけを見ても
変数 s の値が固定だとオプティマイザには分からないから。逆に下のは s が
final 宣言されてるので "abc" が埋め込められる ⇒ 暗黙的に連結される。

フローまで追える優秀なオプティマイザなら最適化されるかもしれないが、
少なくとも現行の Sun JDK 5.0 では -O オプション付けてもやらないな。

String s = "abc";
System.out.println("s = " + s);
  ↓
3: getstatic    #3; //Field java/lang/System.out:Ljava/io/PrintStream;
6: new       #4; //class StringBuffer
9: dup
10: invokespecial #5; //Method java/lang/StringBuffer."<init>":()V
13: ldc        #6; //String s =
15: invokevirtual #7; //Method java/lang/StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
18: aload_1
19: invokevirtual #7; //Method java/lang/StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
22: invokevirtual #8; //Method java/lang/StringBuffer.toString:()Ljava/lang/String;
25: invokevirtual #9; //Method java/io/PrintStream.println:(Ljava/lang/String;)V

final String t = "xyz";
System.out.println("t = " + t);
 ↓
28: getstatic     #3; //Field java/lang/System.out:Ljava/io/PrintStream;
31: ldc        #10; //String t = xyz
33: invokevirtual  #9; //Method java/io/PrintStream.println:(Ljava/lang/String;)V

>>943
ああ、ひょっとして >>937,939 はそれ宛てだったか。
945デフォルトの名無しさん:2005/09/22(木) 01:18:28
DoJa4.0とEclipse3.0って連動出来ますか?
946デフォルトの名無しさん:2005/09/22(木) 01:19:30
>>942
コンパイラが馬鹿だから。
947デフォルトの名無しさん:2005/09/22(木) 01:21:38
文字列リテラルの連結にStringBuffer使うと逆に遅くなる罠
948デフォルトの名無しさん:2005/09/22(木) 01:35:10
>>944
その程度の最適化は、VMが実行中に最適化してくれるに一票
949デフォルトの名無しさん:2005/09/22(木) 01:36:55
>>948
いや、そうは思ったがいまコンパイル時の話してるから…
950デフォルトの名無しさん:2005/09/22(木) 08:53:42
String str = "abc";
if ( 条件式 ) {
str = str + "a";
} else {
str = str + "b";
}

こういう場合はStringBuffer or StringBuilder使った方がいいよね?
951デフォルトの名無しさん:2005/09/22(木) 09:45:33
>>950
String str = "abc";
if ( 条件式 ) {
str = new StringBuilder(str).append("a").toString();
} else {
str = new StringBuilder(str).append("b").toString()
}

多分こう変換される。
952デフォルトの名無しさん:2005/09/22(木) 09:45:33
ギリギリまで実行速度を追求する部分なら使ったほうがいい
そうでもなきゃいらない
953デフォルトの名無しさん:2005/09/22(木) 09:55:45
>>950
StringBuffer/StringBuilderを使った最適化がされるから不要。
954デフォルトの名無しさん:2005/09/22(木) 10:03:58
>>953
>>951のように変換されると思うのですが、それよりも

StringBuffer str = new StringBuffer( "abc" );
if ( 条件式 ) {
str.append( "a" );
} else {
str.append( "b" );
}

とした方がいいですよね?
955デフォルトの名無しさん:2005/09/22(木) 10:07:48
>>954
なぜそう思うの?
956デフォルトの名無しさん:2005/09/22(木) 11:03:04
>>951の場合、if文内でStringBufferを生成しているため
957デフォルトの名無しさん:2005/09/22(木) 11:08:19
>>956
で、それがなぜよくないの?
958デフォルトの名無しさん:2005/09/22(木) 11:09:26
>>957
オブジェクトの生成にはコストがかかるため
959デフォルトの名無しさん:2005/09/22(木) 11:20:01
>>958
この例では作られるオブジェクトの数も回数も変わらないんじゃ?
960デフォルトの名無しさん:2005/09/22(木) 11:22:19
>>959
なるほど。if文の中でfor等で繰り返してた場合はどうですか?
Stringで+を使用するより、初めからStringBuffer/StringBuilderを使ったほうがいいですか?
961デフォルトの名無しさん:2005/09/22(木) 11:37:49
ローカルにあるテキストファイルをサーバ側で読み込んで処理したいんですが、
ローカルファイルを読み込むにはどのような方法で行えばいいのでしょうか?
962デフォルトの名無しさん:2005/09/22(木) 11:49:59
まず、システムがどのような構成なのかを説明してもらわないと
ローカルとかサーバ側と言われてもなんのこっちゃさっぱりわからんよ
963デフォルトの名無しさん:2005/09/22(木) 11:51:36
>>960
もちろん+を使った連結は遅い
StringからStringBuilderの生成とその後のStringの変換をくりかえすわけだから
964デフォルトの名無しさん:2005/09/22(木) 11:59:50
>>960
その場合はコンパイラによる最適化はされない。
そういう場合が、ソースコードの中で明示的に
StringBuffer/StringBuilderを使うべきポイントだろうね。
965デフォルトの名無しさん:2005/09/22(木) 12:21:58
>>962
すいません説明不足でした。
HTMLに入力フォームを置いて
そこにアップロードしたいファイル名を入力してからサーバにリクエストを飛ばすと
サーバ側でそのファイルを読み込んで処理してクライアントに結果を返すという処理です。
アップロードという表現を使いましたが、サーバ側の処理が終われば
サーバにファイルを残す必要はありません。
javaで比較的簡単に出来る方法があったら教えてください。
966デフォルトの名無しさん:2005/09/22(木) 12:52:38
>>965
激しく板違いの予感がするが、まだ完全に板違いとはいえない・・・。

そういうことをしたいなら、Client 側は特にプログラムを持つ必要はないよね?
Webブラウザが入ってればいい。(ブラウザもプログラムだけどさ。)
WebServer はもう決まってるの?Apache?Tomcat?その両方?

> HTMLに入力フォームを置いて
> そこにアップロードしたいファイル名を入力してからサーバにリクエストを飛ばすと

どんなHTMLを書けばいいかわかってる?(WebProg板の話題だな)
どんなリクエストが飛ぶかわかってる?

> javaで比較的簡単に出来る方法があったら教えてください。

何から何までJavaでやるつもりじゃないよね?(=極論だと、JavaでWebServerを書くとか。)
じゃなければ、Javaでプログラム書く部分以外のところに、どんなシステムが来るのかが
わからないとなんともいえないと思う。

わたしなら、サーバ側には tomcat を単体で置いて、サーブレットとJSP書いて処理させるかも。
だとすると、これも板違いだな。
967デフォルトの名無しさん:2005/09/22(木) 13:04:48
> だとすると、これも板違いだな。
Javaで実装するなら板違いではないでしょ。

俺も同じくServletコンテナ使って、Webアプリにする。
Jakarta Commons FileUpload か Struts を使うと楽に実装できる。
968デフォルトの名無しさん:2005/09/22(木) 13:37:04
このプログラムはテキストファイルをJFilechooserを使い選択し、
さらにBufferReaderで1行づつ読み込むプログラムの1部です。
このプログラムはwhile文によって文字が存在するか、しないかを確認し
存在する場合に1行づつ文字列の読み込みを繰り返しているのですが、
ここでlineの中味は1行ずつ読み込む度に変更されています。
読み込んだ文字列を後で処理したいと思っているのでlineが変更される
前に文字配列の中にa[0]は1行目、a[1]は2行目のように順番に格納できませんか?
おそらく、while文の中に配列を加えればいいと、思うのですがどうすればいいか
教えてください。お願いします。

int returnVal = fc.showOpenDialog(Fileso.this);
if (returnVal == JFileChooser.APPROVE_OPTION) {
File file = fc.getSelectedFile();//選択したファイルを取得
String line = new String();
try {//ファイルの読み込み
BufferedReader br = new BufferedReader (new FileReader(file));
line = br.readLine();
area.setText(line + '\n');
while(line != null){
line = br.readLine();

if (line == null) break;
area.append(line + '\n');
}

br.close();
969デフォルトの名無しさん:2005/09/22(木) 14:07:53
何行あるかわからんのだから配列じゃなくてArrayListでもつかっとけ
970デフォルトの名無しさん:2005/09/22(木) 14:09:53
>>968

配列は、それを生成した時点で要素数を決めなきゃならない。
10個のStringへの参照を保持できる配列を作ったとして、
読み込みたいファイルの大きさが11行以上あった場合にはどうしましょう?

方法1 あらかじめファイルに含まれる行数を調べてから配列を生成
 →ファイルを2回読まなきゃならなくなる。

方法2 あらかじめ決めた行数を超える行に関しては読み込みをあきらめる。
 →あたりまえだけど、あきらめた部分に関しては、配列に入らない。

方法3 配列がいっぱいになったら、もっと大きな配列を作って、いままで
保持していた行を新しい配列にコピーして、その後ろに、新たな行を読み込む。
 →とりあえず全部配列にいれることができる。(メモリが足りれば。)

方法4 「配列がいっぱいになったら、もっと大きな配列を作って、いままで
保持していた行を新しい配列にコピーして、その後ろに……」っていうことを
自動的にやってくれるクラスを使う。例えば、java.util.ArrayList 。
 →便利。

>>968 さんがプログラムにさせたい動作が一体何なのかが不明なので、
思いついた方法を4つ書いてみました。配列に入れることが最終目的なの?
971デフォルトの名無しさん:2005/09/22(木) 15:22:57
>>969、970さんありがとうございます。
>>970さんへ
現在、あるプログラムの構文解析JAVAで開発してまして、
プログラムが書かれたテキストを1度表示させ、
表示したプログラムテキストを1行ずつ1行の命令がどのような動作を
命令しているかと、いうことを調べています。
なので、1行ずつ読み込んだ文字列を1行ずつ順番に格納できる場所が
欲しいと思いました。配列以外に何か方法はありますか?お願いします。
972デフォルトの名無しさん:2005/09/22(木) 15:37:47
>>971
List使えばいいじゃないか。
入門書の一冊でも読んでから開発やれよ。
973デフォルトの名無しさん:2005/09/22(木) 15:58:50
>>972
Listはちょっと違う気が。。。
974デフォルトの名無しさん:2005/09/22(木) 16:20:24
>>968さんへ
何行あるかは、
int returnVal = fc.showOpenDialog(Fileso.this);
if (returnVal == JFileChooser.APPROVE_OPTION) {
File file = fc.getSelectedFile();//選択したファイルを取得
String line = new String();
int i = 1;
int j = 0;
try {//ファイルの読み込み
BufferedReader br = new BufferedReader (new FileReader(file));
line = br.readLine();
area.setText(line + '\n');
while(line != null){
j=i++;
line = br.readLine();

if (line == null) break;
area.append(line + '\n');
}

br.close();

で解決できると思います。
975デフォルトの名無しさん:2005/09/22(木) 16:41:24
iとかjって何よ。
new Stringしなくてもnullでいいじゃん。
976デフォルトの名無しさん:2005/09/22(木) 16:53:40
他人が作ったAgent.classをimportしようとしたんだけど
パッケージ宣言していないとか言われたので、
 import Agent;
とやったら、コンパイルエラー
 Dummy.java:13: '.' がありません。
 import Agent ;
  ^
といわれてしまいました。

JDK1.4.2_05-b04を利用しています。
ちなみにDummy.javaのパッケージ宣言外せば問題なし。
そんなもんなんでしょうか?
977デフォルトの名無しさん:2005/09/22(木) 17:28:19
そのAgentクラスはパッケージなし?
978976:2005/09/22(木) 17:31:16
>>977
そうです。パッケージなしです。
Dummy.java自体には package aaa ; みたくしてあります。
979デフォルトの名無しさん:2005/09/22(木) 17:38:45
package abc;
class Agent
import abc.Agenet
にすれば?
980976:2005/09/22(木) 17:50:07
>>979
それって Agent.class に手を入れろという意味でしょうか?
Agent.javaソース提供がなく、classファイルだけ持っている状態なのです・・・
981デフォルトの名無しさん:2005/09/22(木) 17:50:51
リバースコンパイルして、ソースいじれ
982979:2005/09/22(木) 18:07:10
>>980
ソースないならあきらめるか。しかしAgentなんて名前でパッケージ無しじゃこまるな。
983デフォルトの名無しさん:2005/09/22(木) 18:29:01
>>976

Agentクラスがjava.langにない様なので、
ただクラスファイルをルート位置において
importなしで使えばいいのでは。

クラスファイルの形式が 1.4 と 5.0 で
違うとかいう問題だと対処難しそうですが。
984デフォルトの名無しさん
>>983
勘違いしてました。無視してください。