タグ付けされた質問 「java」

Javaは人気のある高水準プログラミング言語です。言語自体の使用または理解に問題がある場合は、このタグを使用してください。このタグが単独で使用されることはめったになく、[spring]、[spring-boot]、[jakarta-ee]、[android]、[javafx]、[gradle]、および[maven]と組み合わせて使用​​されることがほとんどです。

15
Javaの無限ループ
whileJavaで次の無限ループを見てください。その下のステートメントでコンパイル時エラーが発生します。 while(true) { System.out.println("inside while"); } System.out.println("while terminated"); //Unreachable statement - compiler-error. whileただし、次の同じ無限ループは正常に機能し、条件をブール変数に置き換えただけのエラーは発生しません。 boolean b=true; while(b) { System.out.println("inside while"); } System.out.println("while terminated"); //No error here. 2番目のケースでも、ブール変数bがtrueであるにもかかわらず、コンパイラーがまったく文句を言わないため、ループの後のステートメントは明らかに到達できません。どうして? 編集:次のバージョンはwhile明らかなように無限ループにif陥りますが、ループ内の条件が常にfalse、したがってループが戻ることはなく、コンパイラによって決定される場合でも、その下のステートメントに対してコンパイラエラーは発行されません。コンパイル時自体。 while(true) { if(false) { break; } System.out.println("inside while"); } System.out.println("while terminated"); //No error here. while(true) { if(false) { //if true then also return; …

4
Java Webサービスクライアント(最良の方法)
サードパーティのWSDLがあります。WebサービスクライアントがサードパーティのWSDLで操作を呼び出すために、Javaでコードを記述する必要があります。現在、AxisのWSDL2JAVAツールを使用してクライアントスタブを生成し、データバインディングにXMLbeansを使用しています。 このJAVAを実行するための最良のアプローチは何ですか? SAAJについて読みましたが、よりきめ細かいレベルのアプローチになると思いますか? WSDL2Javaツールを使用してコードを生成する以外の方法はありますか?多分wsimport別のオプションで。長所と短所は何ですか? 誰かがこれらのトピックに関するいくつかの良いチュートリアルへのリンクを送ることができますか? WSDL2Javaを使用してコードを生成するときに使用する必要のあるオプションは何ですか? 最初は基本的なものをいくつか使いました。今、私はこれらのオプションを持っています C:\axis2-1.5.1\bin>wsdl2java -uri mywsdlurl -o client -p somepackage -d xmlbeans -s -t -ssi

8
パフォーマンスとJavaの相互運用性について:ClojureとScala
私はすでにClojure対Scalaのさまざまな説明を読みましたが、どちらにも場所があることに気づきました。ClojureとScalaの両方を比較する場合、完全な説明が得られていない考慮事項がいくつかあります。 1.)2つの言語のどちらが一般的に速いですか?これは言語機能ごとに異なることは理解していますが、パフォーマンスの一般的な評価が役立つでしょう。例:Python辞書は本当に高速であることを私は知っています。しかし、全体として、Javaよりもはるかに遅い言語です。Clojureを使用して、この問題に遭遇したくありません。 2.)Javaとの相互運用性はどうですか?私がこれまで読んだことは、Scalaにはネイティブコレクションタイプがあるため、大規模なJavaコードベースと統合するのが少し不器用であるのに対し、ClojureはJavaクラスと相互運用するための単純な反復可能/反復子中心の方法に従います。これについてこれ以上の考え/詳細はありますか? 最終的に、それがclojureとscalaの間の十分に近い引き分けである場合、私は両方を試すかもしれません。Clojureの1つは、言語が非常に単純に見えることです。しかし、繰り返しになりますが、Scalaには非常に柔軟な型システムがあります。しかし、私はScalaが高速であることを知っています(複数の個人アカウントに基づく)。したがって、Clojureの速度が大幅に遅い場合は、後でではなく早く知りたいと思います。

15
AndroidアクティビティClassNotFoundException-すべてを試しました
アプリをフレームワークライブラリとアプリケーションにリファクタリングしましたが、エミュレーターでアプリを起動しようとすると、次のエラースタックトレースが表示されます。 06-02 18:22:35.529: E/AndroidRuntime(586): FATAL EXCEPTION: main 06-02 18:22:35.529: E/AndroidRuntime(586): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.matthewrathbone.eastersays/com.matthewrathbone.eastersays.EasterSimonSaysActivity}: java.lang.ClassNotFoundException: com.matthewrathbone.eastersays.EasterSimonSaysActivity in loader dalvik.system.PathClassLoader[/data/app/com.matthewrathbone.eastersays-1.apk] 06-02 18:22:35.529: E/AndroidRuntime(586): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2585) 06-02 18:22:35.529: E/AndroidRuntime(586): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 06-02 18:22:35.529: E/AndroidRuntime(586): at android.app.ActivityThread.access$2300(ActivityThread.java:125) 06-02 18:22:35.529: E/AndroidRuntime(586): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) 06-02 18:22:35.529: E/AndroidRuntime(586): at android.os.Handler.dispatchMessage(Handler.java:99) 06-02 18:22:35.529: E/AndroidRuntime(586): at …

5
Maven2を使用して実行可能なjarを構築する
私はMavenのマントラに比較的慣れていませんが、Mavenを使用してコマンドラインで実行可能なjarを構築しようとしています。依存関係を設定しましmvn installたが、jarを実行して実行しようとすると、2つのことが起こります。まず、修正可能なメインクラスが見つかりません。これを修正すると、実行時にクラスが見つからないというエラーが表示されます。 Mavenは依存関係ライブラリをjar内にパッケージ化していないため、jarをスタンドアロンアプリケーションとして実行できません。これを修正するにはどうすればよいですか?

2
Hibernateでの列挙
DAOに、値がJava列挙から取得されるフィールドがあると便利なことがよくあります。典型的な例はログインDAOで、通常、ユーザーを「NORMAL」または「ADMIN」として特徴付けるフィールドがあります。Hibernateでは、次の2つのオブジェクトを使用して、この関係を(半)タイプセーフな方法で表現します。 class User { String username; String passwd; UserType type; } class UserType { private enum Type {ADMIN, NORMAL}; private String type; //Setters/Getters for Hibernate public void setType(String type); public String getType(); //Setters/Getters for user public void setUserType(UserType.Type t); public UserType.Type getUserType(); public static UserType fromType(UserType.Type t); } これは機能しますが、UserTypeクラスが不格好で、いくつかの値を格納するためだけに官僚主義が多すぎることがわかりました。理想的には、Hibernateは列挙型フィールドを直接サポートし、列挙値を格納するための追加のテーブルを作成する必要があります。 私の質問は:Hibernateで列挙型クラスを直接マップする方法はありますか?そうでない場合、列挙を表すための私のパターンは十分に良いですか、それとも何かが欠けていますか?人々は他にどのようなパターンを使用していますか?
82 java  hibernate  dao 

7
Javaメソッド宣言でthrowsを使用するのはいつですか?
そのため、Javaでの例外処理について基本的には十分に理解していると思いましたが、最近、混乱と疑問を与えるコードを読んでいました。ここで取り上げたい主な疑問は、次のようなJavaメソッド宣言をいつ使用する必要があるかということです。 public void method() throws SomeException { // method body here } 私が収集したいくつかの同様の投稿を読んだところ、throwsは、メソッドの実行中にSomeExceptionがスローされる可能性があるという一種の宣言として使用されています。 私の混乱は、次のようなコードから来ています。 public void method() throws IOException { try { BufferedReader br = new BufferedReader(new FileReader("file.txt")); } catch(IOException e) { System.out.println(e.getMessage()); } } この例でスローを使用したい理由はありますか?IOExceptionのような基本的な例外処理を行っているだけの場合は、try / catchブロックが必要になるだけのようです。

6
JavaGit、JGit、EGitのいずれかを選択する際の混乱
Gitを使ったJavaアプリケーションを作っています。JavaGit、EGit、JGitと呼ばれるものがあることがわかりました 。 JavaGitとEGit / JGitが違うことは知っています。私が理解していないのは、EGitとJGitの違いです。どちらもEclipseプロジェクトでホストされていますが、一方はEclipseに関連しているようで、もう一方はそうではないようです。 私はEclipseを使用しておらず、使用する予定もないので、「Eclipse統合」についてはあまり気にしません。 JGitはどういうわけかEclipseに接続されていますか?(www.eclipse.orgでホストされており、JGitのドキュメントにも多くの「eclipse」キーワードが含まれています) 3つのうち、Gitリポジトリと連携するためにJavaプログラム(Eclipseで記述されていない)を接続するために何が必要ですか? 私はスタンドアロンのGitライブラリを好みます(つまり、ローカルのGitインストールに依存しません) 編集:もう1つの質問: JGitはGitバンドルコマンドをサポートしていますか? 編集:私は答えを見つけました-それはあります(まだ試していません)。それはtransportと呼ばれるクラスのパッケージにありますBundleWriter
82 java  eclipse  egit  jgit 

6
なぜSpringFrameworkなのか?[閉まっている]
クローズ。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 7年前に閉鎖されました。 この質問を改善する 最近、SpringFrameworkについてよく耳にします。業界でSpringFrameworkの周りにこれほど多くの話題があるのはなぜですか?
82 java  spring 

8
Virgil DobjanschiREST実装パターンを実装するサンプルAndroidRESTクライアントプロジェクトが必要
AndroidフォンでRESTクライアントを構築したい。 RESTサーバーは、いくつかのリソースを公開します。例:(GET) http://foo.bar/customer List of all customer http://foo.bar/customer/4711 The customer with id 4711 http://foo.bar/customer/vip List of all VIP customer http://foo.bar/company List of all companys http://foo.bar/company/4711 The company with the ID 4711 http://foo.bar/company/vip List of all VIP companys 私はRESTサーバーと通信して必要な情報を取得する方法を知っていると思います。このようなAPIでRESTクライアントクラスを実装します public List<Customer> getCustomers(); public Customer getCustomer(final String id); public List<Customer> getVipCustomer(); public …


5
同じファイルにプロジェクト名/グループ/バージョンと{source、target}の互換性を設定するにはどうすればよいですか?
私は自分のプロジェクトでgradleの使用を一般化するつもりであり、同じビルドファイルをどこでも再利用したいと思っています。残念ながら、移行を容易にするために、$ subjectに記載されているプロパティを1つのファイルで定義しようとすると問題が発生します。 これはgradle1.6です。 私が試したこと、すべての試みで失敗したこと: gradle.properties:名前を変更できません(読み取り専用、を使用しsettings.gradleてルートプロジェクト名をオーバーライドする必要があります!); {source,target}Compatibility考慮されていません。 settings.gradle:{source,target}Compatibilityどちらも考慮されていません! それで、これを達成するための正しい方法は何ですか?私がこれまでに試したことgradle.properties: group = something name = whatever # cannot do! version = whatever sourceCompatibility = whatever # not taken into account! そしてでsettings.gradle: sourceCompatibility = "whatever"; # not taken into account! 編集まあ、「名前」の問題は解決できません。残りの部分については、ビルドファイルで適用する別のファイルを使用しました。「名前」の扱いは本当に正しくありません:/ 編集2これは2014年でgradle1.12ですが、問題はまだ解決されていません...
82 java  gradle 

4
-XX:+ UseParallelGCと-XX:+ UseParNewGCの違い
これらは、若い世代のガベージコレクションのアルゴリズムです。 2番目のもの(UseParNewGC)は、同時保有期間生成ガベージコレクション(Java同時および並列GCを参照)で自動的にアクティブ化されますが、2つの並列アルゴリズムに違いはありますか?

5
プロパティファイルを使用してJavaログを設定するにはどうすればよいですか?(java.util.logging)
私は愚かなJavaロギングの問題を抱えています:アプリ設定ファイルからロギング設定をロードしています-しかし、ファイルを読んだ後は何もログに記録されません(これはネット上にある例とほとんど同じですが、追加のアプリケーション構成-これを削除しても役に立ちません)。「initializing ...」ログ行は問題なく表示されますが、「starting app」以降のメッセージはコンソールに記録されず、ログファイルも作成されません。ここで何が欠けていますか? ロガーコードは次のようになります。 ... Logger log = Logger.getLogger("myApp"); log.setLevel(Level.ALL); log.info("initializing - trying to load configuration file ..."); Properties preferences = new Properties(); try { FileInputStream configFile = new FileInputStream("/path/to/app.properties"); preferences.load(configFile); LogManager.getLogManager().readConfiguration(configFile); } catch (IOException ex) { System.out.println("WARNING: Could not open configuration file"); System.out.println("WARNING: Logging not configured (console output only)"); …
82 java  logging 


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.