★★ Java の宿題ここで答えます Part 74 ★★ [無断転載禁止]©2ch.net
>>191 > PreparedStatement pstmt = conn.prepareStatement( これが要らない パッと見た感じでは、22行目の、( に対応する、 ) があるのか? >>192 そこを消してみると Model.java:13: エラー: シンボルを見つけられません private HashMap<Integer, TitleListResult> Title_hash; ^ シンボル: クラス TitleListResult 場所: クラス Model Model.java:19: エラー: シンボルを見つけられません conn = ConnectUtilMy.connectDatabase(); ^ シンボル: 変数 ConnectUtilMy 場所: クラス Model エラー2個 とエラーが出てきてしまいます・・ これは conn = ConnectUtilMy.connectDatabase(); の場所を変えなければならないということでしょうか? >>194 同じパッケージ内に TitleListResultクラスと ConnectUtilMyクラスが 存在しないからでしょ こういうふうにmovieパッケージ内にクラスがないといけない https://light.dotup.org/uploda/light.dotup.org666888.png 別のパッケージにあるならimport文を追加しないといけない >>195 https://light.dotup.org/uploda/light.dotup.org666891.png 他のもあるはずなんですよね・・・ 他のファイルにおかしいところがあるかもしれないので他の 使っているクラスものせますね。 Controllerクラス https://friendpaste.com/15ppCCNpkFHvmavTWy2rvG ConnectUtilMyクラス https://friendpaste.com/15ppCCNpkFHvmavTWyP0aE TitleListResultクラス https://friendpaste.com/15ppCCNpkFHvmavTWyP0Cf 先ほどメールでmodelを送ると 『検索結果をString型の配列に格納しているので,これにはまだ対応 していません』 ときました。先日ここで書いてもらったArrayListからHashMapに変更する 内容で対応できたと思っていたですが違うと言われてしまいました・・ どこがおかしいのでしょうか? >>195 ほんとうにすみません! 色々試行錯誤していたらコンパイルするところの 問題だったらしくプログラムから実行したら エラーがでなかったです! お騒がせして申し訳ありません。 >>196 コンパイルするときのカレントディレクトリがマズイのかも movieのディレクトリではなくてmovieの一個上のディレクトリで javac movie\Model.java でできるはず カレントディレクトリ+パッケージ名でクラスを探すってこと >『検索結果をString型の配列に格納しているので,これにはまだ対応していません』 対応してないの主語は「メールの受取人が」ってことかな String型の配列に格納してはいけないとすると HashMap<Integer, TitleListResult>こっちかな 配列の代わりにTitleListResultに値を詰めて返してみるとか >>200 そうですね。 メールの受け取り人は先生ですね。 指示をだしてくるのですがこちらから質問しても 専門用語だらけで初心者の自分にはよくわからなく 苦戦しています。 初め、 『Model.javaでデータベースを検索した結果を取得する処理は, DataAccess.javaでやったように,検索結果をArrayListに保持する 形に書き換えてください.』 (DataAccess.javaとは過去に作成したものです) と言われたので 「現在はDBからの取得結果をHashMapに入れていますが これをHashMapではなくArrayListにするということですか?」 と質問すると 『HashMapでもArrayListでもかまいません. 今のModel.javaのArrayList<String[]>では対応できないので, DataAccess.javaのようなHashMapかArrayListで対応してくださ い,という意味です. String[]が問題なのです.』 と返事がきたので先日書いてもらった ArrayListからHashMapに変更した 内容を送ると 『検索結果をString型の配列に格納しているので,これにはまだ対応 していません』 という返事が来た感じです。 ちなみに 『なお,実際のシステムでは,画面から入力された情報でデータベー スを検索しますが,まずは,Controllerのプログラム内で,検索のキーワードと, タイトル名か監督名か主演名かそのどれでもよいかを識別する情報として, 固定した値を設定して,Medelクラスに検索させる形でかまいません』 と言われたので model.javaの下に public void setC(String c) { this.c = c; を追加し Controller.javaのほうに model.setC(c); を追加したという背景があります。 過去に作ったDataAccess.javaも のせておきます。 DataAccess.java https://friendpaste.com/15ppCCNpkFHvmavTWyFers >>202 String[]をTitleListResultに変えて欲しいってことみたいね こんな感じで、Controllerも合わせて修正すればおk https://friendpaste.com/15ppCCNpkFHvmavTWyONxm >>203 ありがとうございます! import java.util.HashMap; を消してしまっていいということですね >>203 https://friendpaste.com/15ppCCNpkFHvmavTWyNxst その場合Controllerの HashMap<Integer,String[]> results = model.getResults(); は TitleListResult<Integer,String[]> results = model.getResults(); のようになるのでしょうか? >>205 こう ArrayList<TitleListResult> results = model.getResults(); 先生も生徒もここで答えしか書けない頭の悪い奴等もみんな馬鹿だと大変だなぁ(しみじみ・・完全傍観状態 局所的な部分の答え合わせをやっててもまたこういう問題に延々とぶつかるだろうね 質問と文章が糞過ぎて何言ってるか最初わからんかったが アホな先生が言いたいことは データベースから持ってきた情報を独自の型のクラスに入れてそれを 最終的な形としてアーサーリストに詰めろって言ってんだろう それに対してアホな生徒がハッシュチップスがどうたらとか言い出して さらにそれに対してアホな先生がハッシュチップスもありみたいな頓珍漢な回答して 解決から遠ざかってるって感じに見える そもそもアーサーリストでいいならハッシュチップスにする必要性もないだろうから アホな生徒にハッシュチップスを使う理由をまず問い詰めなくちゃいけない こういうアホな問答が発生する原因としてアホな生徒の前提知識が無さ過ぎるのと アホな先生がアホな生徒のレベルに合わせてアーサーリストに詰める理由や Stringの配列じゃなくて独自クラスに設定させる理由を説明してないからなんだよね 粋だと思ってるんだろ これがホントのいきがってるってやつだ 以前映画データベースの件で質問した207です。 この前教えてもらったModel.javaを使いデータベースを検索し その結果をJSPでブラウザに表示する処理の実装をしているのですが画面に結果が 表示されずうまく進めていません。jspに問題があると思うのですが分かる方 いらったいましたらお願いします。 このようなweb画面上で一文字でもデーターベースに該当する項目があれば その該当した物すべてが横に検索結果として表わされるようなイメージです。 https://light.dotup.org/uploda/light.dotup.org669016.png こちらがそのview.jspです。 https://friendpaste.com/3JSWaBWmcCMpy72IfdlyNC もともと先生が作成した郵便番号検索システムのview.jspなのですがそれを 自分のシステム用に書き換えたものからサーブレットを起動する感じです。 今使っているjavaは主に2つで Model.java https://friendpaste.com/5IBIiaCVMuJDYZiA8XXQB7 Controller.java https://friendpaste.com/3JSWaBWmcCMpy72IfdlxCp の二つです。 前回教えていただき本当にありがとうございました。 理解や知識が浅く申し訳ありません。宜しくお願い致します。 >>213 分かりづらく申し訳ありません・・ 要約すると前に作ってもらった2つのjavaに あったview.jspを教えてほしいということです。 今のままだと検索ボタンを押しても検索結果が表示されず 何も変わらないという状況です。 >>215 ありがとうございます・・! それで、view.jspを書き換えてみたのですが 検索ボタンを押してみたところ何もでないです・・ ア という単語には引っかかるはずなのですが・・ https://light.dotup.org/uploda/light.dotup.org669074.png トムキャットのほうには 『選択が不正です』と出ているのでこれはなにもキーワードが当てはまらないときに でる文章なので動いてはいるのでしょうか・・? https://light.dotup.org/uploda/light.dotup.org669075.png 表示される場合のイメージ画像です https://light.dotup.org/uploda/light.dotup.org669076.png (過去にcmd上だけで動く似たようなものを作っていまして、 入力された文字がタイトルか監督名かどちらかに一文字でも当てはまれば 対象のデータが一覧としてまとまって表示されるというものです。 こんな感じの結果をweb上で表示したいです。) >>217 ありがとうございます! エラーになりますがしっかり文字が認識されているみたいです! 単語を『ア』と入力して検索ボタンを押すと トムキャットの画面に https://light.dotup.org/uploda/light.dotup.org669104.png java.sql.SQLSyntaxErrorException: SQL構文エラーです。バージョンに対応するマニュアルを参照して正しい構文を確認してくださ い。 : 'title_name = 'ア%'' 付近 1 行目 と出てしまいました。 調べてみるとこれはsqlに問題がある感じみたいなのですが、%が気になります。 なぜか『ア』とだけ入力したはずなのにエラー文章には'ア%''と出るということは model.javaの『%』が一緒に認識されてしまっていたりするということ なのでしょうか? 質問だらけで申し訳ありません。お願いします エラーメッセージの通りwhere句の構文調べればその%の正体はすぐ分かる 要は部分一致と完全一致、ちゃんとやるならsqlも可変にしたいところだけど >>219 いまは完全一致になっているということでしょうか? model.javaのwhereの辺りがおかしいってことですかね・・? Ruby on Rails では、 あ% 前方一致。あで始まる %あ 後方一致。あで終わる %あ% 部分一致。あを含む 一々、機能を作っていたら面倒。 初心者には、Rails を勧める >>221 もっと簡単になる方法を教えていただき本当にありがたいのですが悔しいことに javaでやれ という課題なのです…申し訳ありません…! >>218 前方一致の検索なので「=」ではなくて「like」だわ > sql += "where title_name = ? or directed_name = ? or cast_name = ?"; Modelの = ? となってるところを like ? に変えればおk >>223 ありがとうございます!! like にしてみたのですが似たようなエラーが 出てきてしまいました・・ https://light.dotup.org/uploda/light.dotup.org669148.png まだ自分が完璧に直せてないのかもしれないので いま書き換えたmodelを載せます。 =をlikeにしたModel.java https://friendpaste.com/3JSWaBWmcCMpy72IfdplPM >>224 > sql += "where こうなってるのを先頭にスペースを入れて sql += " where こうしたら良さそう >>225 エラーが変わりました! java.sql.SQLException: Column 'genre_number' not found. at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129) at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:89) at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:63) これはデータベースの中にある項目の一つのgenre_numberが 見つからない ということなのでしょうか・・? create と insertも貼ります。 create https://friendpaste.com/3JSWaBWmcCMpy72IfeRiM7 insert https://friendpaste.com/3JSWaBWmcCMpy72IfdpRAT >>227 Modelの > result.Set_Genre_name(rs.getString("genre_number")); これを result.Set_Genre_name(rs.getString("genre_name")); こうしたら良さそう https://light.dotup.org/uploda/light.dotup.org669168.png おおおおおお!!すごい!タイトルが出てきました!!! ありがとうございます!!!!!! この状態で今は検索した文字に当てはまった項目のタイトルだけが表示されるように なっているようなのですが文字に当てはまった項目の中身のデータがすべて表示されるように するにはどうすればよいでしょうか・・? https://light.dotup.org/uploda/light.dotup.org669169.png 過去にcmd上だけで起動する似たようなものを作ったのですが (この場合は監督名かタイトル、どちらかに一文字でも当てはまればその項目の中身 がすべて表示される。) こんなかんじでタイトルだけでなくずらっとほかの項目も出せるようにしたいです。 すみません、230です これからとある事情で22時までpcから 離れなくてはいけないのでいまから しばらく教えてもらったことを試すことなどできません・・ 質問しておいて本当に申し訳ありません! 22時以降にはすぐに取り掛かれるのでお願いします。 ここまで教えてくださった方々本当にありがとうございます!! 1レスで終わるような低能な内容の宿題でも 低能教えて君と低能回答者で20レス以上も使うのは考えもんだねぇ 両方の質が悪すぎるから機能してるようなスレでもあるんだけどさ >>235 自分ならもっとうまくやれるという思いがある けれども自分は書き込みできてない 思い描く理想と現実とのギャップでイライラしてるわけっしょ それって典型的なジェラシーですよ、あなたの振る舞いの方が見苦しいたけ 低能はよくわからん被害妄想と思い込みが凄いけど ワイはこのスレを何日かおきにリロードして見てるんだが そうするとこういうあまりに見苦しい応酬の後というか惨劇の爪痕が残されてて呆れるんだよね 例え低能教えて君がレスした日にスレをリロードしても数時間のうちに 低能教えたがり君が低能回答をすぐ連発する有様で 有能回答者が取り付く島もないのがこのスレのオワコンっぷり スレの主旨的に低能教えて君の存在が仕方ないにしても回答者を選別できないと この惨劇は延々と繰り返されるんのが低能スレの宿命なんだよな >>237 なるほどそれはわかりません >>235 教えてあげて!僕はわからないから、いま君の力が必要とされてる >>237 スタイルシートのクラスを消してしまったからかも view.jspの <li> これを <li class="item"> こうしたらワンチャンイケるかも >>238 長文で自分語りできる人はコミュニケーション能力が高い人って印象 僕はそういうの無理だな、リアルで君が有能なのはその文章でわかる 僕の長所は他人をあなどらないところ 侮らないとかそういう何のメリットにもならないくだらないポリシーを持つ前に 先に自分が低レベルっていう自覚を持って回答側に回るってことをやめろ とにかく大量の糞レスのせいでみんなが辟易してんだよアホ >>245 みんな? 自分の主観に客観性があると思わせようという卑怯な思いが見え隠れするよ 僕はちょっとがっかりした、君はもっとしっかりとした人だと思ってた 僕は君をあなどる そうだな。 俺は辟易していないことをここに表明しておくよ。 ちなみに今はこれ前方一致なんですよね・・・? これを部分一致にするとmodelはどうなりますかね・・? "%"を囲む?のでしょうか >>253 すみませんエラーが起きてしまいました・・ こんな感じで囲んだんですが違うところなのでしょうか・・? pstmt = conn.prepareStatement(sql); pstmt.setString("%" + 1, q + "%"); pstmt.setString("%" + 2, q + "%"); pstmt.setString("%" + 3, q + "%"); >>254 pstmt.setString(1, "%" + q + "%"); pstmt.setString(2, "%" + q + "%"); pstmt.setString(3, "%" + q + "%"); こう >>255 できました〜! ありがとうございます! 何の糧にもならないゴミみたいな回答マジでやめろゴミ これ自演か? 低能質問者はsetStringがどういう処理してるのかすら全く理解してないから こんなありえない引数の渡し方とかしてしまう つまりメソッドの見方すらわかってないレベル 幼稚園児レベルだ 前もそうだったけどこういう奴に自己顕示欲だけの低能教えたがり君が 超低次元の優越感に浸るためだけに小学生並みのしょうもない回答だけをつけてしまう スレにとっても質問者にとっても害悪なんだよね この次元の質問だと根本的な原因を教えてやらんと回答することに何の意味もないんだが 回答だけをつけちゃう低能自己顕示欲マンが 回答したいという欲求のためだけにレスをつけてるのが見苦しいんだよね 低能質問者も宿題だからか知らんがその無意味な回答を貰うことに満足してるからさらに見苦しい 算数できない幼稚園児が1+1の答えは? 1+2の答えは? っていうやり取りをを延々と繰り返してる感じ でも、言葉なんかお母さんがそうやって何度も何度も答えて、話せるようになるものだしなあ。 携帯・パソコンでも、説明書を読まない香具師は、いつまで経っても出来ないのと同じ というかその映画検索クンは大学の課題を丸投げしに来てるだけだから別にステップアップの為の教えは必要ないんだぞ 必修だから仕方なく取ってるコマの単位落としたくないから答えだけくれと最初から言っておられる テスト的なものあったら穴埋めすら対応出来ないだろうけどね、ないのかな? https://teratail.com/questions/286638 なぜか背景の赤の大きさが変わらないのですが分かりますかね・・? ためしにスタイルシートの数値を色々変えてみても検索結果画面にそれが反映されてない のですが一体なぜなのでしょうか・・・? >>263 キャッシュされてるんじゃないかな どうやって実行してるのか知らないけど workディレクトリみたいなのをクリアしてみたらどうだろ >>264 カレントディレクトリ+パッケージ名でコンパイルしてます。 javac movie/Model.java とこんな感じでコンパイルしてからweb上で URLを直接入れてる感じです。 この場合キャッシュをクリアするにはどうすればよいのでしょうか >>265 コンパイルしてたぶんTomcatで動かしてるんじゃないかなと Tomcatにはどうやって配置してるん? Tomcatにworkのフォルダがあるんじゃないかな 変更前のstyle.cssが残ってて変更が反映されないんじゃないかなと思った >>264 調べてみたらキャッシュクリアできました! そうするとうまくいきました! ありがとうございます! 【 課題 】 https://imgur.com/gallery/daVKRon 【 形態 】1. javaアプリケーション 【 GUI 】 制限無い 【 期限 】2020年11月19日 【 補足 】むっちゃ長い上に丸投げで申し訳ないです。ですが完全解答しなくても大丈夫なのでできる範囲で問題ないです。 久しぶりに来てみたら、「まだ、このスレは続いていたのか」とオモタ。 >1 を見て思ったのだが、後進の世代に対しては「Eclipse(などのIDE)を 入れるのが吉」と最初に言ってあげるのが親切だと思うが。 歳を取ると、「IDEがなかったら、とっくに引退だな」と思いながら 日々を過ごしているので、「宿題を出される」という学生さんには、 「テクノロジーの進歩の恩恵は、とりあえず享受しておけ」と思う。 そのあたりを勘違いしている(認知症を患っている)教授とか上司とかが いるかもしれないが。 まぁ、ほどほどに頑張って、人生の肥やしにしておいてくれたまえ。 頑張りすぎて身体を壊しても親不孝だしな。 プログラミングの初歩的な授業だろ? 言語だけやってるワケじゃねーんだよ コマンドラインの使い方、Javaとかなんやらのインストールの仕方、パスの通し方、 テキストエディタなるものの存在とその使い方 >272 禿同。 かつて、「インデントがどうのこうの」という話があったような気がするが、 「見て納得する」んだったら全角スペースでもなんでも突っこんで 体裁を整えるのだが、本当に切羽詰まっている学生さんとかだと、 「まんまコードをコピペして動くかどうか」のほうが切実だと思う。 そういうときに、「テキストエディタ(コマンドライン環境)か IDE(GUI 環境)か」っつーのは、けっこう重要な要素だと思われ。 そもそも、講師のほうも困っているんだろうと思う。 「どんな宿題を出せばいいのか」という意味では、「試されている」という緊張感があるはずだ。 共立出版のコンピュータ・サイエンス誌『bit』に、「ナノピコ教室」というのがあって、東大とか早稲田とかの学生グループが、「ナノピコ・キラーズ」として覇を競っていたのだ。 「出題例」「模範解答」という方向性もあろうかと思うが、いかがか。 知人がどっかから拾ってきた問題。 【課題】自然数 m, n があり、0 < m < n だとする。 0 < m < n < 100 であるとき、互いに素な {m, n} は何通りあるか。 【形態】Javaアプリケーション 【GUI 】不要 【期限】講義でふたコマくらい。受講者の解答を見てから、 「こういうアプローチもあるんじゃないか」とかいう感じだと思われ。 【Ver】1.4 以降。 【用語】「互いに素な」というと、「最大公約数が 1」で判定したくなるが、 「それはどうなのか」という話。 「普通に二重の for ループで書けばいいじゃん」という話はあるのだが、 「いや、再帰で書ける!」という話。 read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる