ConcurrentLinkedQueue、AraayBlockingQueue、LinkedBlockingQueue 区别及使用场景

三者区别与联系:联系,三者 都是线程安全的。区别,就是 并发 和 阻塞,前者为并发队列,因为采用cas算法,所以能够高并发的处理;后2者采用锁机制,所以是阻塞的。注意点就是前者由于采用cas算法,虽然能高并发,但cas的特点造成操作的危险性,怎么危险性可以去查一下cas算法(但一些多消费性的队列还是用的它,原因看下边使用场景中的说明)后2者区别:联系,第2和第3都是阻塞队列,都是采用锁,都有阻塞容器...
阅读(30) 评论(0)

【Java并发之】BlockingQueue

一、什么是BlockingQueueBlockingQueue即阻塞队列,从阻塞这个词可以看出,在某些情况下对阻塞队列的访问可能会造成阻塞。被阻塞的情况主要有如下两种:1. 当队列满了的时候进行入队列操作 2. 当队列空了的时候进行出队列操作因此,当一个线程试图对一个已经满了的队列进行入队列操作时,它将会被阻塞,除非有另一个线程做了出队列操作;同样,当一个线程试图对一个空队列进行出队列操作时,它将会...
阅读(57) 评论(0)

彻底理解ThreadLocal

ThreadLocal是什么早在JDK 1.2的版本中就提供Java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。 当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副本,而不会影响其它线程所对...
阅读(1500) 评论(2)

解决Spring定时计划任务重复执行两次(实例被构造两次)问题的方法

今天在做一个项目的时候用到了spring的定时计划任务。这是Spring的特色功能,可以根据设置在特定的时间或间隔时间做特定的事。 下面给出一个例子:package net.csdn.blog.chaijunkukn; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Locale...
阅读(94) 评论(0)

Write operations are not allowed in read-only mode (FlushMode.MANUAL): Turn your Session into FlushM

当我写数据的时候出现上面异常,查啊查,应该是保存数据时采用了默认的只读模式。网上的方法配置事务:1: <property name="sessi...
阅读(86) 评论(0)

Tomcat启动时卡在“INFO: Deploying web application directory ”

今天在linux上的tomcat部署一个网站时,在刚启动tomcat的时候提示启动成功,然后也能访问成功.可是第二次启动时虽然没有报错,但无法访问tomcat,查看了catalina.out日志,发现tomcat卡在了INFO: Deploying web application directory ……后来看了一篇博文解决了问题.在 $JAVA_HOME/jre/lib/security/java...
阅读(274) 评论(0)

Java父类取得子类传递的泛型参数Class类型

import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; import org.junit.Test; abstract class BaseDao { public void getType() { //Class clazz = (Class) (...
阅读(344) 评论(0)

node.js&pm2搭建node生产环境

本文以 centos 6.5 x64 为例node.js 下载地址 https://nodejs.org/en/download/stable/建议采用稳定编译过的版本,source code稍麻烦,编译过的直接可用,安装超级简单,红色的是centos X64可用地址。https://nodejs.org/dist/v5.7.1/node-v5.7.1-linux-x64.tar.xz1、下载安装...
阅读(453) 评论(0)

RBAC 权限管理

RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联。简单地说,一个用户拥有若干角色,每一个角色拥有若干权限。这样,就构造成“用户-角色-权限”的授权模型。在这种模型中,用户与角色之间,角色与权限之间,一般者是多对多的关系。(如下图)角色是什么?可以理解为一定数量的权限的集合,权限的载体。例如:一个论坛系统,“超级管理员”、“版主”都是角...
阅读(174) 评论(1)

Java 异常分类及统一处理

一、异常分类java异常分为”检查”和”非检查”两类,”检查”二字的意思是,代码编译时,编译器会去Check一下有没有进行异常处理(捕获或向上抛),对于归类为需要检查的异常,若没处理,编译就过不去。初学的时候,常常想为啥异常要这样分类处理? 后来明白了些,异常不过两种:主观和客观,一个大多数情况下可以避免,一个大多数情况下无法避免。像NullPointerException这类异常,大多跟程序员素质...
阅读(258) 评论(0)

用java语言实现事件委托模式

事件委托模式是一个比较常用的设计模式,但是Java语言本身没有对其做一定的封装,因此实现起来有一定难度(了解原理后很简单),相比之下.NET就容易了很多。身为一个Java爱好者,怎么向这样一个小困难低头,但是上网搜索,却没发现相关解决方案,得,自己来做一个封装吧。其实结合例子更好,那么我就用一个小例子来引出这种设计模式。一个班级,有两类学生,A类:不学习,玩,但是玩的东西不一样,有的是做游戏,与的是...
阅读(259) 评论(0)

Java实现LRU缓存

1.CacheCache对于代码系统的加速与优化具有极大的作用,对于码农来说是一个很熟悉的概念。可以说,你在内存中new 了一个一段空间(比方说数组,list)存放一些冗余的结果数据,并利用这些数据完成了以空间换时间的优化目的,你就已经使用了cache。 有服务级的缓存框架,如memcache,redis等。其实,很多时候,我们在自己同一个服务内,或者单个进程内也需要缓存,例如,lucene就对搜...
阅读(356) 评论(1)

Hibernate 缓存概述

一、Hibernate缓存概述Hibernate中提供两个级别的缓存,一级缓存和二级缓存。1.一级缓存是Session级别的缓存,它属于事物范围的缓存,一级缓存有hibernate进行管理。2.二级缓存是sessionFactory级别的缓存,它属于进程范围的缓存,二级缓存又可分为”内置缓存”和”外置缓存”,内置缓存:是hibernate在创建sessionFactory时会加载.hbn.xml文件...
阅读(520) 评论(0)

浏览器新标签操作源页面元素

有一个这样的功能:点击页面中的链接,打开一个新的窗口(新标签),这个时候需要在新窗口的页面中操作源页面的元素或者调用里面的JS函数。刚开始看到这个需求的时候,我以为是做不了的,感觉浏览器不会给这种权限的,事实证明,我还是太嫩了~ 其实这个功能实现起来很简单,把新打开的窗口当成是一个内嵌的 iframe 就可以了,众所周知,iframe 子窗口可以随意操作父级窗口里的元素,好了,废话说完了,直接上代码...
阅读(3226) 评论(0)

nginx提示:500 Internal Server Error错误

今天发现网站无法上传资源和发布文章,通过浏览器查看服务器的返回信息 500 Internal Server Error刚开始我以为是应用服务器或者是程序异常,检查了下各自的日志,连请求记录都无,程序代码里也没抛出过该类型的异常,所以可以从服务器或者Nginx中找原因了。1、是否磁盘空间不足?使用 df -k 查看硬盘空间是否满了。清理硬盘空间就可以解决500错误。nginx如果开启了access l...
阅读(6079) 评论(0)

利用ServletContextListener 获取spring上下文

返回值说明 success: 当有结果时{ "msg": "success", "info": "ok", "status": "200", "data": data in json }...
阅读(4854) 评论(0)

Spring 整合 Quartz 实现动态定时任务

最近项目中需要用到定时任务的功能,虽然Spring 也自带了一个轻量级的定时任务实现,但感觉不够灵活,功能也不够强大。在考虑之后,决定整合更为专业的Quartz来实现定时任务功能。普通定时任务首先,当然是添加依赖的jar文件,我的项目是maven管理的,以下的我项目的依赖: org.springframe...
阅读(26270) 评论(16)

ScrollTo:平滑滚动到页面指定位置,源码下载

ScrollTo是一款基于jQuery的滚动插件,当点击页面的链接时,可以平滑地滚动到页面指定的位置。适用在一些页面内容比较多,页面长度有好几屏的场合,本文以DEMO为示例讲解该插件的应用。 以该网站为例子:http://download.tqcto.com/detail/82点击以上三个按钮可以定位到具体页面位置。使用方法: 1、准备jQuery库和scrollTo.js插件。<script t...
阅读(2678) 评论(0)

七牛使用总结:图片流量优化压缩策略

图片流量优化压缩策略我们通常都希望使用七牛提供的服务对自己的图片进行压缩,这样可以在加载图片的时候减少下载流量,下面介绍一些常见的对图片进行压缩的方法:本例中用到的测试图片是:http://7xkr3o.com1.z0.glb.clouddn.com/testdemo.jpg大小:1.7 MB 分辨率:width: 790,height: 26821.使用我们的imageView2或者imageMo...
阅读(4599) 评论(1)

java中去掉html标签

使用正则表达式删除HTML标签。 import java.util.regex.Matcher; import java.util.regex.Pattern; public class HTMLSpirit{ public static String delHTMLTag(String htmlStr){ String regEx_script="...
阅读(3159) 评论(0)
135条 共7页1 2 3 4 5 ... 下一页 尾页
    编程技术学习交流群 :154514123
    微信
    个人资料
    • 访问:462677次
    • 积分:7258
    • 等级:
    • 排名:第3036名
    • 原创:303篇
    • 转载:34篇
    • 译文:2篇
    • 评论:93条
    最新评论