Struts インタビューの質問と回答トップ 50 (2025)

ここでは、新人だけでなく経験豊富な候補者も夢の仕事に就くための Struts の面接の質問と回答を紹介します。


1. Struts Framework のコンポーネントは何ですか?

Struts フレームワークは次のコンポーネントで構成されます。

  1. Javaサーブレット
  2. JSP (Java サーバー ページ)
  3. カスタムタグ
  4. メッセージリソース

無料 PDF ダウンロード: Struts インタビューの質問と回答


2. MVC ベースのアプリケーションにおけるハンドラーの役割は何ですか?

リクエストは MVC アーキテクチャのモデル層にバインドされているため、リクエストを適切なモデルに転送するのはハンドラーの仕事です。 ハンドラーは、構成ファイルからのマッピング情報を使用してリクエストを転送します。


3. Struts ベースのアプリケーションにおけるリクエストのフローは何ですか?

Struts ベースのアプリケーションは MVC 設計パターンを使用します。 リクエストの流れは以下の通りです。

  • ユーザーは、任意のリンクをクリックするか、任意のフォームを送信することで View と対話します。
  • ユーザーの操作により、リクエストがコントローラーに渡されます。
  • コントローラーは、リクエストを適切なアクションに渡す責任があります。
  • アクションは、すべてのビジネス ロジックが実装されたモデル内の関数を呼び出す責任があります。
  • モデル層からの応答はアクションによって受信され、ユーザーが応答を確認できるビューに渡されます。

4. リクエストルーティングのマッピング情報を取得するためにコントローラによって使用されるファイルはどれですか?

コントローラーは設定ファイル「struts-config.html」を使用します。XML ファイルを使用してすべてのマッピング情報を取得し、ユーザーのリクエストのルーティングにどのアクションを使用するかを決定します。


5. Struts におけるアクション クラスの役割は何ですか?

Struts では、アクション クラスがコントローラーとして機能し、次の主要なタスクを実行します。

  • ユーザーリクエストを受信した後、ユーザーのリクエストを処理します。
  • 適切なモデルを使用し、モデルからデータを取得します (必要な場合)。
  • 適切なビューを選択してユーザーへの応答を表示します。
Struts の面接の質問
Struts の面接の質問

6. actionForm Bean はどのように作成されますか?

代理

actionForm Bean はクラスを拡張して作成されます org.apache.struts.action.ActionForm

In the following example we have created an actionForm bean with the name 'testForm':

import javax.servlet.http.HttpServletRequest; 
import org.apache.struts.action.*; 
public class testForm extends ActionForm { 
private String Id=null; 
private String State=null; 
public void setId(String id){
this.Id=id; 
} 
public String getId(){
return this.Id;
}
public void setState(String state){ 
this.State=state; 
} 
public String getState(){ 
return this.State; 
}

7. Validator FrameWork でサポートされる XNUMX 種類の検証は何ですか?

Validator Framework はフォーム データの検証に使用されます。 このフレームワークは、次の XNUMX 種類の検証を提供します。

  1. ユーザーのブラウザでのクライアント側の検証
  2. サーバー側の検証

8. Struts のインストール手順は何ですか?

Struts フレームワークを使用するには、開発環境に Struts.Jar ファイルを追加するだけです。 jar ファイルが CLASSPATH で利用可能になると、フレームワークを使用して Strut ベースのアプリケーションを開発できるようになります。

Struts の面接の質問
Struts の面接の質問

9. JSP フォームでクライアント側の検証を有効にするにはどうすればよいですか?

Struts でクライアント側の検証を有効にするには、まず struts-config.xml ファイルで検証プラグインを有効にする必要があります。 これを行うには、このファイルに次の構成エントリを追加します。

<!--  Validator plugin -->
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property
property="pathnames"
value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>
</plug-in>

次に、検証ルールが validation.xml ファイルで定義されます。 フォームに電子メール フィールドが含まれており、このフィールドのクライアント側検証を有効にしたい場合は、次のコードを validation.xml ファイルに追加します。

<form name="testForm">
<field  property="email"
depends="required">
<arg key="testForm.email"/>
</field>
</form>

10. Struts 設定ファイルでのリクエスト転送にアクション マッピング タグはどのように使用されますか?

Struts 設定ファイル (struts-config.xml) では、action-mapping タグの下に転送オプションが定義されています。

次の例では、ユーザーがハイパーリンクをクリックしたとき テストする、リクエストはに転送されます /pages/testing.jsp struts-config.xml ファイルの次の構成を使用します。

<action  path="/test" forward="/pages/testing.jsp">

この転送は、ユーザーが JSP ページ上の次のハイパーリンクをクリックすると行われます。

<html:link</strong> page="/test.do</strong>">Controller Example</html:link>

11. Struts では重複したフォームの送信をどのように制御できますか?

Struts では、アクション クラスは、フォームの重複送信を避けるために使用できる XNUMX つの重要なメソッドを提供します。

アクション クラスの saveToken() メソッドは、一意のトークンを生成し、ユーザーのセッションに保存します。 isTokenValid() メソッドは、トークンの一意性をチェックするために使用されます。


12. Struts では、Java Bean とそのプロパティにどのようにアクセスできますか?

Bean Tag Library は、Java Bean へのアクセスに使用できる Struts ライブラリです。


13. Struts に JSP 構成情報を保存するために使用される構成ファイルはどれですか?

JSP 構成の詳細には、Web.xml ファイルが使用されます。


14. アクションクラスの Execute メソッドの目的は何ですか?

アクション クラスの Execute メソッドは、ビジネス ロジックの実行を担当します。 ユーザーのリクエストに対して何らかの処理が必要な場合は、このメソッドで実行されます。 このメソッドは、アプリケーションを適切なページにルーティングする actionForward オブジェクトを返します。

次の例では、execute メソッドは、struts-config.xml で定義された「exampleAction」という名前の actionForward のオブジェクトを返します。

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

public class actionExample extends Action
{
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws Exception{
return mapping.findForward("exampleAction");
}
}

15. Struts Validation フレームワークの validation.xml ファイルと validator-rules.xml ファイルの違いは何ですか?

Validation.xml では特定の Java Bean の検証ルールを定義し、validator-rules.xml ファイルでは標準および汎用の検証ルールを定義します。


16. JSP ページですべての検証エラーをユーザーに表示するにはどうすればよいですか?

validation.xml ファイルで定義された検証ルールに基づいてすべての検証エラーを表示するには、次を使用します。 JSP ファイル内のタグ。


17. Struts の宣言的例外処理とは何ですか?

例外処理のロジックが struts-config.xml またはアクション タグ内で定義されている場合、それは Struts では宣言型例外処理と呼ばれます。

次の例では、struts-config.xml ファイルに NullPointerException の例外を定義しています。

<global-exceptions>

<exception key="test.key"

Type="java.lang.NullPointerException"

Path="/WEB-INF/errors/error_page.jsp"

</global-exceptions>

18. DynaActionFormとは何ですか?

DynaActionForm は、フォーム Bean を動的に作成するために使用される特別なタイプの actionForm クラス (ActionForm クラスのサブクラス) です。 フォーム Bean の作成には構成ファイルを使用します。


19. Struts でタイルを使用するにはどのような構成変更が必要ですか?

Tiles フレームワークを使用して再利用可能なコンポーネントを作成するには、struts-config.xml ファイルに次のプラグイン定義コードを追加する必要があります。

<plug-in className="org.apache.struts.tiles.TilesPlugin" >

<set-property property="definitions-config" value="/WEB-INF/tiles-defs.xml" />

<set-property property="moduleAware" value="true" />

</plug-in>

20. Jakarta Struts と Apache Struts の違いは何ですか? どちらを使用するのが良いでしょうか?

どちらも同じであり、違いはありません。


21. Struts.xml 構成ファイルは何に役立ちますか?

Struts.xml ファイルは、URL とアクションの間のマッピングを定義するために使用される Struts フレームワークの主要な構成ファイルの XNUMX つです。 ユーザーのリクエストがコントローラーによって受信されると、コントローラーはこのファイルのマッピング情報を使用して、適切なアクション クラスを選択します。


22. Struts でタグ ライブラリはどのように定義されますか?

タグ ライブラリは、内部の構成ファイル (web.xml) で定義されます。 次のようにタグを付けます。

<taglib>

<taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>

<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>

</taglib>

23. Struts におけるロジック タグの重要性は何ですか?

Struts でロジック タグを使用すると、スクリプトレットを使用せずに、プレゼンテーション層でクリーンで効率的なコードを作成するのに役立ちます。


24. formbeans の XNUMX つのスコープ タイプは何ですか?

  • リクエストの範囲: Formbean 値は現在のリクエストでのみ使用できます
  • セッションスコープ: Formbean 値は、現在のセッションのすべてのリクエストで使用できます。

25. Struts で関連するアクションを XNUMX つのグループにグループ化するにはどうすればよいですか?

複数の関連するアクションを XNUMX つのグループにグループ化するには、DispatcherAction クラスを使用できます。


26. SwtichAction をいつ使用する必要がありますか?

SwitchAction クラスを使用する最適なシナリオは、複数のモジュールが個別に動作するモジュール式アプリケーションがある場合です。 SwitchAction クラスを使用すると、あるモジュール内のリソースから、アプリケーションの別のモジュール内の別のリソースに切り替えることができます。


27. Struts フレームワークの利点は何ですか?

Struts は MVC に基づいているため、Struts ではさまざまなレイヤーが適切に分離されており、Struts アプリケーションの開発とカスタマイズが容易になります。 さまざまな構成ファイルを使用すると、Struts アプリケーションを簡単に構成できます。 また、Struts はオープンソースであるため、コスト効率が高くなります。


28. Struts1 から Struts2 へのアプリケーションの移行にはどのような手順が必要ですか?

Struts1 から Struts2 への移行には次の手順が必要です。

  1. Struts1 の actionForm を Struts2 POJO に移動します。
  2. Struts1 構成ファイル (struts-config.xml) を Struts2 構成ファイル (struts.xml) に変換します。

29. Struts ではフォームのプロパティはどのように検証されますか?

設定されたプロパティの検証には、Action クラスに formbean の制御を処理する前に、ActionForm クラスの validate() メソッドが使用されます。


30. ActionFormクラスのresetメソッドは何に使うのですか?

actionForm クラスのresetメソッドは、新しいリクエストを開始する前にフォームの値をクリアするために使用されます。


31. Strutsのデメリットは何ですか?

Struts には多くの利点がありますが、より長い学習期間が必要となり、開発プロセスの透明性も低下します。

また、Struts には適切なドキュメントが不足しており、そのコンポーネントの多くについて、ユーザーはヘルプ用の適切なオンライン リソースを入手できません。


32. Struts Validation フレームワークでの resourcebundle.properties ファイルの用途は何ですか?

resourcebundle.properties ファイルは、コード内で発生する可能性のあるエラーに対する特定のエラー メッセージをキーと値のペアで定義するために使用されます。

このアプローチは、開発者がすべてのエラー メッセージをコード内に埋め込む必要がないため、コードをクリーンに保つのに役立ちます。


33.もらえますか HTML 関連する getter および setter formbean メソッドのない form プロパティ?

HTML フォームのプロパティごとに、フォームビーンのゲッター メソッドとセッター メソッドを定義する必要があります。定義しないとアプリケーションでエラーが発生します。


34. Struts アプリケーションではサーブレット コントローラーがいくつ使用されますか?

Struts フレームワークは集中制御アプローチの概念に基づいて動作し、アプリケーション全体が単一のサーブレット コントローラーによって制御されます。 したがって、サーブレット アプリケーションにはサーブレット コントローラーが XNUMX つだけ必要です。


35. 単一の Struts アプリケーションの場合、複数の struts-config.xml ファイルを使用できますか?

単一のアプリケーションに対して任意の数の Struts-config.xml ファイルを含めることができます。

これには次の構成が必要です。

<servlet>

<servlet-name>action</servlet-name>

<servlet-class>

org.apache.struts.action.ActionServlet

</servlet-class>

<init-param>

<param-name>config</param-name>

<param-value>

/WEB-INF/struts-config.xml

/WEB-INF/struts-config_user.xml

/WEB-INF/struts-config_admin.xml

</param-value>

</init-param>

.............

.............

</servlet>

36. Struts ではどのモデル コンポーネントがサポートされていますか?

Struts は、Java Bean、EJB、CORBA を含むすべてのタイプのモデルをサポートします。 ただし、Struts には特定のモデルに対するサポートが組み込まれていないため、どのモデルを選択するかは開発者の選択です。


37. IncludeAction を使用すると便利な場合は何ですか?

IncludeAction は、Struts によって提供されるアクション クラスで、Struts とサーブレット ベースのアプリケーションの間の統合が必要な場合に役立ちます。


38. Struts スレッドは安全ですか?

はい、Struts はスレッドセーフです。 Struts では、各リクエストを処理するために新しいサーブレット オブジェクトは必要ありません。 むしろ、アクション クラス オブジェクトの新しいスレッドが新しいリクエストごとに使用されます。


39. Struts でリソース ファイルを使用するにはどのような構成変更が必要ですか?

リソース ファイル (.properties ファイル) は、struts-config.xml ファイルに次の構成エントリを追加することで Struts で使用できます。

<message-resources parameter="com.login.struts.ApplicationResources"/>

40. ネストされた Bean は Struts アプリケーションでどのように使用できますか?

Struts は、この目的のために別のタグ ライブラリ (ネストされたタグ ライブラリ) を提供します。 このライブラリを使用すると、Struts ベースのアプリケーションで Bean をネストできます。


41. Struts Frameworkのコアクラスとは何ですか?

以下は、Struts Framework によって提供されるコア クラスです。

  • アクションクラス
  • ActionFormクラス
  • アクションマッピングクラス
  • ActionForward クラス
  • アクションサーブレットクラス

42. Struts の例外をプログラムで処理できますか?

はい、コード内で try、catch ブロックを使用することで、Struts で例外をプログラム的に処理できます。

try {

// Struts code

}

Catch (Exception e) {

// exception handling code

}

43. Struts Framework はの一部ですか J2EE?

Struts フレームワークは JSP、Java Beans、サーブレットなどの J2EE テクノロジに基づいていますが、J2EE 標準の一部ではありません。


44. Struts でアクション マッピングはどのように構成されますか?

アクション マッピングは、構成ファイル struts-config.xml のタグの下に構成されます。 次のように:

<pre><action-mappings>
<action path="/login"
type="login.loginAction"
name="loginForm"
input="/login.jsp"
scope="request"
validate="true">
<forward name="success" path="/index.jsp"/>
<forward name="failure" path="/login_error.jsp"/>
</action>
</action-mappings>

45. Struts Framework を選択するのはどのような場合ですか?

Struts は、次の条件のいずれかまたは一部が当てはまる場合に使用する必要があります。

  • 非常に堅牢なエンタープライズ レベルのアプリケーション開発が必要です。
  • 再利用可能で高度に構成可能なアプリケーションが必要です。
  • 疎結合の MVC ベースのアプリケーションには、異なるレイヤーを明確に分離する必要があります。

46. Struts で ActionServlet がシングルトンなのはなぜですか?

Struts フレームワークでは、actionServlet がコントローラーとして機能し、ユーザーによるすべてのリクエストはこのコントローラーによって制御されます。 ActionServlet はシングルトン設計パターンに基づいており、このコントローラー クラスに対して作成する必要があるオブジェクトは XNUMX つだけです。 ユーザーリクエストごとに複数のスレッドが後で作成されます。


47. Struts でバリデータ フレームワークをセットアップするにはどのような手順が必要ですか?

Struts でバリデータ フレームワークをセットアップするには、次の手順が必要です。 – 誤表記

  1. WEB-INF ディレクトリに valdator-rules.xml ファイルと validation.xml ファイルを配置します。
  2. 以下を追加して、struts-config.xml ファイルで検証プラグインを有効にします。
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property property="pathnames" value="/WEB-INF/validator-rules.xml,
/WEB-INF/validation.xml"/>
</plug-in>

48. StrutsのView Layerで使用できるテクノロジーはどれですか?

Struts では、ビュー層で次のテクノロジーのいずれかを使用できます。

  • JSP
  • HTML
  • XML / XSLT
  • WML ファイル
  • 速度テンプレート
  • サーブレット

49. actionFormが正しく動作するための条件は何ですか?

ActionForm が正しく動作するには、次の条件を満たす必要があります。

  • 引数のないコンストラクターが必要です。
  • すべてのプロパティに対してパブリックの getter メソッドと setter メソッドが必要です。

50. チェック ボックス、テキスト ボックスなどのフォーム要素用に Struts によって提供されているライブラリはどれですか?

Struts は、テキスト フィールド、テキスト ボックス、ラジオ ボタンなどのフォーム要素を追加するために使用できる HTML タグ ライブラリを提供します。


これらの面接の質問は、あなたの活力(口頭)にも役立ちます

シェアする

3のコメント

  1. アバター スミス 言います:

    本当にありがとうございます、素晴らしい ;):)PDF のダウンロード リンクが機能しません。ありがとう

    1. アバター Guru99 言います:

      エラーが修正されました! 報告してくれてありがとう

      1. アバター スミス 言います:

        ありがとうございます :):)

コメントを残す

あなたのメールアドレスは公開されません。 必須フィールドは、マークされています *