自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 收藏
  • 关注

原创 jvm - 查看运行时的情况

1.查看应用程序分配的内存情况ps -ef | grep  java应用程序名称-Xms 和 -Xmx 分别代表分配JVM的最小内存和最大内存。2.查看gc情况(1) jstat -gc 12538 5000-- 说明:12538 进程号   5000打印间隔时长(单位:ms)(2) jstat -gcutil 29727 1s-- 说明:12538 进程号   1s打印间隔时长显示内容说明:S0...

2018-02-26 20:38:36 972

原创 jvm - 内存结构,GC

1.jvm的生命周期(1) JVM在它的生存周期中有一个明确的任务,那就是运行Java程序。因此当Java程序启动的时候,就产生JVM的一个实例;当程序运行结束的时候,该实例也跟着消失了(2) Java虚拟机总是开始于一个main()方法,这个方法必须是公有、返回void、直接受一个字符串数组。     在程序执行时,你必须给Java虚拟机指明这个包含main()方法的类名。(可以在pom文件打包...

2018-02-26 20:37:08 255

原创 elastic-job

1.原理弹性分布式:1) 任务上线时会自动将服务器信息注册到注册中心,下线会自动更新服务器状态2) 每次分片都会按服务器ip排序注册中心:1) 注册中心在定义的命名空间下,创建作业名称节点,用于区分不同作业,作业一旦创建则不能修改作业名称,修改名称视为新的作业作业名称节点包含:config节点:作业配置信息instances节点:作业运行实例信息sharding节点:作业分片信息servers节点...

2018-02-26 20:33:20 475

转载 kafka windows单机安装测试

初步了解一下一下kafka的基本用法。win7 64 bitjdk1.71)下载kafka_2.10-0.8.2.1.tgz并解压(整合scala)2)修改配置文件(可选)config/zookeeper.properties  dataDir=/zookeeper这么写建到d盘根目录  dataDir=zookeeper

2016-06-14 14:38:58 1617

转载 Java实现与ZooKeeper的连接

Java实现新建一个类实现接口Watcher. 是指:This interface specifies the public interface an event handler class must implement. A ZooKeeper client will get various events from the ZooKeepr server it connects

2016-06-13 16:19:41 2749

原创 zookeeper windows的安装

1.安装和配置   a.官网下载:http://mirrors.cnnic.cn/apache/zookeeper/   b.在conf目录下修改zoo_sample.cfg的配置文件,重命名为zoo.cfg   其内容如下:   # The number of milliseconds of each tick  心跳间隔 毫秒每次   tickTime=2000 

2016-06-12 16:52:14 409

转载 Linux中tail与cat的区别

一、tail功能:显示指定文件的后若干行。语法:tail [+ / - num ] [参数] 文件tail命令中各个选项的含义为:+num 从第num行以后开始显示。- num 从距文件尾num行处开始显示。如果省略num参数,系统默认值为10。 l 以文本行为num的计数单位。与参数选项+num或- num选项同时使用时,num表示要显示的文本行行数。c 以字节为

2016-06-07 13:54:26 5006

原创 linux常用命令

linux文本编辑器(vi命令)*********************************************************vi filename -- 进入文件(创建文件)两种工作模式编辑模式:在此模式下,输入可见字符时和Windows下输入字符的功能相同。按Esc键可切换至命令模式。命令模式:在此模式下,输入可见字符对应的是命令。按i或者i

2016-06-07 13:30:53 273

原创 简单的netty demo

1.下载netty-3.10.5.Final.jar,下载地址:netty-3.9.2.Final-dist.tar.bz22.建立Java项目,导入jar包3.编写服务器端程序package netty_test.test;import java.net.InetSocketAddress;import java.util.concurrent.Executors;import

2016-06-03 18:03:26 1021

转载 maven install Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.1.1:war (default-wa

maven打包成war时,报错:Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.1.1:war (default-war) on project web_nanchang: Error assembling WAR: webxml attribute is required 原因:找不到web.xml,但是项

2016-06-01 08:43:18 529

转载 maven POM.xml 标签详解

span style="padding:0px; margin:0px">project xmlns="http://maven.apache.org/POM/4.0.0"         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"     xsi:schemaLocation="http://maven.apache.org

2016-05-31 15:39:04 428

原创 tomcat启动(设置catalina_home和不设置的区别)

用于启动Tomcat的批处理文件startup.bat,在这个文件中,1.首先判断CATALINA_HOME环境变量是否为空:         (1)如果为空,就将当前目录设为CATALINA_HOME的值。         (12)接着判断当前目录下是否存在bin\catalina.bat,如果文件不存在,将当前目录的父目录设为CATALINA_HOME的值。根据笔者机器

2016-05-31 13:44:01 10647

转载 Quartz任务调度--集群

一.Quartz的工作原理     对于一个调度作业,通常有两个因素构成:调度的内容【What】:即调度具体做什么工作,例如是发邮件、系统备份;调度的时间【when】:什么时候工 作,这个又包含两个内容,开始时间【调度第一次执行的时间】,调度时间【在调度开始之后,在什么时间的时候,执行定义的调度工作】。   Quartz框架提供了Job接口和Trigger接口来分别对应调度的内

2016-05-31 11:39:27 701

原创 mysql key duplicate

MySQLinsert 操作/主键冲突:Duplicate问题在insert数据时在一个UNIQUE索引或PRIMARY KEY中出现重复值的问题:可以在INSERT语句末尾指定了ON DUPLICATE KEY UPDATE,则在出现重复值的行执行UPDATE;如果不会导致唯一值列重复的问题,则插入新行。创建测试表,准备数据DROP TABLE IF EXISTS `test

2016-05-26 17:24:52 687

转载 序列和索引

序列序列是一种用来生成唯一数字值的数据库对象,是一种高效率获得唯一键值的途径。序列的值由Oracle程序按递增或递减顺序自动生成,通常用来自动生成表的主键值。序列是独立的数据库对象,并不依附于表,一个序列可以为一个表作主键值,也可以为多个表提供主键值。 创建序列CREATE  SEQUENCE  sequence_name[START  WI

2016-05-23 17:55:31 943

原创 redirect和forward的区别

forword:是服务器请求支援,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪里来的,所以地址栏是不变的。redirect:是服务器根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,所以地址栏的URL改变成跳转的URL。本质区别解释一一句话,转发是服务器行为,重定向是客户端行为。为什

2016-05-23 17:29:54 234

原创 session的使用

Session=========================================================================================1.简介------------------------------------------------------------Session代表服务器与浏览器的一次会话过程.数据保存在服务器

2016-05-23 16:58:03 296

原创 cookies的使用

1、什么是cookieCookie实际上是一小段的文本信息。客户端请求服务器,如果服务器需要记录该用户状态,就使用response向客户端浏览器颁发一个Cookie。客户端浏览器会把Cookie保存起来。当浏览器再请求该网站时,浏览器把请求的网址连同该Cookie一同提交给服务器。服务器检查该Cookie,以此来辨认用户状态。服务器还可以根据需要修改Cookie的内容。cook

2016-05-23 14:38:04 475

原创 数据库事务隔离级别

数据并发的问题    一个数据库可能拥有多个访问客户端,这些客户端都可以并发方式访问数据库。数据库中的相同数据可能同时被多个事务访问,如果没有采取必要的隔离措施,就会导致各种并发问题,破坏数据的完整性。并发出现的数据问题:脏读,不可重复读,幻读脏读:A事务读取B事务没有提交的更新数据脏读场景:时间转账事务A取款事务B

2016-05-20 16:57:18 358

原创 数据库事务的四个特性

事务:就是用户定义的一个数据库操作的序列,这些操作要么一起执行,要么一起不执行,是一个不可分割的工作单位。数据库事务的四大特性:(简称ACID)(1)原子性(Atomicity)原子性:事务中包含的程序作为数据库的逻辑工作单元,它所做的随数据的修改操作要么全部执行,要么完全不执行,这种特性成为原子性。(2)一致性(Consistency)一致性:是在一个事务执行之前和执行之后数

2016-05-20 15:03:57 525

转载 SpringMVC深度探险(二) —— SpringMVC概览

对于任何事物的研究,总是由表及里、由浅入深地进行。在本系列的第二篇文章中,我们将通过不同的观察视角,对SpringMVC做一些概要性的分析,帮助大家了解SpringMVC的基本构成要素、SpringMVC的发展历程以及SpringMVC的设计原则。 SpringMVC的构成要素 了解一个框架的首要任务就是搞清楚这个框架的基本构成要素。当然,这里所说的构成要素实际上还可以被挖掘为两个

2016-05-20 13:31:07 325

转载 servlet的执行原理与生命周期

一、先从servlet容器说起:大家最为熟悉的servlet容器就是Tomcat ,Servlet 容器是如何管理 Servlet?        先看一下tomcat的容器模型:从上图可以看出 Tomcat 的容器分为四个等级,真正管理Servlet 的容器是Context 容器,一个 Context 对应一个 Web 工程从上图可以看出 Tomcat 的容器分为

2016-05-19 22:32:51 277

转载 SpringMVC原理

1.SpringMVC 的原理图1. 客户端发出一个http请求给Web服务器,web服务器对http请求进行解析,如果匹配DispatcherServlet的请求映射路径(在web.xml中指定),web容器将请求转交 给DispatcherServlet2. 由DispatcherServlet控制器查询一个或多个HandlerMapping,找到处理请求的Contro

2016-05-18 18:57:10 245

转载 Servlet

1.什么是Servlet2.Servlet有什么作用3.Servlet的生命周期4.Servlet怎么处理一个请求5.Servlet与JSP有什么区别6.Servlet里的cookie技术7.Servlet里的过滤器8.Servlet里的监听器 一.什么是Servlet?Servlet是一个Java编写的程序,此程序应用最多的是H

2016-05-18 16:55:38 292

转载 单例模式

第一种(懒汉,线程不安全): Java代码  public class Singleton {      private static Singleton instance;      private Singleton (){}        public static Singleton getInstance() {      if (

2016-05-17 18:50:02 176

转载 HashMap、HashSet和Hashtable的区别

hashmap实现原理浅析看了下JAVA里面有HashMap、Hashtable、HashSet三种hash集合的实现源码,这里总结下,理解错误的地方还望指正HashMap和Hashtable的区别HashSet和HashMap、Hashtable的区别HashMap和Hashtable的实现原理HashMap的简化实现MyHashMap HashM

2016-05-17 18:16:00 422

原创 HashMap的实现原理

HashMap是一个Entry数组实现的,本质上是一个数组,数组中的每一个位置上存放的都是Entry实体。1.HashMap的基本构成:transient Entry[] table = (Entry[]) EMPTY_TABLE;    // HashMap的基本构成Entry数组对应的Entry类的结构://HashMap的内部类,jdk8中使用的是Node类static

2016-05-17 17:57:27 260

转载 spring mvc 使用kaptcha生成验证码

By default, Kaptcha is very easy to setup and use and the default output produces a captcha that should be fairly hard to bust. The captcha's it produces by default look very similar to the one abov

2016-04-04 10:30:49 337

转载 kaptcha验证码的简单使用及配置

kaptcha是一个简单易用的验证码生成工具,而且支持中文,你还可以配置其很多属性。用法:1、首先到http://code.google.com/p/kaptcha/downloads/list把压缩文件下下来,然后把里面的jar文件加到自己的web项目中。2在web.xml中配置servlet,代码如下:Xml代码  servlet>       

2016-03-31 16:32:09 515

转载 日志级别的选择:Debug、Info、Warn、Error还是Fatal

软件中总免不了要使用诸如 Log4net, Log4j, Tracer 等东东来写日志,不管用什么,这些东东大多是大同小异的,一般都提供了这样5个日志级别:    × Debug    × Info    × Warn    × Error    × Fatal        一个等级比一个高,但是在具体开发中,关于应该如何选择适应的等级,却没有找到好的文章进行说明。记录一

2016-03-30 09:31:56 493

转载 Spring AOP注解通过@Autowired,@Resource,@Qualifier,@PostConstruct,@PreDestroy注入属性的配置文件详解

本文介绍了使用Spring注解注入属性的方法。使用注解以前,注入属性通过类以及配置文件来实现。现在,注入属性可以通过引入@Autowired注解,或者@Resource,@Qualifier,@PostConstruct,@PreDestroy等注解来实现。1.1. 使用注解以前我们是怎样注入属性的类的实现:1public class Use

2016-03-29 23:44:14 461

转载 详解mysql int类型的长度值问题

我的朋友海滨问我mysql在建表的时候int类型后的长度代表什么? 是该列允许存储值的最大宽度吗? 为什么我设置成int(1), 也一样能存10,100,1000呢. 当时我虽然知道int(1),这个长度1并不代表允许存储的宽度,但却没有一个合理的解释. 或者说对这个长度也没有真正的研究过到底代表什么, 平时都用int(11), 也不知道为什么要11位. 所以我在网上查阅了一些资料,

2016-03-29 21:34:27 517

转载 BlockingQueue

在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题。通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便利。本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景。认识BlockingQueue阻塞队列,顾名思义,首先它是一个队列,而一个队列在数据结构中所起的作

2016-03-28 10:16:04 204

转载 java并发库 Lock 公平锁和非公平锁

jdk1.5并发包中ReentrantLock的创建可以指定构造函数的boolean类型来得到公平锁或非公平锁,关于两者区别,java并发编程实践里面有解释公平锁:   Threads acquire a fair lock in the order in which they requested it非公平锁:a nonfair lock permits barging: threa

2016-03-28 10:08:29 258

转载 ThreadPoolExecutor使用

线程池0.常用构造方法-----------------------new ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit,    BlockingQueue workQueue, RejectedExecutionHandler hand

2016-03-24 22:08:30 216

转载 对象转换利器之Dozer

在Java的世界中,经常会涉及到需要在2个对象中进行转换,比如说: 调用SOAP Web服务,需要把自己的Domain对象转换为Soap服务的Jaxb对象请求,在分层级SOA架构中,2个层级之间Domain对象的转换,在分布式系统中,每个模块使用自己的领域对象,防止自己的业务被其他模块的domain对象影响通常情况下,程序员们会自己弄一个Transformer层,来做对象之间的转换

2016-03-24 22:07:11 340

原创 mysql数据库中date datetime timestamp time的区别

1.datetime类型用在需要同时包含日期和时间信息的值时。MySQL检索并且以'YYYY-MM-DD HH:MM:SS'格式显示datetime值,支持的范围是'1000-01-01 00:00:00'到'9999-12-31 23:59:59'2.date类型用在你仅需要日期值时,没有时间部分。MySQL检索并且以'YYYY-MM-DD'格式显示date值,支持的范围是'1000

2016-03-24 21:18:01 1110

原创 my97时间控件的使用

1.下载My97DatePicker.rar2.写一个简单的html页面来实现//其他的css等文件不需要引入3.实现指定格式的设置uploadTime:input class="Wdate" type="text" onfocus="WdatePicker({skin:'whyGreen',dateFmt:'yyyy-MM-dd HH:mm:ss',minDate:

2016-03-22 17:52:17 515

转载 Apache kafka 工作原理介绍

消息队列消息队列技术是分布式应用间交换信息的一种技术。消息队列可驻留在内存或磁盘上, 队列存储消息直到它们被应用程序读走。通过消息队列,应用程序可独立地执行–它们不需要知道彼此的位置、或在继续执行前不需要等待接收程序接收此消息。在分布式计算环境中,为了集成分布式应用,开发者需要对异构网络环境下的分布式应用提供有效的通信手段。为了管理需要共享的信息,对应用提供公共的信息交换机制是重要的。常用

2016-03-22 15:34:05 253

原创 html src文件引入

1.相对路径 (1).如果源文件跟所引用的js文件在同一目录中,直接写上js的文件名就可以了 例如: (2).如果源文件所引用的js文件是在当前目录下的子目录中。直接写上js文件所在的文件夹的名字跟js文件名 例如: (3).如果源文件所引用的js文件是在上一级的目录中。使用../返回到上一级目录在写上js文件名 例如: (4).如果想引用上两级目录,可以..\..\

2016-03-18 09:36:00 10080

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除