- 博客(14)
- 资源 (3)
- 收藏
- 关注
原创 springboot项目创建笔记15 之《参数校验功能》
一、校验框架spring的validator校验框架遵循了JSR-303验证规范在默认情况下springboot会引入hibernate validator机制来支持JSR-303验证规范springboot的validator校验框架有3个特性:1、JSR-303特性:JSR-303是一项标准,只提供规范不提供实现,规定了一些校验注解,如@Null,@NotNull,@Pattern2、hibernate validation特性:hibernate validation是对JSR-303规范的
2020-08-31 23:14:39 282
原创 springboot项目创建笔记14 之《全局异常处理》
一、全局异常处理器1、不用强制写try...catch,由全局异常处理器统一捕获处理2、捕获自定义异常3、Validator参数校验器,参数校验不通过会抛异常,无法通过try...catch语句捕获二、添加自定义异常1、建立包com.example.exception2、添加错误码接口ErrorCode.javapackage com.example.exception;public interface ErrorCode { public String code();
2020-08-31 16:34:08 265
原创 springboot项目创建笔记13 之《接口返回统一格式》
一、对所有Controller的response做统一格式封装我们的接口会返回空、返回字符串、返回对象、返回异常(这个后续讲),所以需要统一返回格式二、方法一在接口文档,规定外层的格式,比如需要返回4个字段:data、sign、repCode、repMsg1、建立包com.example.message2、建立CommonResponse.javapackage com.example.message;import io.swagger.annotations.ApiModel;im
2020-08-31 10:51:13 457
原创 springboot项目创建笔记12 之《使用swagger生成接口文档》
一、介绍swagger通过几个注解的方式,在项目启动后自动化生成接口文档优点:1、自动生成文档2、跨语言性,支持40种语言3、呈现出来的是一份可交互式的API文档,我们可以直接在文档页面尝试API调用,省去了准备复杂的调用参数的过程4、还可以将文档规范导入相关的工具,如SoapUI,这些工具将会为我们自动的创建自动化测试二、pom文件修改<dependency> <groupId>io.springfox</groupId> <...
2020-08-25 23:50:42 234
原创 springboot项目创建笔记11 之《使用lombok简化javabean》
一、安装lombok插件1、eclipse安装lombok插件为啥idea在plugin里搜索就能安装,而eclipse里要手动安装。。。2、下载lombok.jarhttps://projectlombok.org/download3、双击lombok.jar3、重启eclipse二、pom文件引入依赖...
2020-08-22 12:08:29 149
原创 从RSA私钥生成pfx私钥证书
RSA私钥原来是pem明文格式1、将RSA私钥从pem格式转换成key文件openssl rsa -in test_rsa.pem -out test_rsa.key也就是PKCS#8格式转换PKCS#1格式1)PKCS#8开头:-----BEGIN PRIVATE KEY-----2)PKCS#1开头:-----BEGIN RSA PRIVATE KEY-----2、使用私钥key文件生成自签名证书openssl req -new -x509 -days 1095 -key t
2020-08-21 17:08:13 1775
原创 springboot项目创建笔记10 之《提供rest服务》
springboot提供rest服务非常简单,和springmvc一致1、在src/main/java下建立web包2、在web包下添加MyController.javapackage com.example.web;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@RestContro
2020-08-16 21:07:44 154
原创 Java基础之《并发编程3—CAS机制保证原子性》
CAS机制是compare and swap(比较与交换)的简称,用于保证操作的原子性1、过程它包含 3 个参数 CAS(V,E,N),V表示要更新变量的值,E表示预期值,N表示新值。仅当 V值等于E值时,才会将V的值设为N,如果V值和E值不同,则说明已经有其他线程做两个更新,则当前线程则什么都不做。最后,CAS 返回当前V的真实值2、synchronized和CAS机制synchronized是悲观锁,线程独占的,加锁后其他线程处于阻塞状态CAS机制是乐观锁,让线程不断的去尝试比较3、C
2020-08-16 16:13:48 475
原创 Java基础之《并发编程2—Java内存模型的实现》
在JVM内部,Java内存模型把内存分成了两部分:线程栈区和堆区,下图展示了Java内存模型在JVM中的逻辑视图:JVM中运行的每个线程都拥有自己的线程栈,线程栈包含了当前线程执行的方法调用相关信息,我们也把它称作调用栈。随着代码的不断执行,调用栈会不断变化。线程栈还包含了当前方法的所有本地变量信息。一个线程只能读取自己的线程栈,也就是说,线程中的本地变量对其它线程是不可见的。即使两个线程执行的是同一段代码,它们也会各自在自己的线程栈中创建本地变量,因此,每个线程中的本地变量都会有自己的版本。..
2020-08-15 17:04:47 98
原创 Java基础之《spring中bean生命周期》
1、bean实例化前1)BeanNameAware接口2)BeanFactoryAware接口2、bean实例化完成(对象创建)1)ApplicationContextAware接口获取spring上下文,说明bean已经实例化完成(构造方法执行完成)3、bean实例化后的资源的初始化和销毁bean实例化是spring把bean的对象生成了,但是bean中如有资源需要初始化的话,可以使用以下方式以下是在对象加载完,依赖注入(@Autowired、@Value)后执行1)@PostCon
2020-08-13 11:19:09 300
原创 Java web项目创建笔记25 之《使用jdk实现线程池功能》
1、在webapp2_base模块src/main/java下添加包com.study.base.threads2、添加ThreadPool.java这个线程池由自己实现队列、工作线程的执行package com.study.base.threads;import java.util.LinkedList;import org.springframework.beans.factory.InitializingBean;import org.springframework.beans.
2020-08-12 22:05:09 220
原创 k8s删除服务(3)
1、安装kubectl apply -f my-nginx.yaml2、删除kubectl delete -f my-nginx.yaml
2020-08-02 21:57:19 770
原创 k8s删除服务(2)—helm包管理
1、helm list2、helm uninstall kubernetes-dashboard-1596370412
2020-08-02 20:26:05 847
原创 k8s删除服务(1)
1、查看命名空间kubectl get all -n kube-system2、显示NAME READY STATUS RESTARTS AGEpod/coredns-66bff467f8-hlzmv 1/1 Running 1 23dpod/coredns-
2020-08-02 20:08:56 4412
gitflow工作流程.pdf
2020-03-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人