起因:今天在跟同事做项目连调时候,在https响应时,发生了SSL异常错误,很奇怪的是其他人都正常,于是google一把找到答案一.错误原因当Java客户端请求实现https协议的服务时,出现异常:’unable to find valid certification path to requested target’是因为服务期端的证书没有被认证,需要做的是把服务端证书导入到Java keystore。Java在访问SSL加密的网站时...
7年前 (2018-02-06)
阅读(6641)
赞一个 (1 )
链接直达
一、使用情景某些时候,我们需要将类转换为xml字符串或者文件进行发送或操作,jdk本身便提供了这样的工具。JAXBContext。二、使用代码中注释的很清楚了,就不解释了。主要有两个类:PersonBO是要转换的载体类。Main是测试类。PersonBOpackage com.example.demo;
import javax.xml.bind.annotation.*;
import java....
7年前 (2018-02-04)
阅读(2612)
赞一个 (2 )
链接直达
一、引入web的starter确保classpath中含有compile("org.springframework.boot:spring-boot-starter-web")二、配置restTemplate的Bean@Bean
public RestTemplate restTemplate() {
RestTemplateBuild...
7年前 (2018-02-04)
阅读(8328)
赞一个 (0 )
链接直达
一、需求项目中使用java8的LocalDateTime进行日期参数的接收,前后台使用unix时间戳进行日期传输,需要在controller的方法中实现自动将unix时间戳转换为LocalDateTime。localhost:8080?time=1512900770public void test(@RequestParam LocalDateTime time) {
&n...
7年前 (2018-02-04)
阅读(5458)
赞一个 (0 )
链接直达
项目中不同的接口需要返回不同的信息,而信息一般通过不同的对象实例去承载。例如有接口A和接口B,A需要返回不包含用户地址的用户信息, 而B需要返回包含用户地址的用户信息,其它信息和A的返回信息一致。这个时候应该建立两个不同的用户类,一个包含address,一个不包含,这样做显然是麻烦的,那么JsonView就可以帮你很优雅的解决这个问题。接下来就直接开始撸代码了。二、User信息载体类public class ...
7年前 (2018-02-04)
阅读(2351)
赞一个 (0 )
链接直达
一、环境准备在项目中添加以下依赖gradleorg.hibernate:hibernate-validator:5.3.5.Final1maven<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-valid...
7年前 (2018-02-04)
阅读(2948)
赞一个 (1 )
链接直达
可以参考我的github项目kingboy-springboot-web,包含详细的演示和说明以及其它相关技术。一、Swagger为什么会出现?在以前,我们项目开发的流程往往是这样的:产品把前后端人员叫过来开会:我们的需求是这样的,balabala。然后前端拿着原型页面开始画前台UI,后端看着需求文档开始写接口。后端写完一个接口,肯定需要测试一下写的对不对,那么经常有这样一个过程:- 打开一个模拟http请求工具,例如post...
7年前 (2018-02-04)
阅读(2727)
赞一个 (4 )
链接直达
很多小伙伴在学习Java的时候,总是感觉Java多线程在实际的业务中很少使用,以至于不会花太多的时间去学习,技术债不断累积!等到了一定程度的时候对于与Java多线程相关的东西就很难理解,今天需要探讨的东西也是一样的和Java多线程相关的!做好准备,马上开车!学过Java多线程的应该都知道什么是锁,没学过的也不用担心,Java中的锁可以简单的理解为多线程情况下访问临界资源的一种线程同步机制。在学习或者使用Java的过程中进程会遇到各种各样...
7年前 (2018-01-27)
阅读(1925)
赞一个 (0 )
链接直达
在java中垃圾回收是系统自动完成的,了解它对优化应用程序有很大的帮助。那么我们就从下面几个方面来了解垃圾回收机制:哪些对象需要回收?什么时候回收?怎么去回收?判断对象可以回收的方法:引用计数算法给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1;当引用失效时,计数器值就减1;任何时刻计数器为0的对象就是不可能再被使用的。优点:简单,高效,现在的objective-c用的就是这种算法。缺点:很难处理循环引用,相互引用的两...
7年前 (2018-01-27)
阅读(1909)
赞一个 (1 )
链接直达
漫画:什么是微服务?单体架构的痛点缺点一:项目过于臃肿当大大小小的功能模块都集中在同一项目的时候,整个项目必然会变得臃肿,让开发者难以维护。缺点二:资源无法隔离就像刚刚小灰的经历一样,整个单体系统的各个功能模块都依赖于同样的数据库、内存等资源,一旦某个功能模块对资源使用不当,整个系统都会被拖垮。缺点三:无法灵活扩展当系统的访问量越来越大的时候,单体系统固然可以进行水平扩展,部署在多台机器上组成集群:但是这种扩展并非灵活的扩展。比如我们现...
7年前 (2018-01-27)
阅读(2158)
赞一个 (0 )
链接直达
前言Java NIO 由以下几个核心部分组成:1 、Buffer2、Channel3、Selector传统的IO操作面向数据流,意味着每次从流中读一个或多个字节,直至完成,数据没有被缓存在任何地方。NIO操作面向缓冲区,数据从Channel读取到Buffer缓冲区,随后在Buffer中处理数据。本文着重介绍Channel和Buffer的概念以及在文件读写方面的应用和内部实现原理。BufferA buffer is a linear, f...
7年前 (2018-01-27)
阅读(2092)
赞一个 (0 )
链接直达
定制Banner修改Banner我们在启动Spring Boot项目的时候,在控制台会默认输出一个启动图案,如下: 当然,这个图案如果你需要的话是可以自己修改的,修改方式很简单:1、在src/main/resources下新建一个banner.txt文档 2、通过http://patorjk.com/software/taag网站生成需要的字符,将字符拷贝到步骤1所创建的txt文档中,比如我这里为chengxumia...
7年前 (2018-01-24)
阅读(2902)
赞一个 (1 )
链接直达