自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 资源 (2)
  • 收藏
  • 关注

转载 centos7 mysql数据库安装和配置

centos7 mysql数据库安装和配置一、系统环境yum update升级以后的系统版本为[root@yl-web yl]# cat /etc/redhat-release CentOS Linux release 7.1.1503 (Core) 二、mysql安装一般网上给出的资料都是#yum install mysql#yum install m

2017-03-28 09:29:39 345

转载 JAVA并发编程学习笔记之CAS操作

CAS操作CAS是单词compare and set的缩写,意思是指在set之前先比较该值有没有变化,只有在没变的情况下才对其赋值。我们常常做这样的操作[java] view plain copy print?if(a==b) {      a++;  }  试想一下如果在做a++之前a的值被改变了怎么办?a++还执行吗?出现该问题的原因是在多线

2017-03-15 13:07:20 431

转载 servlet是单例的 所以需要线程安全 以及如何实现线程安全

Servlet/JSP技术和ASP、PHP等相比,由于其多线程运行而具有很高的执行效率。由于Servlet/JSP默认是以多线程模式执行的,所以,在编写代码时需要非常细致地考虑多线程的安全性问题。然而,很多人编写Servlet/JSP程序时并没有注意到多线程安全性的问题,这往往造成编写的程序在少量用户访问时没有任何问题,而在并发用户上升到一定值时,就会经常出现一些莫明其妙的问题。Servl

2017-03-15 09:41:41 7833 1

转载 Java之CyclicBarrier使用

1、类说明:一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point)。在涉及一组固定大小的线程的程序中,这些线程必须不时地互相等待,此时 CyclicBarrier 很有用。因为该 barrier 在释放等待线程后可以重用,所以称它为循环 的 barrier。2、使用场景:需要所有的子任务都完成时,才执行主任务,这个时候就

2017-03-15 09:13:26 294

转载 Java之CountDownLatch使用

CountDownLatch1、类介绍一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。用给定的计数 初始化 CountDownLatch。由于调用了 countDown() 方法,所以在当前计数到达零之前,await 方法会一直受阻塞。之后,会释放所有等待的线程,await 的所有后续调用都将立即返回。这种现象只出现一次——计数无法被重

2017-03-15 09:07:44 314

转载 正则表达式初步认识

30分钟内让你明白正则表达式是什么,并对它有一些基本的了解,让你可以在自己的程序或网页里使用它。如何使用本教程最重要的是——请给我30分钟,如果你没有使用正则表达式的经验,请不要试图在30秒内入门——除非你是超人 :)别被下面那些复杂的表达式吓倒,只要跟着我一步一步来,你会发现正则表达式其实并没有想像中的那么困难。当然,如果你看完了这篇教程之后,发现自己明白了很多,却又几乎什么都记不得

2017-03-14 16:02:30 452

转载 java自定义线程池--ThreadPoolExecutors

ThreadPoolExecutor类简介在Java线程池中的newCachedThreadPool,newFixedThreadPool,newSingleThreadExecutor,newScheduledThreadPool这四个线程池在底层都是调用了ThreadPoolExecutor()这个构造方法。若Executors这个类无法满足我们的需求的时候,可以自己创建自定义的线程池

2017-03-14 15:59:52 485

转载 sql语句优化

sql语句优化网上关于SQL优化的教程很多,但是比较杂乱。近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充。这篇文章我花费了大量的时间查找资料、修改、排版,希望大家阅读之后,感觉好的话推荐给更多的人,让更多的人看到、纠正以及补充。 1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。

2017-03-13 14:24:58 301

原创 ZK框架学习

ZK框架学习1.架构概况ZK包括一种基于AJAX机制用来实现自动的交互性,一套丰富的基于XUL的组件用以丰富可用性,和一种的标记语言用来简化开发。基于AJAX的机制包括三个部分,描绘如下:ZK 加载器(ZK loader),ZK AU引擎(ZK AU Engine ),和ZK客户端引擎(ZK Client Engine)。基于用户的请求,ZK 加

2017-03-13 13:14:37 2148 2

原创 Spring面试题

*  Spring的优点有什么?1. Spring是分层的架构,你可以选择使用你需要的层而不用管不需要的部分2. Spring是POJO编程,POJO编程使得可持续构建和可测试能力提高3. 依赖注入和IoC使得JDBC操作简单化4. Spring是开源的免费的5. Spring使得对象管理集中化合简单化*  描述一下spring中实现DI(dependency inject

2017-03-13 12:32:49 871

转载 mysql常用函数汇总(分享)

mysql常用函数汇总(分享)一、数学函数ABS(x)   返回x的绝对值BIN(x)   返回x的二进制(OCT返回八进制,HEX返回十六进制)CEILING(x)   返回大于x的最小整数值EXP(x)   返回值e(自然对数的底)的x次方FLOOR(x)   返回小于x的最大整数值GREATEST(x1,x2,...,xn)返回集合中最大的值LEAST(x

2017-03-10 16:32:40 318

转载 mysql sql语句大全【转】

mysql sql语句大全【转】mysql教程■  在DOS命令行启动MYSQL服务:net start mysql■在DOS命令行停止MYSQL服务:net stop mysql■查看被监听的端口:netstat –na | findstr 3306findstr用于查找后面的端口是否存在。 1、说明:创建数据库CREATE DAT

2017-03-10 16:31:40 469

转载 mysql存储过程详解

mysql存储过程详解1.     存储过程简介 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。一个存储过程是一个可编程的函数,它在数据库中创建并保存。它可以有SQL语

2017-03-10 16:30:25 574 1

转载 MySQL 性能优化的最佳 20+ 条经验

MySQL 性能优化的最佳 20+ 条经验今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我 们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过 多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数

2017-03-10 16:27:58 321

转载 数据库索引的概念及创建

转载索引的概念及创建    学习一下索引。索引应该是Oracle的初级内容中比较重要的一部分。因为是否创建索引,对SQL的查询效率会有比较大的影响。当然对于何种索引,索引如何工作的原理,基本上只需要了解就可以了,不需要太过于深入,除非以后要做专门的SQL调优,否则一般的情况下很少会需要设置索引类型的情况。什么是索引:     索引是一种与表有关的数据库结构,是建立在

2017-03-10 16:00:42 450

转载 mysql之index(索引)

mysql之index(索引)来源:http://www.cnblogs.com/duhuo/p/6283396.html1.索引作用在索引列上,除了上面提到的有序查找之外,数据库利用各种各样的快速定位技术,能够大大提高查询效率。特别是当数据量非常大,查询涉及多个表时,使用索引往往能使查询速度加快成千上万倍。例如,有3个未索引的表t1、t2、t3,分别只包含列c1、c2、c3,

2017-03-10 15:33:59 460

转载 mysql之视图

mysql之视图视图     视图是虚拟的表。与包含数据的表不一样,视图只包含使用时动态检索数据的查询。理解视图最好的办法就是来看一下例子:SELECT cust_name , cust_contactFROM customers , orders,orderitemsWHERE customers.cust_id = orders.cust_idAND orde

2017-03-10 14:37:23 336

转载 MySql 存储过程实例(附完整注释)

MySql 存储过程实例(附完整注释)http://www.cnblogs.com/zhuawang/p/4185302.html MySql存储过程简单实例:                                                                                                       /**********

2017-03-10 14:15:28 507

转载 一位资深程序员大牛给予Java初学者的学习建议

这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是我你是如何学习Java的,能不能给点建议? 今天我是打算来点干货,因此咱们就不说一些学习方法和技巧了,直接来谈每个阶段要学习的内容甚至是一些书籍。这一部分的内容,同样适用于一些希望转行到Java的同学。在大家看之前,我要先声明两点。1、由于我本人是Java后端开发出身,因此所推荐的学习内容是Ja

2017-03-10 14:01:52 3624

转载 Mysql存储过程

mysql之存储过程一、存储过程    迄今为止,使用的大多数 SQL语句都是针对一个或多个表的单条语句。并非所有操作都这么简单,经常会有一个完整的操作需要多条语句才能完成。例如,考虑以下的情形。        1、 为了处理订单,需要核对以保证库存中有相应的物品。        2、 如果库存有物品,这些物品需要预定以便不将它们再卖给别的人,并且要减少可用的物品数

2017-03-10 13:54:19 336

转载 mysql之游标

mysql之游标原文转载于:http://www.cnblogs.com/duhuo/p/4651107.html游标        在操作mysql的时候我们知道MySQL检索操作返回一组称为结果集的行。这组返回的行都是与 SQL语句相匹配的行(零行或多行)。使用简单的 SELECT语句,例如,没有办法得到第一行、下一行或前 10行,也不存在每次一行地处理所有行的简单方法(相

2017-03-10 13:15:04 437

转载 SQL习题笔记

这里主要介绍几道题目用以更加深入的了解SQL语句。在工作面试时乃至在考研时,很多时候都会考到SQL语句。如果这篇文章中的所有的题目都搞明白了,那么应付工作面试笔试或者考研笔试将会更加的游刃有余。来源:http://blog.csdn.net/ghuil/article/details/40981627题目01现有关系数据库如下:学生(学号,姓名,性别,专业,奖学金)课程(课

2017-03-10 11:21:12 3118

转载 Java多线程编程中Master-Worker模式的详解

Java多线程编程中,常用的多线程设计模式包括:Future模式、Master-Worker模式、Guarded Suspeionsion模式、不变模式和生产者-消费者模式等。这篇文章主要讲述Master-Worker模式,关于其他多线程设计模式的地址如下:关于其他多线程设计模式的地址如下:关于Future模式的详解: Java多线程编程中Future模式的详解关于Guarded Su

2017-03-10 11:18:29 454 1

转载 Java多线程编程中Future模式的详解<转>

Java多线程编程中Future模式的详解Java多线程编程中,常用的多线程设计模式包括:Future模式、Master-Worker模式、Guarded Suspeionsion模式、不变模式和生产者-消费者模式等。这篇文章主要讲述Future模式,关于其他多线程设计模式的地址如下:关于其他多线程设计模式的地址如下:关于Master-Worker模式的详解: Java多线程编程中

2017-03-09 16:27:05 538

转载 Java并发包中的同步队列SynchronousQueue实现原理

Java并发包中的同步队列SynchronousQueue实现原理作者:一粟介绍Java 6的并发编程包中的SynchronousQueue是一个没有数据缓冲的BlockingQueue,生产者线程对其的插入操作put必须等待消费者的移除操作take,反过来也一样。不像ArrayBlockingQueue或LinkedListBlockingQueue,SynchronousQue

2017-03-09 15:51:14 530

转载 ArrayBlockingQueue

来源:http://blog.csdn.net/hudashi/article/details/7076745ArrayBlockingQueue 一个由数组支持的有界阻塞队列。它的本质是一个基于数组的blocking queue的实现。 它的容纳大小是固定的。此队列按 FIFO(先进先出)原则对元素进行排序。 队列的头部 是在队列中存在时间最长的元素。队列的尾部 是在队列中存

2017-03-09 15:48:00 230

转载 并发队列ConcurrentLinkedQueue和阻塞队列LinkedBlockingQueue用法

并发队列ConcurrentLinkedQueue和阻塞队列LinkedBlockingQueue用法来源:http://www.cnblogs.com/linjiqin/archive/2013/05/30/3108188.html在Java多线程应用中,队列的使用率很高,多数生产消费模型的首选数据结构就是队列(先进先出)。Java提供的线程安全的Queue可以分为阻塞队列和非阻塞队

2017-03-09 15:39:21 288

转载 Java并发编程:进程和线程之由来(转载)

Java多线程基础:进程和线程之由来  在前面,已经介绍了Java的基础知识,现在我们来讨论一点稍微难一点的问题:Java并发编程。当然,Java并发编程涉及到很多方面的内容,不是一朝一夕就能够融会贯通使用的,需要在实践中不断积累。由于并发肯定涉及到多线程,因此在进入并发编程主题之前,我们先来了解一下进程和线程的由来,这对后面对并发编程的理解将会有很大的帮助。  下面是本文的目录大纲:

2017-03-08 15:58:11 255

转载 Java并发编程:如何创建线程?(转载)

Java并发编程:如何创建线程?  在前面一篇文章中已经讲述了在进程和线程的由来,今天就来讲一下在Java中如何创建线程,让线程去执行一个子任务。下面先讲述一下Java中的应用程序和进程相关的概念知识,然后再阐述如何创建线程以及如何创建进程。下面是本文的目录大纲:  一.Java中关于应用程序和进程相关的概念  二.Java中如何创建线程  三.Java中如何创建进程  若有不

2017-03-08 15:57:20 282

转载 Java并发编程:Thread类的使用(转载)

Java并发编程:Thread类的使用  在前面2篇文章分别讲到了线程和进程的由来、以及如何在Java中怎么创建线程和进程。今天我们来学习一下Thread类,在学习Thread类之前,先介绍与线程相关知识:线程的几种状态、上下文切换,然后接着介绍Thread类中的方法的具体使用。  以下是本文的目录大纲:  一.线程的状态  二.上下文切换  三.Thread类中的方法  

2017-03-08 15:56:47 266

转载 Java并发编程:synchronized(转载)

Java并发编程:synchronized  虽然多线程编程极大地提高了效率,但是也会带来一定的隐患。比如说两个线程同时往一个数据库表中插入不重复的数据,就可能会导致数据库中插入了相同的数据。今天我们就来一起讨论下线程安全问题,以及Java中提供了什么机制来解决线程安全问题。  以下是本文的目录大纲:  一.什么时候会出现线程安全问题?  二.如何解决线程安全问题?  三.sy

2017-03-08 15:55:57 284

转载 Java并发编程:Lock(转载)

Java并发编程:Lock  在上一篇文章中我们讲到了如何使用关键字synchronized来实现同步访问。本文我们继续来探讨这个问题,从Java 5之后,在java.util.concurrent.locks包下提供了另外一种方式来实现同步访问,那就是Lock。  也许有朋友会问,既然都可以通过synchronized来实现同步访问了,那么为什么还需要提供Lock?这个问题将在下面进行阐

2017-03-08 15:54:49 263

转载 Java并发编程:volatile关键字解析(转载)

Java并发编程:volatile关键字解析   volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。  volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于volatile关键字是与Java的内存模

2017-03-08 15:53:49 225

转载 Java并发编程:深入剖析ThreadLocal

Java并发编程:深入剖析ThreadLocal  想必很多朋友对ThreadLocal并不陌生,今天我们就来一起探讨下ThreadLocal的使用方法和实现原理。首先,本文先谈一下对ThreadLocal的理解,然后根据ThreadLocal类的源码分析了其实现原理和使用需要注意的地方,最后给出了两个应用场景。  以下是本文目录大纲:  一.对ThreadLocal的理解  二.

2017-03-08 15:52:37 291

转载 Java并发编程:同步容器

Java并发编程:同步容器  为了方便编写出线程安全的程序,Java里面提供了一些线程安全类和并发工具,比如:同步容器、并发容器、阻塞队列、Synchronizer(比如CountDownLatch)。今天我们就来讨论下同步容器。  以下是本文的目录大纲:  一.为什么会出现同步容器?  二.Java中的同步容器类  三.同步容器的缺陷  若有不正之处请多多谅解,并欢迎批评

2017-03-08 15:51:28 299

转载 Java ConcurrentModificationException异常原因和解决方法

Java ConcurrentModificationException异常原因和解决方法  在前面一篇文章中提到,对Vector、ArrayList在迭代的时候如果同时对其进行修改就会抛出java.util.ConcurrentModificationException异常。下面我们就来讨论以下这个异常出现的原因以及解决办法。  以下是本文目录大纲:  一.ConcurrentMod

2017-03-08 15:47:49 262

转载 Java并发编程:阻塞队列

Java并发编程:阻塞队列  在前面几篇文章中,我们讨论了同步容器(Hashtable、Vector),也讨论了并发容器(ConcurrentHashMap、CopyOnWriteArrayList),这些工具都为我们编写多线程程序提供了很大的方便。今天我们来讨论另外一类容器:阻塞队列。  在前面我们接触的队列都是非阻塞队列,比如PriorityQueue、LinkedList(Linke

2017-03-08 15:46:31 261

转载 Java并发编程:线程池的使用

Java并发编程:线程池的使用  在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题:  如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。  那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务?  

2017-03-08 15:45:12 295

转载 Java并发编程:CountDownLatch、CyclicBarrier和Semaphore

Java并发编程:CountDownLatch、CyclicBarrier和Semaphore  在java 1.5中,提供了一些非常有用的辅助类来帮助我们进行并发编程,比如CountDownLatch,CyclicBarrier和Semaphore,今天我们就来学习一下这三个辅助类的用法。  以下是本文目录大纲:  一.CountDownLatch用法  二.CyclicBarr

2017-03-08 15:43:53 273

转载 Java并发编程:Callable、Future和FutureTask

Java并发编程:Callable、Future和FutureTask  在前面的文章中我们讲述了创建线程的2种方式,一种是直接继承Thread,另外一种就是实现Runnable接口。  这2种方式都有一个缺陷就是:在执行完任务之后无法获取执行结果。  如果需要获取执行结果,就必须通过共享变量或者使用线程通信的方式来达到效果,这样使用起来就比较麻烦。  而自从Java 1.5开始,

2017-03-08 15:42:52 487

zkde 中文api

ZK,中文,api

2017-03-21

ZK树的递归实现

ZK树的递归实现

2017-03-14

空空如也

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

TA关注的人

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