一.前后台分离开发(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 epositorymysqlmysql-connector-java8.0.15mysql-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).打开浏览器进行测试,是否成功