- 博客(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
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人