這裡演示的是前期框架的搭建,剩下的Controller就很簡單了 ...
一.前後臺分離開發(swagger)
1.安裝maven
配置的maven環境變數
M2_HOME/MAVEN_HOME
Path
%M2_HOME%/bin
打開運行視窗:輸入mvn -v,查看是否安裝好。
在settings中的設置倉庫的位置,倉庫我已經給出,在我的百度網盤下載即可
鏈接:https://pan.baidu.com/s/193SKtpG62Fyq3vQgTgPgGA
提取碼:ksa5
2.在eclipse中配置maven
在eclipse中配置maven,配置過程在網上搜索“eclipse maven配置過程”,這裡不在詳述
jdk配置這裡不再詳述,在網上搜索即可
3.eclipse更改jdk環境
4.創建項目,引入的依賴,暫時引入基本的幾個依賴
註:整個項目的創建過程必須在聯網狀態,他會自動下載些依賴和jar包
5.在項目中新建以下幾個包,用於存放自動生成的bean類、映射介面和映射文件
6.插入文件generatorConfig.xml,代碼如下
註:代碼中有幾個地方需要更改
在第七行是自己配置的倉庫中的jar包,註意路徑別寫錯了。
jdbcConnection標簽的屬性需要更改,填寫自己的遠程或者本地的mysql資料庫
javaModelGenerator標簽的targetPackage屬性要更改(存放自動生成的bean類)
sqlMapGenerator,標簽的屬性targetPackage值要更改(自動生成的*Mapper.xml文件存放路徑)
javaClientGenerator標簽屬性targetPackage值要更改(自動生成的*Mapper.java存放路徑)
在最後的映射配置塊中:根據資料庫中表以及業務邏輯情況自動生成bean類、映射介面和映射文件
1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE generatorConfiguration 3 PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" 4 "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> 5 <!-- mybatis-generator的核心配置文件 --> 6 <generatorConfiguration> 7 <classPathEntry location="D:\android\repository\mysql\mysql-connector-java\8.0.15\mysql-connector-java-8.0.15.jar" /> 8 9 <context id="DB2Tables" targetRuntime="MyBatis3"> 10 11 <!--自己的遠程或者本地的mysql伺服器--> 12 <jdbcConnection driverClass="com.mysql.jdbc.Driver" 13 connectionURL="jdbc:mysql://127.0.0.1:3306/course" 14 userId="root" 15 password="root"> 16 <property name="useInformationSchema" value="true"/> 17 </jdbcConnection> 18 <!--指定生成的類型為java類型,避免資料庫中number等類型欄位 --> 19 <javaTypeResolver > 20 <property name="forceBigDecimals" value="false" /> 21 </javaTypeResolver> 22 23 <!--自動生成的實體的存放包路徑 --> 24 <javaModelGenerator targetPackage="com.briup.apps.app01.bean" targetProject="./src/main/java"> 25 <property name="enableSubPackages" value="true" /> 26 <property name="trimStrings" value="true" /> 27 </javaModelGenerator> 28 29 <!--自動生成的*Mapper.xml文件存放路徑 --> 30 <sqlMapGenerator targetPackage="mapper" targetProject="./src/main/resources"> 31 <property name="enableSubPackages" value="true" /> 32 </sqlMapGenerator> 33 34 <!--自動生成的*Mapper.java存放路徑 --> 35 <javaClientGenerator type="XMLMAPPER" targetPackage="com.briup.apps.app01.mapper" targetProject="./src/main/java"> 36 <property name="enableSubPackages" value="true" /> 37 </javaClientGenerator> 38 39 40 <!-- 映射配置 --> 41 <table tableName="c_user" domainObjectName="User" ></table> 42 <table tableName="c_course" domainObjectName="Course" ></table> 43 <table tableName="c_student_course" domainObjectName="StudentCourse" ></table> 44 45 </context> 46 </generatorConfiguration>
7.在pom.xml文件中添加依賴、添加插件
在<build>中的<plugins>標簽中添加mybatis-generator插件,代碼如下:
<plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.5</version> </plugin>
dependencys標簽中添加swagger2的依賴,代碼如下:
<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.6.1</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.6.1</version> </dependency>
Ctrl+s保存,等eclipse最下方的進度條完了之後在進行下一步操作。
8.修改application.properties
#本地 #spring.datasource.driverClassName=com.mysql.jdbc.Driver #spring.datasource.url=jdbc:mysql://localhost:3306/course?serverTimezone=UTC #spring.datasource.username=root #spring.datasource.password=root #遠程 spring.datasource.driverClassName=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://*.*.*.*:3306/course?useUnicode=true&characterEncoding=utf-8 spring.datasource.username=root spring.datasource.password=root server.port=8888 mybatis.mapper-locations= classpath:/mapper/**/*.xml
9.打開命令視窗,執行generatorConfig.xml文件
mvn -Dmybatis.generator.overwrite=true mybatis-generator:generate
相應的目錄中會生成相應的bean、mapper映射文件
......
10.創建Swagger2配置類
1)在config包中
創建Swagger2的配置類Swagger2
@Configuration @EnableSwagger2 public class Swagger2 { @Bean public Docket createRestApi() { return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() .apis(RequestHandlerSelectors.basePackage("com.briup.apps.app01.web")) .paths(PathSelectors.any()) .build(); } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title("Spring Boot中使用Swagger2構建RESTful APIs") .description("更多Spring Boot相關文章請關註:http://blog.didispace.com/") .termsOfServiceUrl("http://blog.didispace.com/") .contact("程式猿DD") .version("1.0") .build(); } }
如上代碼所示,通過@Configuration
註解,讓Spring來載入該類配置。再通過@EnableSwagger2
註解來啟用Swagger2.
再通過createRestApi
函數創建Docket
的Bean之後,apiInfo()
用來創建該Api的基本信息(這些基本信息會展現在文檔頁面中)
2)添加文檔內容(後期的業務邏輯中,首次框架搭建這裡可以跳過)
在controller中使用註解
@ApiOperation
註解來給API增加說明
@ApiImplicitParams、@ApiImplicitParam
註解來給參數增加說明
如下截圖所示
11.添加@MapperScan註釋的類(用戶掃描mapper包下的所有mapper映射介面類)
代碼如下
package com.briup.apps.app01.config; import org.mybatis.spring.annotation.MapperScan; import org.springframework.context.annotation.Configuration; @Configuration
//掃面com.briup.apps.app01.mapper包下的所有的mapper映射介面 @MapperScan("com.briup.apps.app01.mapper") public class MybatisConfig { }
12.運行項目:mvn spring-boot:run
打開瀏覽器測試是否運行成功。
13.項目打包
如果項目要進行打包,這裡打成war包,
1)在pom.xml文件中更改包的類型
2).在pom.xml文件中添加跳過測試
3).打包
Goals中輸入:package
得到包:
運行測試包
4).打開瀏覽器進行測試,是否成功