Grain Academy(6)-講師管理モジュールとSwagger構成

次に、メインテキストの入力とプロジェクトの機能開発を開始します。ここでのプロジェクトモジュールは、上記で作成したプロジェクト構造のservice-eduモジュールです。プロジェクト構造の作成プロセスについては、https://を参照してください。 blog.csdn.net/qq_44762290 / article / details / 107441065

  1. リソースファイルの構成application.propertiesまたはapplication.yml
#服务端口
server.port=8001
#服务名
spring.application.name=service-edu
#环境设置:dev,test,port
spring.profiles.active=dev
#数据库配置连接
#数据库驱动配置
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
#数据库地址配置
spring.datasource.url=jdbc:///guli?serverTimezone=GMT%2B8
#用户配置
spring.datasource.username=root
spring.datasource.password=ffy106
#mybatics日志
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
  1. コントローラ、サービス、マッパーコードコンテンツを開発する

    ここでは、mybatis-plugが提供するコードジェネレーターを使用して関連するコードを生成できます。コードジェネレーターはツールです。

test / javaディレクトリにパッケージcom.atguigu.eduserviceを作成し、コードジェネレーターCodeGenerator.javaを作成します。

画像

コードジェネレーターのコードファイルは次のとおりです。コードはmybatis-plugが提供するコードファイルです。構成の一部を変更するだけで済みます。ここで提供されるコードファイルは次のとおりです。

CodeGenerator.java

次に、プログラムを実行し、実行する前にファイル内のパスを変更します。独自のファイルパスに変更します。これは、コードジェネレーターによって生成された場所です。画像画像

  • 独自のデータベースパスワードを変更する

画像

  • 生成されるディレクトリ構造は次のようになります

画像

  1. 先生情報表示

まず、コードジェネレーターを使用した後、特定のファイルが生成されます。次に、コントローラーパッケージの下のEduTeacherController.javaファイルに移動します。

2つの注釈を追加します

@RestController
@RequestMapping("/eduservice/teacher")

画像

  • 注入サービス
@Autowired
private EduTeacherService teacherService;

画像

  • 次に、メソッドを追加します
 @ApiOperation(value = "所有讲师列表")
    @GetMapping("findAll")
    public List<EduTeacher> findAllTeacher() {
        //调用service的方法实现查询所有的操作
        List<EduTeacher> list = teacherService.list(null);
//        return R.ok().data("items",list);
        return list;
    }

画像

  • 次に、スタートアップクラスEduApplication.javaを追加します
@SpringBootApplication
@ComponentScan(basePackages = {"com.atguigu"})
public class EduApplication {
    public static void main(String[] args) {
        SpringApplication.run(EduApplication.class, args);
    }
}

画像

データベース内のデータを表示できます。

画像

4.講師ロジック削除機能

  • EduTeacherController adddeleteメソッド
@DeleteMapping("{id}")
public boolean removeById(@PathVariable String id){
return teacherService.removeById(id);}
  • トゥームストーンプラグインを構成する
MyBatisPlusConfig中配置
@Bean
public ISqlInjector sqlInjector() {
      return new LogicSqlInjector();}
  • テスト、削除およびその他の後のテストにはSwaggerメソッドテストを使用します
  1. Swagger2
  • 前書き

フロントエンドおよびバックエンドの開発モデルでは、APIドキュメントがコミュニケーションの最良の方法です

Swagger2は、RESTFULスタイルのWebサービスを生成、記述、呼び出し、視覚化するための標準化された完全なフレームワークです。

  1. 適時性(インターフェースが変更された後、関連するバックエンド開発者にタイムリーかつ正確に通知できます)
  2. 標準化(およびインターフェースのアドレス、要求メソッド、パラメーター、応答形式、エラー情報などのインターフェースの標準化を保証します
  3. 一貫性(インターフェース情報は一貫しており、開発者が受け取ったドキュメントのバージョンが異なるために違いはありません
  4. テスト容易性(ビジネスの理解を容易にするために、インターフェイスドキュメントで直接テストします
  5. swagger2を構成します
  • 共通モジュールを作成し、guli-parentの下に共通モジュールを作成します

画像

  • 関連する依存関係を共通に導入する
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <scope>provided </scope>
    </dependency>
    <!--mybatis-plus-->
    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <scope>provided </scope>
    </dependency>
    <!--lombok用来简化实体类:需要安装lombok插件-->
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <scope>provided </scope>
    </dependency>
    <!--swagger-->
    <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger2</artifactId>
        <scope>provided </scope>
    </dependency>
    <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger-ui</artifactId>
        <scope>provided </scope>
    </dependency>
    <!-- redis -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-redis</artifactId>
    </dependency>
    <!-- spring2.X集成redis所需common-pool2
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-pool2</artifactId>
        <version>2.6.0</version>
    </dependency>-->
</dependencies>
  • 共通の下にサブモジュールサービスベースを作成し、作成後の構造は

画像

SwaggerConfig.java

おすすめ

転載: blog.csdn.net/qq_44762290/article/details/107541280