パース11の周波数のJavaインタビューの質問(春+ Spring MVCの+ MyBatisの)

序文

最近、いくつかの企業は、よくある質問に直面して3つのフレームワークを終え、インタビューの中でされている、答えは今共有するために良いニュースを整理するために皆のためにここでそれを持って、我々は手助けをしたいです。

パース11の周波数のJavaインタビューの質問(春+ Spring MVCの+ MyBatisの)

以下は、春の共通のインタビューの質問です

1.春のフレームワークとは何ですか?メインモジュールのSpringフレームワークとは何ですか?

春はJavaプラットフォーム用のJavaアプリケーションの包括的な開発、幅広いサポートを提供するフレームワークです。

開発者はアプリケーション開発に集中できるように、開発者は、基本的な開発の問題を解決するための春。

Springフレームワーク自体は、我々が開発環境で安心して感じることができるスプリングボックスの統合を行い、デザインモードに応じても、しっかりした造りです

フレームは、バックグラウンドでどのように春の仕事を心配しないでください。

春Frameworkは、20個の以上のモジュールに統合されています。以下に示すように、これらのモジュールは、主に、データアクセス/電流をコアコンテナを分割され

ウェブ、AOP(アスペクト指向プログラミング)、ツール、モジュール、およびテストメッセージを,,するには。

2、利益をもたらすことができ、Springフレームワークを使用していますか?

ここではSpringフレームワークを提供を使用しての主な利点のいくつかは以下のとおりです。

依存性注入(DI)法などその依存関係JavaBeanプロパティと設定ファイル

一目。

EJBコンテナと比較すると、IoCコンテナは、より軽量になる傾向があります。限られたメモリやCPUリソースでIoCコンテナとして

開発とソースが非常に有利になった場合にアプリケーションを公開。

春は、このようなORMフレームワーク、ロギングフレームワーク、J2EE、Qなどない閉ざされた扉、既存の技術の春の利点を、い

uartzおよびJDKタイマーだけでなく、他のビューテクノロジ。

春のフレームワークは、モジュールの形で編成されています。パケットの数と、それはモジュールを見ることができる属するクラス、開発者によってのみ

唯一の彼らのニーズにモジュールを使用する必要があります。

テスト環境関連のコードがフレームに含まれているので、春の開発を使用してアプリケーションをテストするには、非常に簡単です

A. より簡単に、POJOクラスJavaBeanの形態の使用は、容易依存性注入試験を用いて記述することができ

データ。

Webフレームワーク春のWeb MVCフレームワークはまた、開発者向けのWebフレームワークのうまく設計された、選択され

それは、このようなStrutsの設計上-、不人気Webフレームワークとして主流のフレームワーク以外のオプションに強いほかを提供します。

スプリングは、単一のDB環境のように(小さなローカルトランザクション処理のための便利なトランザクション管理インターフェイスを提供します

下)と、このような複雑なDB JTA環境の使用などの複雑な一般的なトランザクション処理()。

パース11の周波数のJavaインタビューの質問(春+ Spring MVCの+ MyBatisの)

3.制御の反転(IOC)は何ですか?依存性注入とは何ですか?

反転制御は、ソフトウェア工学の分野に適用され、ために、プログラミングオブジェクトのカップリング技術を結合するためのランタイム・オブジェクトに装着されています

一般的に知られているように、コンパイル時との間のカップリング。従来のプログラミングでは、プロセスは、ビジネス・ロジック・アプリケーションであります

すでに決定に関連するオブジェクトを設定されています。場合には処理対象関係による制御の反転、ビジネス・ロジック

オブジェクトグラフのインスタンスを組み立てるための責任を負う決定図は、この実装はまた、オブジェクト間の所定の関係に関連付けることができます

抽象化の意味。プロセスを達成するために、「依存性注入」に縛られています。

制御の反転は、デザインパターンの目的のために、より制御対象成分を与え、私たちの実践的な仕事でプレーするためのアプリケーションです

効果的な役割。

依存性注入は、コンパイル時の機能で知られていない関数内の他のオブジェクトのクラスが依存するの場合には必要とされています

モードの例。これは、特定の機能を提供するために、それぞれの成分を活性化する機構を必要とする、制御依存性注入はトランスであります

転送基礎。コンポーネントは、コントロールフレームワーク、フレームワークの場合にない場合はそれ以外の場合は、どのように作成するコンポーネントを知るには?

Javaでは三つの方法を以下の注入はまだです:

  1. コンストラクタ・インジェクション

  2. セッターメソッド・インジェクション

  3. インタフェース注入

4、SpringフレームワークのIoCを説明してください?

春org.springframework.beansパッケージとパッケージorg.springframework.context

Springフレームワークは、基本IoCコンテナを形成しています。

コンフィギュレーション・オブジェクトの任意のタイプが可能となるようにたBeanFactoryインタフェースは、高度な設定メカニズムを提供します。

ApplicationContexたBeanFactoryインタフェースは、(サブインターフェース)たBeanFactoryに、拡張されます

的基础上添加了其他功能,比如与 Spring 的 AOP 更容易集成,也提供了处理 message resource

的机制(用于国际化)、事件传播以及应用层的特别配置,比如针对 Web 应用的

WebApplicationContext。

org.springframework.beans.factory.BeanFactory 是 Spring IoC 容器的具体实现,

用来包装和管理前面提到的各种 bean。BeanFactory 接口是 Spring IoC 容器的核心接口。

IOC:把对象的创建、初始化、销毁交给 spring 来管理,而不是由开发者控制,实现控制反转。

パース11の周波数のJavaインタビューの質問(春+ Spring MVCの+ MyBatisの)

以下为 Spring MVC常见面试问题

1、什么是 Spring MVC?

答:SpringMvc 是 spring 的一个模块,基于 MVC 的一个框架,无需中间整合层来整合。

2、Spring MVC 的优点:

答:

1)它是基于组件技术的.全部的应用对象,无论控制器和视图,还是业务对象之类的都是 java

组件.并且和 Spring 提供的其他基础结构紧密集成.

2)不依赖于 Servlet API(目标虽是如此,但是在实现的时候确实是依赖于 Servlet 的)

3)可以任意使用各种视图技术,而不仅仅局限于 JSP

4)支持各种请求资源的映射策略

5)它应是易于扩展的

3、SpringMVC 工作原理?

答:

1)客户端发送请求到 DispatcherServlet

2)DispatcherServlet 查询 handlerMapping 找到处理请求的 Controller

3)Controller 调用业务逻辑后,返回 ModelAndView

4)DispatcherServlet 查询 ModelAndView,找到指定视图

5)视图将结果返回到客户端

パース11の周波数のJavaインタビューの質問(春+ Spring MVCの+ MyBatisの)

以下为 MyBatis 常见面试问题

1、什么是 MyBatis?

答:MyBatis 是一个可以自定义 SQL、存储过程和高级映射的持久层框架。

2、讲下 MyBatis 的缓存

A:キャッシュと二次キャッシュにMyBatisのキャッシュ、内部にキャッシュセッションは、デフォルトがあり、遅い2

その名前空間に保存されている、デフォルトが開いていない、二次キャッシュ属性クラスがSerializableを直列化を実装して使用する必要があります

インターフェース(オブジェクトの状態を保存するために使用される)、それはマッピング・ファイル上に配置されてもよい。<キャッシュ/>

3、どのようにページからMyBatisの?原則として改ページプラグインは何ですか?

回答:

1)MyBatisの使用RowBoundsは、ページオブジェクト、あなたはまた、あなたが使用することができ、ページングを実装するSQLを直接書き込むことができます

MyBatisのページネーションプラグインです。

2)改ページプラグインの原理:インターフェースの実装を提供MyBatisの、カスタム・プラグインを実装する、方法を傍受するプラグインで停止

実行するSQLをカットし、SQLを書き換えます。

例:SELECT :. SELECT Tと書き換えSQL傍受、生徒からのからのT(スチューデントSELECT * FROM)

リミット0,10

図4に示すように、動作原理はMyBatisのプラグインを概説、並びにどのプラグインを作成するために?

回答:

1)のみParameterHandler、ResultSetHandler、StatementHandlerために書かれるMyBatisの、

エグゼキュータこれら四つのプラグインターフェースは、傍受する実際の必要性にインターフェイスプロキシオブジェクトを生成するために、動的プロキシをMyBatisの

今、インターフェイスメソッドの傍受機能、方法は、いつでもこれら四つのインタフェースオブジェクトを実行し、インターセプト法に入ります固有のものです

invoke()メソッドのInvocationHandler、もちろん、あなただけは傍受を指定し、それらをインターセプトする必要があります。

2)MyBatisのにインターセプタインターフェースと複製インターセプト()メソッドを達成し、次にプラグインにメモを書き込み、指定

これまでの方法を傍受することができますつのインターフェイスは、あなたが設定ファイルに書き込みプラグインを設定することを忘れないでください、覚えておいてください。

おすすめ

転載: blog.51cto.com/14442094/2422547
おすすめ