
java ee
文章平均质量分 87
sg19911227
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
一篇一看就懂的Https的实现过程梳理
结合最近做支付遇到的一些问题,以及查阅的一些资料,整理了一下https的安全实现;希望多家多多支持!1.Https的产生背景:我们最开始用的较多的是HTTP协议用于数据传输,但是http数据是明文传输,这对于比如支付、转账等场景是不安全的,很容易被第三方窃取并篡改参数信息,造成无法挽回的损失.2.Https与http的不同Https与http最的不同是把下层的协议由 TCP/IP 换成了 SSL/TLS(TLS可以理解为SSL的前身),而SSL/TLS 是信息安全领域中的权威标准,.原创 2021-03-10 15:56:08 · 896 阅读 · 0 评论 -
记一次线上系统JVM频繁Gc排查总结
记一次线上T豆系统JVM频繁Gc排查总结问题描述 在一个伸手不见五指的夜晚,突然发现系统CPU占用率飙升,业务jvm cpu最高占用超过300%,而且频率大概在1分钟之内,第一反应系统jvm出现问题了,于是有了下面的分析及解决过程;分析过程及解决 CPU飙升分析过程 命令:top首先执行top命令查询占用较高的jvm进程,确认pid:125277接着需要查询具体是jvm的哪些子进程导致的问题(也就是排查是不是存在代码如死循环的问题)命令: top -Hp pi...原创 2021-02-19 14:08:14 · 1322 阅读 · 0 评论 -
让你真正知道Tcp的三次握手和四次挥手
在了解TCP之后我们需要先了解TCP Header的相关存储信息,这样我们能更好理解其过程,而不是死记硬背流程(网上一堆流程 问:吃饭了了吗?答:吃了。。。。。。)1.TCP Header结构:Header我们看到其实Header中的Data是分段的,这也需要seq和ack的帮助来保证服务端收到数据的连续性;上图中Sequence number 和 Acknowledgement number是实现握手机制的保障2.名词解释:SYN:代表请求创建连接,所以在三次握手中前两次要S原创 2020-07-29 18:51:34 · 379 阅读 · 0 评论 -
串起同步/异步、阻塞/非阻塞 IO模型
我们需要明确一点,我们在聊IO的时候,主要是聊用户进程和系统内核进程之间的read\white操作。关键词:1.阻塞:是指用户进程向内核进程提交请求,之后等待内核准备数据,线程一直处于阻塞状态,也就是"傻等";非阻塞:是指用户进程向内核进程提交请求,之后看内核进程是否已经准备好数据,如果准备好则进行读取到用户进程,如果没有准备好,则不进行等待,直接返回结果,但是会不断去尝试发起请求获取结果;2.同步:是一种用户空间与内核空间的IO发起方式。同步IO是指用户空间的线程是主动发起IO请求的一方,原创 2020-07-29 18:30:12 · 203 阅读 · 0 评论 -
多线程创建方式比较
阿里手册不推荐Executors的方式直接创建线程池推荐使用ThreadPoolExecutor的方式下面对比两种方式https://www.cnblogs.com/zedosu/p/6665306.html转载 2019-03-07 14:11:58 · 137 阅读 · 0 评论 -
记一次傻呼呼日期问题
场景描述:数据库存储时间字段用timestamp类型,java接收Date类型,但是当我java获取时间的时候却只是"年-月-日 00:00:00",也就是时分秒都是00,检查发现是由于date包导入的是java.sql.Date原因:java.util.Date和java.sql.Date 区别应该是:java.util.Date 类型写到数据库后存储的值可以到秒,java.sql.D...原创 2019-03-07 11:41:43 · 127 阅读 · 0 评论 -
Idea编译出现源发行版 1.8 需要目标发行版 1.8
问题:java编译时错误信息:Information:java: javacTask: 源发行版 1.8 需要目标发行版 1.8Information:2017/1/24 11:27 - Compilation completed with 1 error and 0 warnings in 5s 873msInformation:java: Errors occurred whi...原创 2018-08-08 09:28:33 · 3600 阅读 · 0 评论 -
根据参数获取枚举中的值
public class EnumGetValueUtil { private static Logger logger = LoggerFactory.getLogger(EnumGetValueUtil.class); /** * * @param clazz * @param getTypeCodeMethodName 传入的typeCode的get方法 * @param type...原创 2018-06-01 12:00:27 · 3626 阅读 · 0 评论 -
安装git配置用户名和邮箱
初次安装git需要配置用户名和邮箱,否则git会提示:please tell me who you are.你需要运行命令来配置你的用户名和邮箱:$ git config --global user.name "superGG1990"$ git config --global user.email "superGG1990@163.com"注意:(引号内请输入你自己设置的名字,和你自己的邮箱)此...转载 2018-05-08 16:16:22 · 963 阅读 · 0 评论 -
Lambda表达式集合操作
1、sort排序根据某个对象字段属性来排序对象@Testpublic void whenSortingEntitiesByName_thenCorrectlySorted() {List<Human> humans = Lists.newArrayList(new Human("Sarah", 10), new Human("Jack", 12)); humans.sort((Huma...原创 2018-05-21 16:48:29 · 2664 阅读 · 0 评论 -
Spring AOP事物总结
一、事物隔离级别MySQL InnoDB事务的隔离级别有四级,默认是“可重复读”(REPEATABLE READ)。· 未提交读(READUNCOMMITTED)。另一个事务修改了数据,但尚未提交,而本事务中的SELECT会读到这些未被提交的数据(脏读)。· 提交读(READCOMMITTED)。本事务读取到的是最新的数据(其他事务提交后的)。问题是,在同一个事务里,前...原创 2018-05-08 10:13:27 · 427 阅读 · 0 评论 -
Nexus安装及搭建配置
1、Nexus安装(Linux)1.1下载Nexus,地址:http://www.sonatype.org/nexus/go1.2 解压安装包并启动 tar -zxvf nexus-x.xx.x-unix.tar.gz 进入bin目录,执行 ./nexux start 命令启动启动起来后,通过浏览器访问http://ip:8081就可以访问了。界面如下所示:1.3Repositorie...原创 2018-05-03 17:10:21 · 15648 阅读 · 1 评论 -
DozerBeanMapper对象之间相同属性名赋值
在业务逻辑很复杂的时候,一般都是牵涉到很广,这最直白的表现就是牵连诸多表,然后数据却不是一个对象中的属性或字段,这个时候我们为了方便数据传输一般都会将多个对象中的属性封装到一个VO中,使用Hibernate的人应该知道,查询出来一般都是一个或多个对象,如果依次通过setter方法来赋值的话,效率太低!这时候我们的DozerBeanMapper就体现出来了价值,所以我便将其封装了起来!好啦,直接上代...转载 2018-03-26 11:29:42 · 791 阅读 · 0 评论 -
List集合中对象利用retainAll()和removeAll()的获取交集和差集
1、首先针对集合中的对象要重写hashcode()和equals()方法;这是因为retainAll()和removeAll()会去利用对象的这两个方法来比较对象是否是同一个对象;2、举个例子public class persone{ private int id; private String sex; private String name; //set get方法 ...原创 2018-03-21 11:14:12 · 5686 阅读 · 0 评论 -
LVS+keepalived+mycat负载均衡及自动转发
1、系统环境LVS(Linux Virtual Server)版本:ipvsadm-1.24 LVS,LB),RS)<span times="" new="" roman";="" mso-fareast-font-family:宋体;mso-fareast-theme-font:minor-fareast;mso-hansi-font-family:="" 宋体;mso原创 2017-02-07 16:42:03 · 1037 阅读 · 0 评论 -
Spring boot简述(待续)
一、Spring boot:Spring boot出现之后,得益于“习惯优于配置”这个理念,再也没有繁琐的配置、难以集成的内容(大多数流行第三方技术都被集成在内)。 那么背后实现的核心原理到底是什么呢? 其实是spring 4.x提供的基于条件配置bean的能力。1、没有配置、没有web.xml、没有构建说明,甚至没有应用服务器;只要你搞定后台代码就ok;2、Sprin原创 2017-02-07 16:38:42 · 371 阅读 · 0 评论 -
使用JAXB工具类实现标准rss到bean转换
一、 URL url = new URL(urlStr);//urlStr为打开地址 InputStream is = url.openStream();//转为流 RssVo vo = JaxbUtils.unmarshal(RssVo.class, is);二 、实现的JaxbUtils类public static T unmarshal(Class clz, I原创 2016-06-06 16:03:37 · 435 阅读 · 0 评论 -
java生成验证码
个人认为效果还可以,并且比较简单生成的验证码的例子!!!!java代码:package com.trs.nfdaily.imgcode;import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt.image.BufferedImage;import java.io原创 2016-04-07 18:17:57 · 303 阅读 · 0 评论 -
一个java定时器功能
本人刚刚大学毕业在一家软件公司上班,最近开发一些小的功能模块:1、手机发送激活码功能,当用户一次点击五次时做某事:代码:package com.csair.sso.count;import java.util.Calendar;import java.util.Date;import java.util.Map;import java.util.Timer;impo原创 2015-08-16 13:59:06 · 498 阅读 · 0 评论