
java
熬夜是小狗
希望与行业大牛多多交流
展开
-
http和socket之长连接和短连接区别
TCP/IP TCP/IP是个协议组,可分为三个层次:网络层、传输层和应用层。 在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。 在传输层中有TCP协议与UDP协议。 在应用层有:TCP包括FTP、HTTP、TELNET、SMTP等协议 UDP包括DNS、TFTP等协议 短连接 连接->传输数据->关闭连接转载 2017-11-29 10:34:49 · 295 阅读 · 0 评论 -
JVM调优总结 -Xms -Xmx -Xmn -Xss
堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典型设置:java -Xmx3550m -Xms355转载 2017-12-19 15:57:42 · 301 阅读 · 0 评论 -
深入理解JVM—JVM内存模型
我们知道,计算机CPU和内存的交互是最频繁的,内存是我们的高速缓存区,用户磁盘和CPU的交互,而CPU运转速度越来越快,磁盘远远跟不上CPU的读写速度,才设计了内存,用户缓冲用户IO等待导致CPU的等待成本,但是随着CPU的发展,内存的读写速度也远远跟不上CPU的读写速度,因此,为了解决这一纠纷,CPU厂商在每颗CPU上加入了高速缓存,用来缓解这种症状,因此,现在CPU同内存交互就变成了下面的样子转载 2017-12-19 16:36:23 · 279 阅读 · 0 评论 -
StackOverflowError和OutOfMemoryError产生原因汇总
1、线程请求的栈深度大于虚拟机所允许的深度,将抛出StackOverflowError 异常 —| 递归可能造成StackOverflowError —| 不断创建线程可能造成StackOverflowError 2、栈的深度(大小类似于弹夹深度)可以自动扩展,扩展时无法申请到足够的内存时会抛出OutOfMemoryError异常3、虚拟机栈一样,本地方法栈区域也会抛出St原创 2017-12-19 16:53:20 · 1673 阅读 · 0 评论 -
DIEA连接数据库
1、view->Tool Windows->Database2、点击➕号->Data Source->选择数据库(我的是MySQL)3、填入连接信息4、注意最下方的黄色警告 缺少MySQL驱动,点击下载就好了原创 2018-01-18 13:02:21 · 990 阅读 · 0 评论 -
Java使用 VelocityEngine模板引擎快速生成HTML等各种代码
一、简介Velocity 是一个基于 Java 的模板引擎框架,提供的模板语言可以使用在 Java 中定义的对象和变量上 说白了就类似于jsp,java中定义对应的对象,模板载入后,可以对象信息动态加载入模板二、使用方式1、引入pom(老生常谈)<dependency> <groupId>org.apache.velocity<...原创 2018-03-28 11:41:10 · 8345 阅读 · 1 评论 -
Velocity模板引擎实战:动态生成HTML、Word、Excel等报表
上篇文章介绍了Velocity的基本用法,文章链接:Java使用 VelocityEngine模板引擎快速生成HTML等各种代码 本篇文章主要针对Velocity的实际应用先来一个工具类package utils; import java.io.File; import java.io.IOException; import java.io.PrintWriter;...原创 2018-03-28 14:34:40 · 6723 阅读 · 3 评论 -
Mac终端神器zsh
先上一张图1.背景介绍在unix 内核的操作系统中,当然现在衍生出好多分支,linux ,OS X 都算.shell 就算和上面这些系统内核指令打交道的一座桥梁,我们通过键盘输入一种自己容易记忆识别的符号标识(shell 命令)然后 shell 解析这种命令再反馈给内核去执行一系列操作.zsh 和 shell 有什么关系呢?其实 zsh 也是一种 shell ,但是并不是我...转载 2018-10-11 12:21:36 · 2760 阅读 · 0 评论 -
Swagger2 导出api文档(AsciiDocs、Markdown)
1.引入pom(用阿里镜像,否则jar下不下来)严格按照我的版本号,否则jar包版本会出错<dependencies> <dependency> <groupId>io.github.swagger2markup</groupId> <artifactId>swagger2mark...原创 2018-10-12 13:40:07 · 8029 阅读 · 3 评论 -
Java 并发工具包 java.util.concurrent 用户指南
原文链接Java 并发工具包 java.util.concurrent 用户指南转载 2018-10-08 18:10:50 · 412 阅读 · 0 评论 -
《分布式配置管理平台XXL-CONF》
分布式配置管理平台XXL-CONF一、简介1.1 概述XXL-CONF 是一个分布式配置管理平台,拥有"强一致性、毫秒级动态推送、多环境、多语言、配置监听、权限控制、版本回滚"等特性。现已开放源代码,开箱即用。1.2 特性1、简单: 部署简单、接入灵活方便,一分钟上手;2、在线管理: 提供配置中心, 通过Web界面在线操作配置数据,直观高效;3、多环境支持:单个配置中心...原创 2018-09-30 16:08:21 · 1199 阅读 · 0 评论 -
IDEA 配合 gradle 时候无法正确编译资源文件resources的问题
问题说明使用的是 gradle 导入项目,没想到发现编译之后测试的时候出错了,报的错误为file cannot be opened because it does not exist也就是文件找不到,到 build 目录一看,感情是 resources 目录下的配置文件都没用拷贝过来,只有一堆的 class package。Google 一圈发现这是 IDEA 的 bug,不过官...原创 2018-10-16 13:28:23 · 12031 阅读 · 2 评论 -
git“fatal: loose object”错误解决办法汇总
描述不知道怎么回事,最近连续出现了两三次下面的错误,每次git pull的时候就会出现,网络搜索了一下,类似的问题非常普遍,各有各的解决之道,随记之。错误信息:error: object file .git/objects/40/bda4e3b79c3d7bf598df31d9e68470f97a3f79 is emptyfatal: loose object 40bda4e3b7...转载 2018-10-22 21:47:03 · 8926 阅读 · 3 评论 -
disruptor调优方法
Basic Tuning Options 基本的调优方法Using the above approach will work functionally in the widest set of deployment scenarios. However, if you able to make certain assumptions about the hardware and softwar...原创 2019-01-15 20:08:09 · 2018 阅读 · 2 评论 -
js和jQuery格式化时间
js和JQuery格式化时间js用法jQuery用法原创 2017-12-27 16:32:57 · 4272 阅读 · 0 评论 -
Java套接字
套接字(socket)为两台计算机之间的通信提供了一种机制,在 James Gosling 注意到 Java 语言之前,套接字就早已赫赫有名。该语言只是让您不必了解底层操作系统的细节就能有效地使用套接字。多数着重讨论 Java 编码的书或者未涵盖这个主题,或者给读者留下很大的想象空间。本教程将告诉您开始在代码中有效地使用套接字时,您真正需要知道哪些知识。我们将专门讨论以下问题:什么是套接字它位于您转载 2018-01-02 14:21:47 · 744 阅读 · 0 评论 -
java中lambda(函数式编程)一行解决foreach循环
首先给大家推荐《精通lambda表达式:java多核编程》这本书详细介绍了lambda表达式从入门到理解、应用下面介绍用以前的循环方式进行对比,来更加清晰地java函数式编程中foreach的用法一、以前我们使用的for循环/** * for循环 */ @Test public void forTest() { // 实例化一个L原创 2017-11-21 18:53:36 · 18824 阅读 · 0 评论 -
深入理解Java闭包概念
闭包又称词法闭包闭包最早定义为一种包含环境成分>和控制成分>的实体.解释一:闭包是引用了自由变量的函数,这个被引用的变量将和这个函数一同存在。解释二:闭包是函数和相关引用环境组成的实体。注:自由变量>:除了局部变量的其他变量 简单理解:闭包能够将一个方法作为一个变量去存储,这个方法有能力去访问所在类的自由变量。Java转载 2017-11-21 16:28:40 · 1614 阅读 · 0 评论 -
javax.validation结合spring最佳实践
javax.validation结合spring最佳实践 傻瓜式使用spring进行服务端校验,从此逼格上升其中包括注解的类型、使用的配置、封装的基本类,傻瓜式教程,按照我的思路一步一步最终便能得到你想要的效果原创 2017-11-15 15:44:34 · 6305 阅读 · 1 评论 -
Spring中的@Value读取并注入配置信息
Spring中的@Value读取并注入配置信息原创 2017-12-12 15:55:13 · 768 阅读 · 0 评论 -
使用stream将list转成map
jdk1.8 lambda表达式一行便可以将list转成mapimport java.util.Arrays;import java.util.List;import java.util.Map;import java.util.stream.Collectors;import org.junit.Test;/** * Created by Jackielee on 2017原创 2017-11-24 11:12:14 · 145282 阅读 · 6 评论 -
定义常量方式(类,接口,枚举)
定义常量方便统一管理常量,是一种专业的表现,个人推荐使用第三种枚举定义常量第一种:静态变量的方式package vip.lizhilong.lambda;/** * Created by Jackielee on 2017 * @author: lizhilong */public class GenderContents { public static Integer原创 2017-11-24 12:09:35 · 3532 阅读 · 0 评论 -
Spring声明式事务@Transactional传播行为
在@Transactional注解中,可以propagation属性用来配置事务传播,支持7种不同的传播机制:REQUIRED:业务方法需要在一个事务中运行,如果方法运行时,已处在一个事务中,那么就加入该事务,否则自己创建一个新的事务。这是spring默认的传播行为。NOT_SUPPORTED:声明方法不需要事务。如果方法没有关联到一个事务,容器不会为他开启事务,如果方转载 2017-12-21 12:52:09 · 1008 阅读 · 0 评论 -
40个Java多线程问题总结
前言Java多线程分类中写了21篇多线程的文章,21篇文章的内容很多,个人认为,学习,内容越多、越杂的知识,越需要进行深刻的总结,这样才能记忆深刻,将知识变成自己的。这篇文章主要是对多线程的问题进行总结的,因此罗列了40个多线程的问题。这些多线程的问题,有些来源于各大网站、有些来源于自己的思考。可能有些问题网上有、可能有些问题对应的答案也有、也可能有些各位网友也都看过,但是本文写作转载 2017-12-21 12:58:15 · 297 阅读 · 0 评论 -
javax.validation使用最佳实践
之前讲过validation结合spring用法,其中包含注解的含义,再次就不一一说明,链接地址:javax.validation结合spring最佳实践,今天说一说validation的另一种用法,这种用法更加简单便捷校验工具类:package com.alibaba.banff.web.util;import java.util.HashMap;import java.util.Map;原创 2017-12-04 11:57:57 · 26767 阅读 · 5 评论 -
java自定义注解
注解按照运行机制分类、注解按照使用的方式和用途分类元注解、自定义注解的创建、注解的使用、注解的获取原创 2017-12-05 10:44:04 · 544 阅读 · 0 评论 -
lambda函数是变成对集合进行排序的几种方式
lambda函数是变成对集合进行排序的几种方式原创 2017-12-14 19:58:53 · 1305 阅读 · 0 评论 -
Tomcat配置参数优化
摘要: Tomcat在使用的过程中会遇到很多报错,有些是程序的报错,但还有一部分是tomcat本身的报错,我们可以通过优化tomcat的初始配置来提高tomcat的性能。Tomcat的优化主要体现在两方面:内存、并发连接数。 1、内存优化: 优化内存,主要是在bin/catalina.bat/sh 配置文...Tomcat在使用的过程中会遇到很多报错,有些是程序的报错,但还转载 2017-11-27 16:26:14 · 430 阅读 · 0 评论 -
ThreadPoolExecutor线程池参数设置
JDK1.5中引入了强大的concurrent包,其中最常用的莫过了线程池的实现ThreadPoolExecutor,它给我们带来了极大的方便,但同时,对于该线程池不恰当的设置也可能使其效率并不能达到预期的效果,甚至仅相当于或低于单线程的效率。ThreadPoolExecutor类可设置的参数主要有:corePoolSize核心线程数,核心线程会一直存活转载 2017-11-27 16:29:41 · 522 阅读 · 0 评论 -
springAOP纯实现
没有冗余代码 简单几步实现aop原创 2017-12-06 18:05:10 · 326 阅读 · 0 评论 -
自动化部署工具激活
本次服务长期稳定提供给各位同学使用哦!服务器地址:https://jrebel.qekang.com/{GUID}在线GUID地址:在线生成GUID如果失效刷新GUID替换就可以!打开jrebel 激活面板 . 选择Connect to online licensing service ....转载 2019-08-29 13:48:56 · 607 阅读 · 0 评论