Springboot 学习笔记 之 Day 5 如何加密,以及用Swagger2构建Restful API

先看一下使用Swagger2构建Restful API效果图

超级简单的,只需要在pom 中引用如下jar包

<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.2.2</version>
</dependency>

<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.2.2</version>
</dependency>

在和startapp的同级目录下,新建一个Swagger2类

@Configuration
@EnableSwagger2
public class Swagger2 {

    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.example.demo1.Controller"))
                .paths(PathSelectors.any())
                .build();
    }
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("Spring Boot中使用Swagger2构建RESTful APIs")
                .description("更多Spring Boot相关文章请关注:https://home.cnblogs.com/u/qianjinyan/")
                .termsOfServiceUrl("https://github.com/JasmineQian/")
                .contact("夏天里的Jasmine")
                .version("1.0")
                .build();
    }
}

  注意 

apis(RequestHandlerSelectors.basePackage后面指定你自己的controller包路径

最终项目部署成功后,在url localhost:port/swagger-ui.html中打开即可
http://10.201.10.53:9999/swagger-ui.html

当然,使用过程中有一些注意点,要不然会执行不成功,此处只做入门,不深究。


密码,比如数据库代码加密的问题,也是引入jar

    <!-- 数据库加密 -->
<dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>2.0.0</version>
</dependency>
</dependencies>


之后计算一下
加盐值之后的密码是多少即可

配置文件中盐值如下

jasypt.encryptor.password=jasmine


写一个test方法计算一下

@RunWith(SpringRunner.class)
@SpringBootTest
public class HomeworkApplicationTests {

    @Autowired
    StringEncryptor stringEncryptor;

    @Test
    public void test() {
    String passwd =stringEncryptor.encrypt("123456");
    System.out.println(passwd);

    }

}

  将输出的密码贴到配置文件中,比如我的mysql密码用 spring.datasource.password=ENC(Oiwkfb4mmDNmnk5mpqT2sg==)

高亮部分是加密后得到的密码,格式要用ENC()包裹起来

猜你喜欢

转载自www.cnblogs.com/qianjinyan/p/6635480.html