Java
- java .classのファイル形式
javaのファイルに.java .classがありますが .javaのファイル形式はテキストファイルだと思いますが .classのファイル形式は バイナリファイルでしょうか? または実行ファイルでしょうか? または別のファイル形式でしょうか?
- ベストアンサー
- town52google
- Java
- 回答数2
- HTTPリクエストのリクエスト行部とデータ本体部
HTTPリクエストには (1)「HTTPリクエスト行」 (2)「HTTPヘッダー」 (3)「データ本体」の3つのパートがあると思います。 これらのうち、「データ本体」について質問です。 クライアント側から、 formのinputタグにリクエストパラメータをセットしてsubmitしたとき、 サーブレット側ではgetParameterで値を取得していますが、 これは、(3)「データ本体」から取っているのでしょうか? (1)「HTTPリクエスト行」から取っているのでしょうか?
- ベストアンサー
- paranoia23
- Java
- 回答数2
- コントローラの役割はJSPにはやらせないですよね?
コントローラの役割を、HttpServletだけでなくjspにやらせる構成も 正しい思想の1つなのでしょうか?? 「コントローラ」は、 基本「依頼と、依頼結果をもとにした次の依頼」をする。 という風に役割を捉えていました。 例えば Aに処理依頼をしたあと、 処理が成功したから今度はBに処理依頼をして、 その結果データが 1件以上だったらCに依頼をして、 0件だったら次はDに処理を依頼する。 のような。 そして、それはHttpServletのところにやらせるものなのかと捉えています。 (※間違っているのかもですが。。) しかし、 書こうと思えば、サーブレットを撤廃して、 画面遷移は、x.jsp ⇒ y.jsp ⇒ z.jsp と、サーブレットを介さずにチェーンを作ることも可能だと思います。 (1)そういう仕組もわりと一般的なのでしょうか? (2)jspになんでもやらせすぎると、それぞれのソースが、 ◆A:プレゼンテーション層としての処理なのか?(イテレータでの描画とか) ◆B:ファンクション層の処理なのか?(例えば入力チェック処理など) ◆C:コントローラ層の処理なのか? (各結果を元に、次にどこの処理にどういうデリゲートするのか等処理) がパッと分かりにくく、カオスになりやすいと思っています。 そんな風になるくらいだったら、 コントローラはサーブレットにさせた方が良いと思うのですが、あえて全てJSPにさせるメリットもあったりするのでしょうか? ◆確認 画面遷移は、コントローラの役割だと思っていたのですが、 もしかしたらそこが間違っているのでしょうか? (WEB系の開発かどうかでも違うのかもですが。) .
- 締切済み
- paranoia23
- Java
- 回答数14
- HttpServletとjsp負荷はどっちが高い?
◆全く同じ処理をさせたとき、サーバーの負荷は変わるのでしょうか? Aの処理のあと、Bの処理をして、その後Cの処理をさせるとき、 (1)HttpServletを継承したクラスから呼ぶか? (2)jspで呼ぶか? でサーバ負荷は変わるのでしょうか? ファッション層の処理を、 案1◆コントローラ層部分が呼んで、結果を踏まえて処理制御して、、 という形にするか? ファッション層の処理を、 案2◆View層部分に呼ばせるか? で、パフォーマンス観点で、どう判断すれば良いかわからず困っています。 ※もし良ければ「構成」の観点でも、何か「こうあるべき」的なものがあると、それもご教授頂けますと幸いです。 .
- 締切済み
- paranoia23
- Java
- 回答数14
- サーブレットは広義・狭義があるのか?
「サーブレット」という言葉は、 文脈によって以下のそれぞれを指しますでしょうか? wikiなど「定義」としては一応あるわけですが、 その場の空気で、 (1)HttpServletを継承したコントローラ層部分 (2)サーバにletさせている部分(モデルとコントローラの両方) (3)サーバにletさせている部分(view(jsp)からモデルに処理をletさせているという場合に、jspがプレゼンテーション層以外も含んでしまい、サーバにletさせている部分=コントローラ+モデル+ビュー(すべて)) の何を指しているか、事実上変わるということであってますでしょうか? wikiなど「定義」としてはあるわけですが。。
- 締切済み
- paranoia23
- Java
- 回答数16
- サーバ側とクライアント側のjavaScript
「サーバサイドでjavascriptを実行させる」というのはどういうことなのでしょうか? node.js や、 イントラマートを使っているときは、 サーバサイドでのjavascriptというのも 全然理解できるのですが、 それらの基盤を使用していなくても、 サーバサイドの処理に、javascriptを使うことができるのでしょうか? 基本、jspの上の方に、 「サーバ上にあるjavascript」が クライアントサイドで動くと捉えており、 そういう意味では、基本、javascriptはクライアントサイドで動くと捉えているのですが違うのでしょうか? ※java+jspで実装しています。 .
- 締切済み
- paranoia23
- Java
- 回答数4
- Javaのスレッドとcpuのスレッド
javaのスレッドは各スレッドを少しずつ実行してあたかも同時に実行しているように見せかけているだけだと本で読んだことがあります。現在のcpuはi7 8700kだと6コア12スレッドになりますが、この場合どのような動きになるのでしょうか。 例えば12個のスレッドを使用したプログラムを実行するとpcが勝手に8700kの12スレッドに割り振って実行してくれるのか、それとも単にcpuの1スレッドでjavaの12スレッドを同時に動かしてるように見せかけるのか、cpuのスレッドとjavaのスレッドの関係がいまいち解りません。
- 締切済み
- takahasi5634
- Java
- 回答数9
- すいません。解説してください。
いつも教えて頂き大変お世話になっております。 下記プログラムを解説して頂きたいのです。 特に最初の4行を詳しく教えて欲しいです。 何度もすみません。 ご回答のほど、宜しくお願い申し上げます。 OSはUbuntu18.04を使っています。 このプログラムは、他のプログラムも関係するのでしょうか? 色々とお手数かけます。 コンパイルしたら注意:Sample90.javaの操作は、未チェックまたは安全ではありません。とエラーメッセージが出ました。 何でも参考になります。 ご回答のほど、宜しくお願い申し上げます。 package sample; import java.util.List; import java.util.ArrayList; import java.util.LinkedList; public class Sample90 { public static void main(String[] args) { new Sample90().execute(); } public void execute() { List list = new ArrayList(); list.add("A"); list.add("B"); for (int i = 0; i < list.size(); i++) { String s = (String) list.get(i); System.out.print(s + " "); } System.out.println(""); list = new LinkedList(); list.add("A"); list.add("B"); for (int i = 0; i < list.size(); i++) { String s = (String) list.get(i); System.out.print(s + " "); } } }
- ログイン画面を通過済み(認証済みユーザ)の判定
ログイン画面でユーザとパスワードを入力し、ログインできたユーザがいたとして、 その後の、画面Aでも、画面Bでも、 認証済みのユーザかどうかをチェックしたいです。 すべての画面で、データベースサーバのユーザ情報テーブルをチェックするのはなんか頂けないと思っているのですが、 何かよい方法はあるのでしょうか? .
- 締切済み
- paranoia23
- Java
- 回答数1
- HttpRequestでデータクラスを渡せますか?
HttpRequestに、Javaのデータクラスを載せることはできるのでしょうか? 昔、先輩エンジニアがエンコード・デコードすれば渡せるよと言っていたのですが、 何かメソッドが用意されているのでしょうかる 文字列データにして、setAttribute、getAttributeするしかないのでしょうか?
- ベストアンサー
- paranoia23
- Java
- 回答数1
- 実行方法を教えて下さい。
いつも教えていただき大変お世話になっております。 下記コードの実行方法を教えて頂きたいのです。 論理的に理解したいと思います。 大変恐れ入ります。 お手数ですが、解説もお願い致します。 冒頭の3行が普通と違うのです。 色々検索致しましたが、理解できません。 ご回答のほど宜しくお願い申し上げます。 package sample.sample10; import static java.util.Arrays.*; import java.util.Arrays; public class Sample10_11 { public static void main(String[] args) { int[] array = {298, 827, 8348, 29, 892, 327, 8, 9, 2, 809, 32}; System.out.println("配列の要素を表示します。" + Arrays.toString(array)); sort(array); System.out.println("配列の要素を表示します。" + Arrays.toString(array)); } } kouzou@GD348ZZD9:/WORK$ javac Sample10_11.java kouzou@GD348ZZD9:/WORK$ java Sample10_11 エラー: メイン・クラスSample10_11を検出およびロードできませんでした 原因: java.lang.NoClassDefFoundError: sample/sample10/Sample10_11 (wrong name: Sample10_11)
- コンパイル・実行のやり方。
いつも教えていただき大変お世話になっております。 下記の質問、どうか教えてください。 プログラムの冒頭で、次の3行で始まっていたら コンパイル・実行はどう書けばいいですか? OSはUbuntu18.04を使っています。 package sample sample12; import java.util .Arrays; public class Sample12_4 { ご回答のほど宜しくお願い申し上げます。
- クラスTest4を検出およびロードできませんでした
import java.util.Arrays; public class Test4{ public static void main(String[] args){ int [] array = {298,827,8348,29,892,327,8,9,2,809,32}; System.out.println("配列の要素を表示します。"+ Arrays.toString(array)); System.out.println("Arraysクラスを利用しないと、" + array + "となってしまう"); } } kouzou@GD348ZZD9:/WORK$ java Test4 エラー: メイン・クラスTest4を検出およびロードできませんでした 原因: java.lang.ClassNotFoundException: Test4 コンパイルはできたのですが、実行でエラーが出ました。 何故でしょうか? 教えてください。 ご回答のほど宜しくお願い申し上げます。
- プログラムの合体。
jump7799_4836さん 2018/7/2103:34:44 public class Test2 { public static int メソッド () { System.out.println("メソッド()が呼ばれました"); return 0; } public static int メソッド (int i) { System.out.println("メソッド(int i)が呼ばれました"); return i; } public static int メソッド (int i, int j) { System.out.println("メソッド(int i, int j)が呼ばれました"); return i; } public static int メソッド (short s) { System.out.println("メソッド(short s)が呼ばれました"); return s; } public static int メソッド (double d) { System.out.println("メソッド(double d)が呼ばれました"); return (int) d; } } public メソッド class Test2 { public メソッド static void main(String[] args) { Test2.メソッド (); Test2.メソッド (1); Test2.メソッド (1,2); Test2.メソッド (1.1); Test2.メソッド ((short) 1); Test2.メソッド ((double)1); } } kouzou@GD348ZZD9:/WORK$ javac Test2.java Test2.java:29: エラー: class、interfaceまたはenumがありません public メソッド class Test2 { ^ Test2.java:30: エラー: <identifier>がありません public メソッド static void main(String[] args) { ^ エラー2個 2つのプログラムが合体することってあるのですか? いつもすみません。 解説のほど、宜しくお願い申し上げます。
- 他人の書いた汚いソースコードをみると体調不良になり
他人の書いた汚いソースコードをみると体調不良になります なぜ簡潔に書かないのか、簡単なことを複雑に書いてコード量を無駄に増やすのかと、イライラがドンドンつのってお腹が痛くなり吐き気がしてきます コーディングというかSE向いてないのでしょうか 他にも同じ症状の方はいらっしゃいませんか
- ベストアンサー
- kudakuda1211
- Java
- 回答数3
- 何故5までなのでしょうか?
public class test3 { public static void main(String[] args) { int index = 0; boolean 五未満 = true; do { index++; System.out.println(index); 五未満 = (index < 5); } while (五未満); System.out.println("終了しました。"); } } 実行結果 1 2 3 4 5 終了しました。 五未満だから 1 2 3 4 終了しました。 となると思うのですが、 どうしてでしょう。 解説のほどお願い申し上げます。
- 回答の意味が解りません。
class test16 { public static void main(String args[]) { int digits = 0; int letters = 0; for (int i = 0; i < args[0].length(); i = i + 1) { char ch = args[0].charAt(i); // 数字 if (Character.isDigit(ch)) digits += 1; else if (Character.isLetter(ch)) // 英字 letters += 1; } System.out.println("There are " + digits + "digits"); System.out.println("There are " + letters + "letters"); } } C:\WORK>javac -encoding UTF-8 test16.java C:\WORK>java test16 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0 at test16.main(test16.java:5) お陰様で、コンパイルはできました。 しかし、実行時に、メッセージが出ます。 どうしてでしょうか? ご回答のほど宜しくお願い申し上げます。 ご回答 argsにデータが入っていないのに args[0]を参照したからエラーになっています。 public static void main(String[] args)の引数argsは コマンドプロンプトでjavaコマンド実行時に入力されたデータが入っています。 今回の例だと C:\WORK>java test16 テスト1 テスト2 のように実行クラス「test16」の後ろにスペースで文字を入力すると argsには、args = {"テスト1", "テスト2"}のデータが入ります。 質問者さんのjavaコマンドは以下で C:\WORK>java test16 「test16」の後ろにデータを入れていません。 そのため、args={}となり、データが無いargsが出来上がります。 そのため、args[0]は存在しないからエラーが出ます。 エラーを回避するには C:\WORK>java test16 「この後に何か文字を入れる」 ボクは「参照」の意味もまだつかめてません。 どいうことですか? 他にも沢山質問があります。 回答者の方も解りやすくご回答なさったと 思いますが、すみません。 今1度、解説のほど、宜しくお願い申し上げます。
- GASでのWEBスクレイピング
業務効率化のため、以下の記事を参考に GASでのWEBスクレイピングを試してみましたが POSTのUrlFetchApp.fetchでエラーとなってしまいます。 ◯参考記事 http://katsulog.tech/get-the-source-after-logging-in-to-the-site-when-scraping-with-googlespreadsheet/ ◯エラー内容 https://www.fc-hikaku.net/client/sessions のリクエストに失敗しました(エラー: 422) ◯実施したいサイト(ログインページ) https://www.fc-hikaku.net/client そもそもログインができていないと思われるのですが GASにおいてエラーの切り分けなどの仕方もわからず 詳しい方にご助力いただきたいです。 参考記事内のサンプルは正常に動作しております。 宜しくお願いします。
- ベストアンサー
- sigesigeo1919
- Java
- 回答数1