X



★★Java質問・相談スレッド180★★ [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
垢版 |
2017/04/21(金) 22:13:17.42ID:Sf0TFsly
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理    http://pc11.2ch.net/hp/
Webプログラミング http://pc11.2ch.net/php/
をご利用下さい。

よくある質問
・「コマンドまたはファイル名が違います」
 「'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
 「Exception in thread "main" java.lang.NoClassDefFoundError: 」
 (p)ttp://www.wikiroom.com/java/?path,classpath
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
・String に == は使うな。equals() を使え。※

質問時の心得
・コンパイルエラーか実行時エラーか、エラーではないが意図しない動作なのかはっきりしろ。あとエラーメッセージちゃんと読め。
・前提条件としてOS、開発環境、バージョン、使用フレームワーク等を明記。

前スレ
★★Java質問・相談スレッド179★★
http://echo.2ch.net/test/read.cgi/tech/1476706523/
0224デフォルトの名無しさん
垢版 |
2017/06/18(日) 10:16:01.09ID:WGtDcH0y
>>223
場所考えろよ
その場に応じた適切な言葉服装髪型があるんだ
お前はこのスレのドレスコードに違反してる
おまはん
0226デフォルトの名無しさん
垢版 |
2017/06/18(日) 10:26:18.15ID:WGtDcH0y
はあめんどくせ
ここまで言わなきゃわからんかね
文章添削して不適切な用語を置き換えるとこうなる

ありがとうございます
僕はドライバが見つからないピッコロなんですね
0230デフォルトの名無しさん
垢版 |
2017/06/18(日) 11:52:04.56ID:SrhEXG8X
それが粋だと思ったんだろ
まさにイキってる
0231デフォルトの名無しさん
垢版 |
2017/06/18(日) 14:33:03.75ID:ceJzqHwZ
>>221
おまえが2chに適応できてないのでは
知恵遅れでも行ったらどうだ

>>229
意味がわからなかったらググるか質問したらどうだ?
見てる奴の語彙なんてわかるわけない
0232デフォルトの名無しさん
垢版 |
2017/06/18(日) 17:24:13.53ID:GpTbkN2T
>知恵遅れでも行ったらどうだ

これどういう意味だ?
省略しすぎでわけがわからんのだが。
ていうか日本語になってない。

ググれば出るのか?
0234デフォルトの名無しさん
垢版 |
2017/06/18(日) 17:32:02.96ID:T9DB1MbK
2ch用語をリアルで使っている人って痛いじゃん
このスレはリアルだから、はっきり言って2chじゃないから
そこんとこ弁えて欲しい
0235デフォルトの名無しさん
垢版 |
2017/06/18(日) 17:51:27.13ID:c0wxFLXa
2ch専用ブラウザのスレで不具合報告するとよくそれで流されてるのを見る
javaスレでは初めて見た
0240デフォルトの名無しさん
垢版 |
2017/06/18(日) 18:41:02.04ID:qWH492yQ
>>237
おまえには謙遜というものがないのか?
0241デフォルトの名無しさん
垢版 |
2017/06/18(日) 19:03:13.73ID:tT89pNa2
Liskってすごい技術がJAVAで書けるらしいのですが、詳しい人いる?

https://coincheck.com/ja/exchange
0243デフォルトの名無しさん
垢版 |
2017/06/18(日) 22:48:33.95ID:4/PMbJcW
yahoo玉袋を知恵遅れとか略す奴もちょっとアレだよなw
0244デフォルトの名無しさん
垢版 |
2017/06/19(月) 13:01:38.09ID:k2g+wi5p
>>239
そんなの思い付かんわw
0245デフォルトの名無しさん
垢版 |
2017/06/19(月) 13:02:52.09ID:k2g+wi5p
>>243
てか省略になってねえw
0249デフォルトの名無しさん
垢版 |
2017/06/20(火) 19:52:16.13ID:MrLQruMf
いまさらだろうけどoracleとgoogleの訴訟問題で、結局oracle側が敗訴した訳だけれども
今後javaにとって何らかの影響ってあると思います?
0250デフォルトの名無しさん
垢版 |
2017/06/20(火) 20:31:35.56ID:0OgRQROP
MSを邪悪なクソ野郎呼ばわりしていたGoogleが.NET陣営に参加する程度には、
自社のJava依存をリスクとして捉えるようになった
脱Javaってわけじゃないがリスクベッジだな
0252デフォルトの名無しさん
垢版 |
2017/06/20(火) 21:20:57.47ID:fh6JF+lI
最近はMSよりりんごの方が害悪だわ
はやくブラウザPWAに対応しろボケ
AppStore高すぎるんじゃ
0253デフォルトの名無しさん
垢版 |
2017/06/20(火) 21:29:40.54ID:AV5pUI7g
Googleは.NET Coreに肩入れしてコミットしまくってるらしいね
クラウドプラットフォームでAWSに手も足も出ないMSとGoogleがまだまだブルーオーシャンな業務系の客を必死に取り込もうとしている
0256デフォルトの名無しさん
垢版 |
2017/06/21(水) 15:42:15.36ID:K52r2H7q
リスクをヘッジすることだな
0258デフォルトの名無しさん
垢版 |
2017/06/21(水) 15:58:49.94ID:kANaNz0W
リスクベッチョの方言
0260デフォルトの名無しさん
垢版 |
2017/06/23(金) 16:33:16.56
JSP&サーブレットの質問

jspファイル内に<script type="text/javascript" src="○○"></script>を書いて、jsファイルを読み込むようにしたいのですが、
○○にはどう書けばいいですか?
/WEB-INF/js/lib/読み込むファイル.js
としても上手くいかないのですが
0262デフォルトの名無しさん
垢版 |
2017/06/23(金) 16:58:36.16ID:zs9t5glj
>>260
おまえのサーバーの設定など知らん。
0272デフォルトの名無しさん
垢版 |
2017/06/23(金) 21:46:12.40ID:LJ/gyu22
>>271
いかんのか?
0274デフォルトの名無しさん
垢版 |
2017/06/24(土) 06:40:08.63ID:W4HWrwdy
スレチなので、jspでjQueryが使いたい場合はどうすればいいのか?御案内をお願いします。
0275デフォルトの名無しさん
垢版 |
2017/06/24(土) 07:52:08.07ID:AiSsJYjg
>>274
JSPかどうかは関係ないだろ。
0277デフォルトの名無しさん
垢版 |
2017/06/24(土) 15:04:58.13ID:9yfN1z7w
WebProg板等見ても他に適当なスレが無いのでこちらで失礼します

【開発環境、IDE】Java SE 8、Eclipse Pleiades、Tomcat 8、MySQL 5.6.30
【Java歴】大学で2年
【質問事項】
Javaでプログラムを書いたことはあるものの、MVCとか意識するようなのは書いたことがありません
今回Servlet・JSPを初めて触っていて、MVCについて2つ質問があります

1.MVCに則る場合、例えばログイン処理を考えると、CがDAOにIDを問い合わせてpassを受け取り照合を行うのではなく、
 照合はDAOに任せ、CはIDとpassをDAOに投げてbooleanで判定を受け取るだけにするのが良いのでしょうか
 間違っている場合、「処理をCにやらせずMに分離する」簡単な実例を教えていただけるとありがたいです

2.http://at-grandpa.hatenablog.jp/entry/2013/11/01/072636
 WebプログラミングにおいてはVとMCの間に壁があり、しかもユーザーが直接扱うのはVだけです
 よって、この「本当の姿」は通常のアプリケーションの話で、
 Webの場合はM←→C←→V←→ユーザーという考え方でよいのでしょうか
0278デフォルトの名無しさん
垢版 |
2017/06/24(土) 15:59:37.13ID:9flukMKd
>>277
以下、WebのMVCであることを前提
MVCはプレゼンテーション、ビジネスロジック、データアクセスの3層で言うと、プレゼンテーションとビジネスロジックの分離に関するパターン
DAOはデータアクセスの話なのでMVCとは関係ない

まず、コントローラがリクエストを受け付け、誰がこのリクエストを処理するか判断する
で、その処理担当のモデルに処理を受け渡す
モデルから処理結果が帰ってきたら、それを受けてコントローラがビューを呼び出す

2について
VとMCの間の壁とか考えなくていいよ
ユーザーからのリクエストがネットを経てようがそうでなかろうが、コントローラの役割は同じだから
0280デフォルトの名無しさん
垢版 |
2017/06/24(土) 16:49:44.74ID:iOfeax4r
>>277
現実のドカタ開発においては、Mは単なるデータでありCにほぼ全ての処理を記述する
本来は口座クラス(M)の振込メソッドを呼ぶ
0281277
垢版 |
2017/06/25(日) 00:54:45.42ID:iQAhLXiu
ありがとうございます

>>278>>280
DAOがMだと思っていてその認識は違ったようですが、ログイン可否判定をMに任せるという考え自体は間違っていないのですね

JSP(と言うかブラウザの表示)=V、Servlet=Cという認識だったので、
ユーザーはVとしかやり取りをしない、また、Vはクライアント側でMCがサーバー側と思っていましたが、
ユーザーがブラウザを介して処理を要求するのは直接Cを扱っていると考えてよい、
また、どちら側とかいう区別は特に考えなくて良いのですね
言われてみれば、JSPも結局はServletですし、(やろうと思えば)ロジックを書くこともできるので、JSP⊃V(、C)という感じですかね

>>279
Java SEにTomcatとかを追加するとJava EEと呼ばれるのですね
0283デフォルトの名無しさん
垢版 |
2017/06/25(日) 06:12:43.08ID:wnVI7vr5
>>281
Cがどこを指すかは定義がない。考え方によってはCが小さくなる。あなたのサーブレットをCとしてしまうと、MとVが小さくなりすぎて、Cの中がからんでいないかが気になる。
0284デフォルトの名無しさん
垢版 |
2017/06/25(日) 06:14:35.40ID:wnVI7vr5
>>281
Java EEにJava SEが含まれる。Java EEは言語というよりはWebアプリの環境の総称。
0286デフォルトの名無しさん
垢版 |
2017/06/25(日) 11:08:48.10ID:wnVI7vr5
よくよくみてみるとJSPがVとは言ってることが変すぎるな。
0287デフォルトの名無しさん
垢版 |
2017/06/25(日) 11:12:04.00ID:wnVI7vr5
彼の解釈だと、VはWebブラウザ、Mはデータベース、Cはアプリケーションサーバとなってしまい、プログラムの話になってない。
0288デフォルトの名無しさん
垢版 |
2017/06/25(日) 11:20:04.24ID:T3UbVkML
>>287
落ち着いて読み返した方がいんじゃ・・・
0289デフォルトの名無しさん
垢版 |
2017/06/25(日) 19:55:43.30ID:PbhQLBTm
そもそもMVCで考えること自体が現状に合っていないのでは?
0290277
垢版 |
2017/06/25(日) 20:39:07.70ID:iQAhLXiu
>>282-289
入門として簡単な例で雰囲気を掴んでおきたかったので質問させていただきました
Mはデータと言うかデータ処理部ですよね

役割分担をさせる、という理念と概念はわかるのですが、
プログラムの実例が無いと結局どこからどこまでを分けるのかの理解は難しいですね
書籍を当たろうと思います

JSP=V、Servlet=Cという決まりはないということ、ログイン判定をCから分離する考えは間違ってないこと
がわかったのでよかったです
ありがとうございます
0294デフォルトの名無しさん
垢版 |
2017/06/26(月) 09:22:04.64ID:FhVYbn6w
いや、全然怒って真顔で冷静に書いてるだけとか、あるいはどのような反応になるかを学習しようとしているAIかも知れない。
0295デフォルトの名無しさん
垢版 |
2017/06/26(月) 09:22:22.63ID:FhVYbn6w
怒ってなくて、だ。
0296デフォルトの名無しさん
垢版 |
2017/06/26(月) 12:18:58.08
>>260です
WEB-INFフォルダ以下はアクセス不可だと言うことは分かりました。
では、JSP&サーブレットでjsファイルを用いる時は、どこに配置するのがオーソドックスですか?
0301デフォルトの名無しさん
垢版 |
2017/07/01(土) 11:18:07.28ID:N+ZXroXE
>>299
あなたが去るという選択肢も対等に存在しているよ
0304デフォルトの名無しさん
垢版 |
2017/07/01(土) 17:24:42.16ID:JnV2l3hP
私は猿
0306デフォルトの名無しさん
垢版 |
2017/07/08(土) 21:22:00.68ID:I2jsR2Mo
今日はデザインパターンの勉強したんだけど面白いね
仕事であんまり使う機会ないんだけど
いつかドヤ顔するために勉強してるw
0307デフォルトの名無しさん
垢版 |
2017/07/08(土) 21:38:48.33ID:zpqt2Pi7
GoFはラムダが入った今となっては不要になったものも多いから気をつけないと逆に老害だぞ
0308デフォルトの名無しさん
垢版 |
2017/07/08(土) 22:11:14.34ID:KDemZAcB
>>306
一生ねえわw
バブルソート極めた方がマシ
0310デフォルトの名無しさん
垢版 |
2017/07/09(日) 18:48:41.39ID:4xlnJ5p3
そういやソートも昔は自分で書いたなあ
0311デフォルトの名無しさん
垢版 |
2017/07/09(日) 18:53:41.25ID:SZg5iNd3
>>309
Template MethodとIterator
プッシュ型の代表とプル型の代表としてこれだけはしっかり押さえとくべき
あとはだいたいそれらの変形や応用
間違ってもシングルトン厨にはなるなよ
0312デフォルトの名無しさん
垢版 |
2017/07/09(日) 19:10:46.51ID:2yEd4A6I
オブザーバの意義がわかりません
普通にあるインスタンスの状態が変わったら、一緒に状態変えたいインスタンスを並べてupdateすればいいんじゃないでしょうか?
0313デフォルトの名無しさん
垢版 |
2017/07/09(日) 20:48:45.82ID:SZg5iNd3
>>312
基本的にはその通りで、呼び出し元が呼び出し先を知っている(依存している)場合はそれでいい。
でもそれだと都合が悪い場合もあって、例えば出来合いのボタンクラスはお前が勝手に作ったウィンドウクラスのことなど当然知らないから
ボタンクラスは自分がクリックされたとき何を呼び出していいかわからない。
そこでインターフェイスを介してメソッドを呼ぶことで、ボタンクラスがお前のウィンドウクラスを知らずともメソッドを呼び出せるという仕掛け。
これは見方を変えるとボタンクラスに呼び出してほしいメソッドを渡していると見做すこともできて、そういうやり方を一般に「移譲」と呼ぶ。
その移譲を使ってボタンクリックのようなイベントを実装したのがObserverであり、
移譲を使ってインスタンスの生成を一般化したのがAbstract Factoryだ。
GoFは個別のパターンの前に移譲の概念を確実に理解することを強くお勧めする。
0314デフォルトの名無しさん
垢版 |
2017/07/09(日) 21:46:09.06ID:sX6v1jPj
メディエイター(仲介者・管制塔)
A - M - B

A, B は、互いに依存しない。
疎結合

Aを修正しても、Bを修正しなくても良い。
逆もしかり

オブザーバー・メディエイターは、モジュール同士を疎結合にする。
部品の疎結合が、最も重要
0315デフォルトの名無しさん
垢版 |
2017/07/14(金) 13:03:36.96ID:TfMBM9Tu
初歩的な質問ですみません
privateメンバをもったクラスを継承してサブクラスで更新したいのですが、
サブクラスからだと更新できません。
この場合、getsetを親に持たせるのがやはり一般的なのでしょうか?
メンバをprotectにして直接更新するのはあまり良くないのでしょうか
0317デフォルトの名無しさん
垢版 |
2017/07/14(金) 18:46:33.01ID:WEwIJVh1
>>315
変更すべきならprivateにしてる設計が間違えてる
privateが正しいなら変更しようとしてるのが間違えてる
こーしたらこーなるからでプログラムしたいなら制約を科すオブジェクト指向言語を使うのが間違えてる
0318デフォルトの名無しさん
垢版 |
2017/07/14(金) 19:37:34.47ID:TfMBM9Tu
なるほど
では継承した子クラスから親の変数を変更しようとすること自体がおかしいということでしょうか
親に共通的に属性持たせて振る舞いだけ拡張していくのはよくあるやり方なのかと思っていましたがそうではないのですね
0319デフォルトの名無しさん
垢版 |
2017/07/14(金) 19:43:12.40ID:nYuZK0KO
どう作るかは正直どうでも良い
仕様が重要

目安としてそれぞれ別パッケージならsetter経由にしとけ
0320デフォルトの名無しさん
垢版 |
2017/07/14(金) 21:30:05.14ID:BgkaGQy5
>>315
getter, setter でやるのはそのクラスがその変数の変更タイミングを知る必要があるからだ。例えば書き換え直後に何か画面に描画するとかね。
変数の書き換えタイミングを知る必要がないならばその変数は public にして外部から直接書き換えられるようにしてしまえば良い。
外部から書き換える必要がないなら protected , 更に継承させたくないなら private。
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況