SSMとオープンソースのフレームワーク------インタビューガイド

1.MyBatis:

重要なコンポーネントを1.1MyBatis:

  • マッパー設定:エンティティクラスStudent.java - データシートの学生、XMLまたは注釈
  • マッパーインタフェース:DAO層インタフェース。(その実装するクラスを記述することなく、ジャスト・ライト・インターフェース:規則に従う必要があります)
  • マッパーインタフェースは規約を書く際に従わなければなりません。

    1. SQLメソッドの名前とID値プロファイル(studentMapper.xml)が同じである必要があります

    2.入力パラメータの方法、およびSQLのParameterType同じプロファイルのタイプでなければなりません。

    3.メソッドの戻り値、およびタイプresultTypeと同じSQLプロファイルでなければなりません

    SQLプロファイル

  • <SELECT ID = "queryStudentByNo"のParameterType = "INT" resultTypeと= "lanqiao.entity.Student"> 
        選択学生からここstuNo = * #{stuNo}
     </選択>

    インターフェース

  • パブリック インターフェースStudentMapper 
    { 
      生徒queryStudentByNo(INT stuNO)
       リスト <学生> queryStudentByNo()
    }

    特別:

    そうでない場合、本のParameterType 1は、ノンパラメトリック法である表し

    2.何resultTypeとが存在しない場合は、戻り値がvoidの表し

    3.戻り値がコレクション型、まだ実際のresultTypeと要素型ではなく、コレクション型がある場合。

一般的なオブジェクトの1.2MyBatis開発

1.SqlSessionFactory:SqlSesssion工場。生成SqlSesssionは、()でのOpenSession SqlSesssionオブジェクト:SqlSessionFactoryで。

2.SqlSesssion:(JDBC接続に類似)SqlSesssionオブジェクト

3.Executor:MyBatisのすべてのマッパー文の実行は、エグゼキュータによって行われます。

1.3MyBatis 4つのコアサブジェクト

1.StatementHandler(責任のSQL文):処理されたデータベースは、選択...ここで、ID =#{}から..

(SQLのパラメータの責任)2.PrameterHandler:SQLにおけるプロセスパラメータオブジェクト

3.Executor

4.ResultSetHandler:結果セットをSQLリターンを処理します

1.5MyBatis 4つのプロセッサ

StatementHandler、PrameterHandler、ResultSetHandler

左A:TypeHandler(型コンバータ)

1 1.6 1、多くの1つ、遅延ロード

マンツーマン

  

用途<このresultMap>で<関連> 
1つの遅延ロード:
使用 <このresultMap>で<関連> select属性に指定された遅延ロードのSQL文
 <このresultMap>     
        <協会選択= "遅延ロードのSQL文"> 
        <<協会>> 
</このresultMap>

多く:

    関連変わっコレクション内の1

2.Spring

IOC / DI:コントロール/ DIの反転

  目的:デカップリング

  >モードファクトリー - Student2の学生は=新しいStudent2()は、高度に結合された新しいの使用になります

  クラス - >新しい - >オブジェクト

  クラス - >ファクトリーモード - >オブジェクトは、達成することができデカップリング、質問です:あなた自身の工場を記述する必要が

  IOCは:IoCのは、私たちは工場を提供するのに役立ちます。1.塗りつぶしオブジェクト(構成[XML、コメント])植物からオブジェクトを取得するための2つの工場

  概要:IOCは私たちは、「設定モード」を通じてオブジェクトを作成することができます

AOP:アスペクト指向プログラミング

  OOP(オブジェクト指向)サプリメントの、交換しないで

  

 

 AOPを使用するメリット

 

 

 

 

  AOPの実際のシーンを使用します。

  ログ、セキュリティと団結チェック

春は、これらのデザインパターンを使用しています

Factoryパターン:Beanを作成し、豆の取得

シングルトン/原型パターン:Beanを作成する場合、範囲を設定し、シングルトン/プロトタイプ

リスニングモード:カスタム出版時間、リスニングモード。アクションがトリガされたときApplicationListenerとして、それは自動的に通知を実行します。

Chain of Responsibilityパターン:AOP

戦略モード:エージェントを作成します。

 

3.SpringMvc

SpringMvc実施プロセス

 

 

 

4.SpringBoot

最主要的功能:自动装配

以前(不用spring boot),需要自己配置框架的配置文件。

spring,mybatis ,SSM整合等情况 需要编写一大堆配置文件。

如果使用Spring Boot,则可以省略配置 。 好处:将开发重点放在业务逻辑上,而不是配置上。

自动装配的原理? 约定优于配置 (核心:将一些配置功能,前置到源码底层实现好)

自动装配两个特点:

1.版本仲裁中心:因此,以后引入依赖时,不用再写版本号。好处:1.不用记 2.避免冲突(防止引入多个引来时,由于各个依赖的版本不兼容造成的冲突)

2.提供了很多starter(场景启动器) :批量jar。

假设开发web项目 ( json.jar tomcat.jar hibernate-validator.jar, spring-web.jar ... ) => spring-boot-starter-web.

以后使用web项目,只需要引入spring-boot-starter-web

自动装配的应用时: @EnableAutoConfiguration 就是springboot提供自动装配的 注解。

 

5.Spring Cloud

Spring Cloud:微服务治理框架

  Eureka:服务注册中心,类似于dubbo中的zookeeper

 

 需要注意:Eureka Client有两个角度:如果站在eureka来看,是一个 客户端;如果站在系统角度来看,是一个服务端。

 

6.Ribbon

客户端负载均衡工具

 

 

7.Feign

声明式客户端负载均衡工具

Feign是建立在Ribbon之上。

Feign与Ribbon的区别: Ribbon面向URI地址的;Feign面向接口的

 

8.熔断器

熔断器:Hystrix

 

 

 

解决服务雪崩:熔断器

 

 

 

备用方法b2通常是错误提示或者日志记录

@HystrixCommand(fallbackMethod="b2")
public void a()
{
    
    b();//远程
}

puyblic void b2()
{
    ...
    
}

 

おすすめ

転載: www.cnblogs.com/xp0813/p/12303809.html