次に、メインテキストの入力とプロジェクトの機能開発を開始します。ここでのプロジェクトモジュールは、上記で作成したプロジェクト構造のservice-eduモジュールです。プロジェクト構造の作成プロセスについては、https://を参照してください。 blog.csdn.net/qq_44762290 / article / details / 107441065
- リソースファイルの構成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
-
コントローラ、サービス、マッパーコードコンテンツを開発する
ここでは、mybatis-plugが提供するコードジェネレーターを使用して関連するコードを生成できます。コードジェネレーターはツールです。
test / javaディレクトリにパッケージcom.atguigu.eduserviceを作成し、コードジェネレーターCodeGenerator.javaを作成します。
コードジェネレーターのコードファイルは次のとおりです。コードはmybatis-plugが提供するコードファイルです。構成の一部を変更するだけで済みます。ここで提供されるコードファイルは次のとおりです。
次に、プログラムを実行し、実行する前にファイル内のパスを変更します。独自のファイルパスに変更します。これは、コードジェネレーターによって生成された場所です。
- 独自のデータベースパスワードを変更する
- 生成されるディレクトリ構造は次のようになります
- 先生情報表示
まず、コードジェネレーターを使用した後、特定のファイルが生成されます。次に、コントローラーパッケージの下の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);
}
}
- 最後に、スタートアップクラスを実行し、ブラウザーにhttp:// localhost:8001 / eduservice / teacher / findAllと入力します。
データベース内のデータを表示できます。
4.講師ロジック削除機能
- EduTeacherController adddeleteメソッド
@DeleteMapping("{id}")
public boolean removeById(@PathVariable String id){
return teacherService.removeById(id);}
- トゥームストーンプラグインを構成する
MyBatisPlusConfig中配置
@Bean
public ISqlInjector sqlInjector() {
return new LogicSqlInjector();}
- テスト、削除およびその他の後のテストにはSwaggerメソッドテストを使用します
- Swagger2
- 前書き
フロントエンドおよびバックエンドの開発モデルでは、APIドキュメントがコミュニケーションの最良の方法です
Swagger2は、RESTFULスタイルのWebサービスを生成、記述、呼び出し、視覚化するための標準化された完全なフレームワークです。
- 適時性(インターフェースが変更された後、関連するバックエンド開発者にタイムリーかつ正確に通知できます)
- 標準化(およびインターフェースのアドレス、要求メソッド、パラメーター、応答形式、エラー情報などのインターフェースの標準化を保証します
- 一貫性(インターフェース情報は一貫しており、開発者が受け取ったドキュメントのバージョンが異なるために違いはありません
- テスト容易性(ビジネスの理解を容易にするために、インターフェイスドキュメントで直接テストします
- 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>
- 共通の下にサブモジュールサービスベースを作成し、作成後の構造は