自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) )

这两天看了一下深入浅出JVM这本书,推荐给高级的java程序员去看,对你了解JAVA的底层和运行机制有比较大的帮助。废话不想讲了.入主题:先了解具体的概念:JAVA的JVM的内存可分为3个区:堆(heap)、栈(stack)和方法区(method)堆区:1.存储的全部是对象,每个对象都包含一个与之对应的class的信息。(class的目的是得到操作指令)2.jvm只

2017-04-09 11:37:04 234

转载 HDFS-HA的配置-----自动Failover

1、概述在手动FailOver的基础上,自动Failover增加了两个东西:一个是ZooKeeper集群,一个是ZKFailoverController(简称:ZKFC)ZK集群:作为一个高可靠系统,能够为一小部分协同数据提供监控,将数据的更改随时反应给客户端。HDFS的HA依赖zk提供的两个特性:一个是错误监测,一个是活动节点选举    Failure detection

2017-04-03 22:53:39 370

转载 HA功能中ZKFC对NN状态的控制

FC是要和NN一一对应的,两个NN就要部署两个FC。它负责监控NN的状态,并及时的把状态信息写入ZK。它通过一个独立线程周期性的调用NN上的一个特定接口来获取NN的健康状态。FC也有选择谁作为Active NN的权利,因为最多只有两个节点,目前选择策略还比较简单(先到先得,轮换)。ZKFC是Hadoop中通过ZK实现FC功能的一个实用工具。ZKFC的主类是org.apache.hadoop

2017-04-03 22:53:03 266

转载 redis incr incrby decr decrby命令

incr、incrby、decr、decrby命令的作用和用法redis中incr、incrby、decr、decrby属于string数据结构,它们是原子性递增或递减操作。incr递增1并返回递增后的结果;incrby根据指定值做递增或递减操作并返回递增或递减后的结果(incrby递增或递减取决于传入值的正负);decr递减1并返回递减后的结果;decrby根据指定值做递增或递减

2017-03-30 23:59:26 2853

转载 spring+ActiveMQ+JMS+线程池实现简单的分布式,多线程,多任务的异步任务处理系统

前言:随着系统的业务功能不断增强,传统的单机、单任务,单线程的运行模式已经逐渐的被淘汰,取而代之的是分布式,多任务,多线程,当然,现在开源的这方面的框架也非常的多,大概的思想也都类似,下面就结合我这一年多的工作心得,分享一个简单易实现的分布式,多任务,多线程的异步任务处理系统的基本实现。1.系统部署图该系统主要由3部分构成,任务生产者集群,消息中间件集群,任务消费者集群,下

2017-03-30 23:56:58 979

原创 zookeeper安装

1、修改本机的主机名为hadoopserver2,并在hosts中添加域名映射修改操作系统的/etc/hosts 文件中添加:192.168.137.101 hadoopserver22、解压zookeeper-3.4.6到指定目录 tar -zxvf zookeeper-3.4.6.tar.gz3、创建数据和日志目录 cd /home/

2017-03-19 00:25:58 216

转载 Java反射机制详解

1反射机制是什么反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。2反射机制能做什么反射机制主要提供了以下功能: 在运行时判断任意一个对象所属的类;在运行时构造任意一个类的对象;在运行时判断

2017-03-14 20:12:03 199

原创 java初始化顺序与反射

public class MyTest {public static void main(String[] args) {//1---------//IoUtil.fun1();//2---------//new IoUtil();try {Class class1 = Class.forName("org.wzq.note1.IoUtil");Io

2017-03-14 20:10:07 180

原创 java io的编码问题

1、JAVA读取文件,避免中文乱码。 /**  * 读取文件内容  *   * @param filePathAndName  *            String 如 c:\\1.txt 绝对路径  * @return boolean  */ public static String readFile(String filePathAndName) { 

2017-03-05 12:22:37 182

原创 一个可以作为代理服务器或者转发的java类

项目中用到,这里把它给简化和通用了,突出基本思路,具体可以基于这个类来修改。基于java容器和servlet。 package com.xxx.first; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream;

2017-03-04 20:24:09 732

转载 HashMap的实现原理

1.    HashMap概述:   HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 2.    HashMap的数据结构:   在java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本

2016-12-28 15:21:52 150

转载 简单工厂模式和工厂方法模式

在面向对象编程中, 最通常的方法是一个new操作符产生一个对象实例,new操作符就是用来构造对象实例的。但是在一些情况下, new操作符直接生成对象会带来一些问题。举例来说, 许多类型对象的创造需要一系列的步骤: 你可能需要计算或取得对象的初始设置; 选择生成哪个子对象实例; 或在生成你需要的对象之前必须先生成一些辅助功能的对象。 在这些情况,新对象的建立就是一个 “过程”,不仅是一个操作,像一部

2016-12-14 20:05:12 177

原创 socket

import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.ServerSocket;import java.net.Socket;public class Server {

2016-12-13 21:19:49 162

转载 Jms两种message传输方式Topic和Queue的比较

Jms规范里的两种message传输方式Topic和Queue,两者的对比如下表():   TopicQueue概要Publish Subscribe messaging 发布订阅消息Point-to-Point 点对点有无状态topic数据默认不落地,是无状态的。Queue数据默认

2016-12-13 00:39:26 555

转载 http请求中GET、POST、PUT、DELETE的区别

Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE。URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE就对应着对这个资源的查,改,增,删4个操作。到这里,大家应该有个大概的了解了,GET一般用于获取/查询资源信息,而POST一般用于更新资源信息。  1

2016-12-11 15:57:16 445

原创 http协议中的get和post

先看一个post方式登录的例子:请求头Host: www.xxx.comUser-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:37.0) Gecko/20100101 Firefox/37.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=

2016-12-11 15:29:57 41680

原创 java webservice soap消息请求例子

接口返回来的xml字符串jkdata.xml                                                                                                                                                 

2016-12-11 15:28:53 525

原创 对象序列化为何要定义serialVersionUID

在很多应用中,需要对某些对象进行序列化,让它们离开内存空间,入住物理硬盘,以便长期保存。比如最常见的是Web服务器中的Session对象,当有10万用户并发访问,就有可能出现10万个Session对象,内存可能吃不消,于是Web容器就会把一些seesion先序列化到内存,等要用了,再还原到对象中,说白了,就是能将一个2进制文件变成内存中的对象。在JAVA中,要实现这种机制,只要实现Serializ

2016-12-11 13:16:58 216

转载 dubbo 入门教程 基于zookeeper

摘要: Dubbo 是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring框架无缝集成。从上午发布的安装zookeeper 遇到的第一个错误开始 一直在搞dubbo 中午吃了饭 睡了会觉 。中间错误一个又一个 慢慢的都解决了。小有成就,哈哈。算这个星期天没有白费吧。 学习的过程值得留恋。分享一下吧只是之前

2016-12-09 21:41:03 175

原创 spring bean初始化时机

在每个Spring IoC容器中一个bean定义只有一个对象实例(共享) 默认情况下会在容器启动时初始化bean(单例的都会被初始化) 而scrope="prototype" 多例 默认不启动 我们可以指定Bean节点的lazy-init=“true”来延迟初始化bean这时候,只有第一次获取bean会才初始化bean如:  id="

2016-12-06 20:37:58 987

原创 拦截器

拦截器,在AOP(Aspect-Oriented Programming)中用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作。拦截是AOP的一种实现策略。    在Webwork的中文文档的解释为——拦截器是动态拦截Action调用的对象。它提供了一种机制可以使开发者可以定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行。同时也是提供了一种

2016-12-06 20:35:52 162

原创 监听器

1: 监听器的定义:监听器实际上是一个类,这个类实现了特定的接口,然后将这个类在 web.xml 文件中进行描述,这样服务器在启动的时候就可以实例化这个类,启动监听器。当范围对象的状态发生变化的时候,服务器自动调用监听器对象中的方法。例如统计用户在线人数。web监听器是Servlet规范中定义的一种特殊类,用于监听ServletContext,HttpSession

2016-12-06 20:16:12 239

原创 string的问题

public class StringDemo { /**  * @param args  */ public static void main(String[] args) {  String s1 = new String("abc");//这里会创建两个对象,两个对象内容都是abc。注意:s1是引用,不是对象。  /**   * 首先,查看string poo

2016-12-06 19:43:18 213

原创 servlet生命周期

第一次访问的时候调用init,然后service第二次之后一直调用service当服务器重启时调用destroy,注意是“重启”时,"关闭"的时候不会销毁!!重启或启动后,第一次访问,同样调用init,然后service以次类推只有第一次访问的时候才会始终化,从第二次开始不再初始化,哪怕请求来自不同的客户端。也就是说,服务器的一次启动之后只可能有一个

2016-12-06 19:39:15 174

原创 过滤器

1.过滤器Servlet中的过滤器Filter是实现了javax.servlet.Filter接口的服务器端程序,主要的用途是过滤字符编码、做一些业务逻辑判断等。其工作原理是,只要你在web.xml文件配置好要拦截的客户端请求,它都会帮你拦截到请求,此时你就可以对请求或响应(Request、Response)统一设置编码,简化操作;同时还可进行逻辑判断,如用户是否已经登陆、有没有权限访问该

2016-12-06 19:38:13 244

原创 java线程常用方法及概念总结

1、sleep()使当前线程(即调用该方法的线程)暂停执行一段时间,让其他线程有机会继续执行,但它并不释放对象锁。也就是说如果有synchronized同步快,其他线程仍然不能访问共享数据。注意该方法要捕捉异常。例如有两个线程同时执行(没有synchronized)一个线程优先级为MAX_PRIORITY,另一个为MIN_PRIORITY,如果没有Sleep()方法,只有高优先级的

2016-12-04 19:26:08 205

原创 java的锁池和等待池wait notify notifyall

锁池:某个线程中调用了对象锁的notify()方法之后,争夺执行权,进入锁池。等待池:某个线程中调用了对象锁的wait()方法之后,该线程主动放弃执行权并等待唤醒,进入待待池。public class ThreadTest{ int count=0; Object obj = new Object(); public static void main(S

2016-12-04 19:16:14 1284

原创 java基本数据类型

类型与所占字节:boolean 布尔型              1/8 byte 字节类型                1char 字符型                  2  一个字符能存储一个中文汉字short 短整型                 2int 整数类型                 4float 浮点类型(单精度)     4long 长整

2016-12-03 20:58:22 151

原创 wait()和sleep()

对于sleep()方法,我们首先要知道该方法是属于Thread类中的。而wait()方法,则是属于Object类中的。sleep()方法导致了程序暂停执行指定的时间,让出cpu该其他线程,但是他的监控状态依然保持者,当指定的时间到了又会自动恢复运行状态。在调用sleep()方法的过程中,线程不会释放对象锁。而当调用wait()方法的时候,线程会放弃对象锁,进入等待此对象的等

2016-12-03 18:09:47 252

原创 this

this关键字,关于它的解释,可以概括为:哪一个对象在用这段代码,this就代表谁。例如,“人”这个类,张三说,“我”的“名字”,这个“我”字就相当于“this”。 public class ThisDemo {  public static void main(String[] args) {  ThisPerson p1 = new This

2016-12-03 18:02:06 146

原创 wait()和notify()入门例子

wait()和notify()一系列的方法,是属于对象的,不是属于线程的。它们用在线程同步时,synchronized语句块中。我们都知道,在synchronized语句块中,同一个对象,一个线程在执行完这一块代码之前,另一个线程,如果传进来的是同一个object,是不能进入这个语句块的。也就是说,同一个对象是不能同时被两个线程用来进入synchronized中的。这就是线程同步。废话

2016-12-03 17:59:26 252

原创 java初始化顺序

public class Father { int a=1; static int b=2; { System.out.println("father-a=="+a); System.out.println("father-b=="+b); } static{ //System.out.println("a=="+a); System.out.println("fathe

2016-12-03 17:52:03 134

原创 java线程同步入门例子

使用同一个对象锁+synchronized实现线程同步class RunnableCase2 implements Runnable{public void run() {synchronized (this) {try {System.out.println(Thread.currentThread().getId()+"-start");Thread.sleep(500

2016-12-03 17:41:05 195

原创 java io总结

一、两种类型的流InputStream和OutputStream:两者都为抽象类,在没有处理流的情况下,每次只能从数据源读取一个字节和向数据源写出一个字节,俗称字节流。Reader和Writer:两者同样为抽象类,在没有处理流的情况下,每次只能从数据源读取一个字符(2个字节)和向数据源写出一个字符,俗称字符流。注意:1. 流对象实例后,必

2016-11-30 19:48:40 165

原创 java io 字符流与字节流结构

Java中的流分为两种:1:字符流   输出    java.io.Writer(implement java.lang.Appendable,java.io.Console,java.io.Flushable)        其子类有:            java.io.BufferedWriter            java.io.CharArray

2016-11-28 22:30:39 224

空空如也

空空如也

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

TA关注的人

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