最新記事

Mockito - doReturn() と when() の違い 質問する
java
unit-testing
mockito

Mockito - doReturn() と when() の違い 質問する

現在、コントローラー メソッドをテストする Spring MVC アプリケーションで、Mockito を使用してサービス レイヤー オブジェクトをモック化しているところです。 しかし、Mockito の詳細を読んでいくうちに、 メソッドはdoReturn(...).when(...)と同等であることがわかりましたwhen(...).thenReturn(...)。 そこで私の質問は、同じことを行う 2 つの方法を持つことの意味は何か、あるいは 2 つの方法の微妙な違いは何なのかということです。

Admin

Javaでデフォルトメソッドを明示的に呼び出す 質問する
java
inheritance
interface
java-8
default-method

Javaでデフォルトメソッドを明示的に呼び出す 質問する

Java 8では、デフォルトの方法既存の実装を変更することなくインターフェースを拡張する機能を提供します。 メソッドがオーバーライドされている場合、または異なるインターフェースで競合するデフォルト実装のために使用できない場合に、メソッドのデフォルト実装を明示的に呼び出すことは可能でしょうか。 interface A { default void foo() { System.out.println("A.foo"); } } class B implements A { @Override public void foo() { System.out.println("B.foo"); } public void afoo() { // how to invoke A.foo() here? } } 上記のコードを考慮すると、A.foo()クラス B のメソッドからどのように呼び出すでしょうか?

Admin

依存性注入コンストラクタの狂気を回避するには?質問する
c#
java
dependency-injection
inversion-of-control
ioc-container

依存性注入コンストラクタの狂気を回避するには?質問する

私のコンストラクターは次のようになっていると思います: public MyClass(Container con, SomeClass1 obj1, SomeClass2, obj2.... ) パラメータ リストは増え続けています。「Container」は依存性注入コンテナなので、次のようにできないのはなぜでしょうか。 public MyClass(Container con) すべてのクラスに? 欠点は何ですか? これを行うと、誇張された静的を使用しているように感じます。 IoC と依存性注入の狂気についてあなたの考えを共有してください。

Admin

Web ベース アプリケーションのデザイン パターン [closed] 質問する
java
design-patterns
jsp
servlets

Web ベース アプリケーションのデザイン パターン [closed] 質問する

終了しました 。この質問は 意見に基づく 現在回答を受け付けておりません。 この質問を改善したいですか?質問を更新して、事実と引用で回答できるようにしてください。この投稿を編集する。 6年前に閉鎖されました。 この質問を改善する 私はシンプルな Web ベースのアプリケーションを設計しています。この Web ベースの分野は初心者です。サーブレット間で責任をどのように分散するか、新しいサーブレットを作成する基準など、設計パターンに関してアドバイスが必要です。 実際、私のホームページにはいくつかのエンティティがあり、それぞれに対応して、追加、編集、削除などのオプションがいくつかあります。以前は、エンティティ 1 の追加には Servlet1、エンティティ 1 の編集には Servlet2 というように、オプションごとに 1 つのサーブレットを使用していましたが、この方法では、多数のサーブレットが存在することになりました。 現在、設計を変更しています。質問は、サーブレットの役割をどのように選択するかということです。エンティティごとに 1 つのサーブレットを用意し、すべてのオプションを処理してリクエストをサービス レイヤーに転送する必要がありますか。それとも、ページ全体に 1 つのサーブレットを用意し、ページ全体のリクエストを処理してから、対応するサービス レイヤーに転送する必要がありますか。また、リクエスト オブジェクトをサービス レイヤーに転送するかどうかも教えてください。

Admin

Instant を String にフォーマットするときに UnsupportedTemporalTypeException が発生する 質問する
java
datetime
java-8
datetime-format
java-time

Instant を String にフォーマットするときに UnsupportedTemporalTypeException が発生する 質問する

新しい Java 8 の日付と時刻 API と次のパターンを使用して、Instant を文字列にフォーマットしようとしています。 Instant instant = ...; String out = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss").format(instant); 上記のコードを使用すると、サポートされていないフィールドに関する例外が発生します。 java.time.temporal.UnsupportedTemporalTypeException: Unsupported field: YearOfEra at java.time.Instant.getLong(Instant.java:608) at java.time.format.DateTimePrintContext.getValue(DateTimePrintContext.java:298) ...

Admin

Java 8 インターフェース メソッドで「final」が許可されないのはなぜですか? 質問する
java
language-design
java-8
default-method
jsr335

Java 8 インターフェース メソッドで「final」が許可されないのはなぜですか? 質問する

Java 8 の最も便利な機能の 1 つは、defaultインターフェースの新しいメソッドです。これらが導入された理由は基本的に 2 つあります (他にも理由があるかもしれません)。 実際のデフォルト実装を提供します。例:Iterator.remove() JDK API の進化を可能にします。例:Iterable.forEach() API 設計者の観点からは、インターフェース メソッドで他の修飾子を使用できればよかったと思いますfinal。たとえば、これは便利なメソッドを追加するときに役立ち、実装クラスでの「偶発的な」オーバーライドを防止します。 interface Sender { // Convenience method to send an empty message default final void send() { send(null); } // Implementations should only implement this method void send(String message); } 上記は、Senderクラスであれば既に一般的な方法です。 abstract class Sender { // Convenience method to send an empty message final void send() { send(null); } // Implementations should only implement this method abstract void send(String message); } さて、defaultと はfinal明らかに矛盾したキーワードですが、デフォルトのキーワード自体は厳密には要求されなかっただろうしたがって、私はこの矛盾が意図的なものであり、「本体を持つクラス メソッド」 (単なるメソッド) と「本体を持つインターフェース メソッド」 (デフォルト メソッド) の微妙な違い、つまり私がまだ理解していない違いを反映しているものと想定しています。 ある時点では、インターフェースメソッドのstaticやなどの修飾子のサポートはfinalまだ十分に検討されていませんでした。ブライアン・ゲッツ氏の言葉を引用: もう1つの部分は、最終メソッド、プライベートメソッド、保護されたメソッド、静的メソッドなどのインターフェイスのクラス構築ツールをどの程度サポートするかということです。答えは、まだわかりません。 2011年後半以降、staticインターフェース内のメソッドのサポートが追加されました。これにより、JDKライブラリ自体に多くの価値が加わりました。Comparator.comparing()。 質問: final(そしてstatic final)Java 8 インターフェースに導入されなかった理由は何ですか?

Admin

Spring Boot にフィルタークラスを追加するにはどうすればいいですか? 質問する
java
configuration
spring-boot
servlet-filters

Spring Boot にフィルタークラスを追加するにはどうすればいいですか? 質問する

FilterSpring Boot にはクラス (Web アプリケーション用)のアノテーションはありますか? おそらくあるでしょう@Filter? プロジェクトにカスタム フィルターを追加したいです。 Spring Boot リファレンス ガイドについて言及しましたFilterRegistrationBeanが、どのように使用すればよいかわかりません。

Admin

文字列の左にゼロを埋め込む [重複] 質問する
java
string
padding

文字列の左にゼロを埋め込む [重複] 質問する

この質問に対する回答は既にここにあります : Java で文字列を埋め込むにはどうすればよいでしょうか? (33件の回答) 7年前に 閉鎖されました 。 似たような質問を見たことがあるここそしてここ。 しかし、文字列の左側にゼロを埋め込む方法がわかりません。 入力: "129018" 出力: "0000129018" 出力の合計長は TEN になります。

Admin

Maven プロジェクトの実行 質問する
java
maven

Maven プロジェクトの実行 質問する

Java クラスのメイン メソッドを単純に実行するための Maven の「フェーズ」または「ゴール」はありますか? 「mvn run」のような操作を実行するだけで手動でテストしたいプロジェクトがあります。

Admin

application.properties でログレベルを設定するにはどうすればいいですか? 質問する
java
spring
spring-boot
logging
log-level

application.properties でログレベルを設定するにはどうすればいいですか? 質問する

これは非常に単純な質問ですが、情報が見つかりません。(おそらく、Java フレームワークに関する私の知識が著しく不足しているのでしょう。) application.properties を使用してログ レベルを設定するにはどうすればよいでしょうか。また、ログ ファイルの場所などはどうすればよいですか。

Admin