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

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

11
jUnit4.xのスイート実行前後のフック
jUnit 4.4を使用してテストを実行し、一連の統合テストのセットアップとティアダウンを実行しようとしています。分解は確実に実行する必要があります。TestNGで他の問題が発生しているので、jUnitに移植することを検討しています。テストを実行する前、およびすべてのテストが完了した後、実行できるフックは何ですか? 注:ビルドにはMaven2を使用しています。Mavenのpre-&post-integration-testフェーズを使用してみましたが、テストが失敗すると、Mavenが停止して実行されませんpost-integration-test。これは役に立ちません。

1
GuiceのAssistedInjectの使い方は?
https://github.com/google/guice/wiki/AssistedInjectを読みましたが、AssistedInject引数の値を渡す方法が記載されていません。インジェクター.getInstance()の呼び出しはどのようになりますか?
84 java  guice  guice-3 


12
「glob」タイプのパターンに相当するjava.util.regexはありますか?
Javaで「glob」タイプの一致を行うための標準(できればApache Commonsまたは同様に非ウイルス性)ライブラリはありますか?一度Perlで同じようなことをしなければならなかったとき、「.」を「\.」に、「*」を「.*」に、「?」を「.」に変更しただけですが、誰かがやったのではないかと思います。私のために働く。 同様の質問:glob式から正規表現を作成する
84 java  glob 

7
Java:参照によってintを渡すための最良の方法
バイトバッファからエンコードされた長さを解析する解析関数があり、解析された長さをintとして返し、インデックスを整数argとしてバッファに取り込みます。関数が解析対象に応じてインデックスを更新するようにしたい、つまり、参照によってそのインデックスを渡したい。Cでは、を渡すだけint *です。Javaでこれを行う最もクリーンな方法は何ですか?私は現在、インデックス引数を渡すことを検討しています。としてint[]、しかしそれは少し醜いです。

25
素数を生成する最もエレガントな方法[クローズ]
クローズ。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 5年前に閉鎖されました。 この質問を改善する この関数を実装するための最もエレガントな方法は何ですか? ArrayList generatePrimes(int n) この関数は最初のn素数を生成するため(編集:where n>1)、withgeneratePrimes(5)を返します。(私はこれをC#で行っていますが、Javaの実装、またはその他の同様の言語(Haskellではない)に満足しています)。ArrayList{2, 3, 5, 7, 11} この関数の書き方は知っていますが、昨夜やったときは思ったほどうまくいきませんでした。これが私が思いついたものです: ArrayList generatePrimes(int toGenerate) { ArrayList primes = new ArrayList(); primes.Add(2); primes.Add(3); while (primes.Count < toGenerate) { int nextPrime = (int)(primes[primes.Count - 1]) + 2; while (true) { bool isPrime = true; foreach (int n in …
84 c#  java  algorithm  primes 

10
Hibernate Query.list()をList <Type>にキャストする「適切な」方法は何ですか?
私はHibernateの初心者であり、特定のフィルターに一致するオブジェクトのリストを返す簡単なメソッドを作成しています。List&lt;Foo&gt;自然な戻り値の型のようでした。 私が何をするにしても、醜いものを使わない限り、コンパイラを幸せにすることはできないようです@SuppressWarnings。 import java.util.List; import org.hibernate.Query; import org.hibernate.Session; public class Foo { public Session acquireSession() { // All DB opening, connection etc. removed, // since the problem is in compilation, not at runtime. return null; } @SuppressWarnings("unchecked") /* &lt;----- */ public List&lt;Foo&gt; activeObjects() { Session s = acquireSession(); Query q …


5
OutputStreamからInputStreamを作成する最も効率的な方法
このページ:http://blog.ostermiller.org/convert-java-outputstream-inputstream は、OutputStreamからInputStreamを作成する方法を説明しています。 new ByteArrayInputStream(out.toByteArray()) 他の選択肢は、面倒なPipedStreamsと新しいスレッドを使用することです。 何メガバイトも新しいメモリバイト配列にコピーするという考えは好きではありません。これをより効率的に行うライブラリはありますか? 編集: Laurence Gonsalvesからのアドバイスにより、PipedStreamsを試してみましたが、それほど難しくはないことがわかりました。clojureのサンプルコードは次のとおりです。 (defn #^PipedInputStream create-pdf-stream [pdf-info] (let [in-stream (new PipedInputStream) out-stream (PipedOutputStream. in-stream)] (.start (Thread. #(;Here you write into out-stream))) in-stream))

10
JAX-RS Webサービスをテストしますか?
私は現在、JAX-RS(RESTfulWebサービス用のJavaAPI)ベースのWebサービスの自動テストを作成する方法を探しています。 基本的に、特定の入力を送信し、期待される応答が得られることを確認する方法が必要です。JUnitを介してこれを実行したいのですが、それをどのように実現できるかわかりません。 Webサービスをテストするためにどのようなアプローチを使用していますか? 更新: entzikが指摘したように、Webサービスをビジネスロジックから切り離すことで、ビジネスロジックの単体テストを行うことができます。ただし、正しいHTTPステータスコードなどもテストしたいと思います。

5
マルチスレッド環境でHttpClientを使用するためのベストプラクティス
しばらくの間、私はマルチスレッド環境でHttpClientを使用してきました。すべてのスレッドについて、接続を開始すると、完全に新しいHttpClientインスタンスが作成されます。 最近、このアプローチを使用すると、ユーザーが開いているポートが多すぎて、ほとんどの接続がTIME_WAIT状態になる可能性があることを発見しました。 http://www.opensubscriber.com/message/commons-httpclient-dev@jakarta.apache.org/86045.html したがって、各スレッドの代わりに: HttpClient c = new HttpClient(); try { c.executeMethod(method); } catch(...) { } finally { method.releaseConnection(); } 私たちは持っている予定です: [方法A] // global_c is initialized once through // HttpClient global_c = new HttpClient(new MultiThreadedHttpConnectionManager()); try { global_c.executeMethod(method); } catch(...) { } finally { method.releaseConnection(); } 通常の状況では、global_cは50 ++スレッドによって同時にアクセスされます。私は疑問に思っていました、これはパフォーマンスの問題を引き起こしますか?MultiThreadedHttpConnectionManagerは、ロックフリーメカニズムを使用してスレッドセーフポリシーを実装していますか? 10個のスレッドがglobal_cを使用している場合、他の40個のスレッドはロックされますか? または、すべてのスレッドでHttpClientのインスタンスを作成し、接続マネージャーを明示的に解放するとよいでしょうか。 …

9
スタンドアロンのJavaコードフォーマッター/ビューティファイアー/プリティプリンター?[閉まっている]
閉まっている。この質問は、StackOverflowのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善したいですか?質問を更新して、StackOverflowのトピックになります。 5年前に閉鎖されました。 この質問を改善する Java用の高品質のスタンドアロンソースコードフォーマッタの利用可能な選択肢について知りたいと思っています。 フォーマッタはスタンドアロンである必要があります。つまり、特定の開発環境から切り離された「バッチ」モードをサポートしている必要があります。理想的には、特定のオペレーティングシステムからも独立している必要があります。したがって、IDE du jourの組み込みフォーマッタは、ここではほとんど関心がありません(IDEが、おそらくコマンドラインからのバッチモードフォーマッタの呼び出しをサポートしている場合を除く)。たとえば、Windowsでのみ実行されるクローズドソースC / C ++で記述されたフォーマッタは理想的ではありませんが、やや興味深いものです。 明確にするために、「フォーマッター」(または「ビューティファイアー」)は「スタイルチェッカー」と同じではありません。フォーマッタは、入力としてソースコードを受け入れ、スタイリングルールを適用し、元のソースコードと意味的に同等のスタイル付きソースコードを生成します。構文の変更は、空白の変更やimportステートメントの整理など、コードレイアウトの変更などに限定されます。他のリファクタリングは、あるとしてもごくわずかしか実行されません。スタイルチェッカーもスタイリングルールを適用しますが、変更されたソースコードを出力として生成せずに、ルール違反を報告するだけです。したがって、画像は次のようになります。 フォーマッター(スタイリングルールに準拠する変更されたソースコードを生成します) ソースコードの読み取り→スタイリングルールの適用→スタイル付きソースコードの記述 スタイルチェッカー(変更されたソースコードを生成しません) ソースコードの読み取り→スタイリングルールの適用→ルール違反の書き込み さらなる明確化 ソリューションは高度に構成可能である必要があります。プリセットリストから選択するだけでなく、自分のスタイルを指定できるようにしたい。 また、Javaで記述された、多くのものをプリティプリントできる汎用のプリティプリンターを探していません。Javaコードのスタイルを設定したい。 また、多くの言語の大統一フォーマッターには必ずしも興味がありません。ソリューションがJava以外の言語をサポートしているのは良いことだと思いますが、それは必須ではありません。 さらに、コードの強調表示のみを実行するツールがすぐに利用 できます。 Webサービスにも興味がありません。ローカルで実行できるツールが必要です。 最後に、ソリューションは、オープンソース、パブリックドメイン、シェアウェア、フリーソフトウェア、商用、またはその他のものに制限される必要はありません。すべての形式のライセンスが受け入れられます。



3
Class <T>のパラメータに渡されたnullをMockitoと照合する方法
私はこれらのような方法を持っています: public &lt;T&gt; method(String s, Class&lt;T&gt; t) {...} null他のパラメーターにマッチャーを使用するときに2番目の引数に渡されることを確認する必要があることを確認する必要があります。 @SuppressWarnings("unchecked") verify(client).method(eq("String"), any(Class.class)); しかし、(警告を抑制せずに)より良い方法はありますか?T他のメソッドの戻り値の型を表します。voidこの場合nullは、で渡されます。

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