12 2016 档案

摘要:转载请注明出处:http://blog.csdn.net/ns_code/article/details/17512983 CyclicBarrier(又叫障碍器)同样是Java 5中加入的新特性,使用时需要导入java.util.concurrent.CylicBarrier。它适用于这样一种情况 阅读全文
posted @ 2016-12-22 11:59 文洁丫头 阅读(283) 评论(0) 推荐(0) 编辑
摘要:阻塞队列 阻塞队列是Java 5并发新特性中的内容,阻塞队列的接口是java.util.concurrent.BlockingQueue,它有多个实现类:ArrayBlockingQueue、DelayQueue、LinkedBlockingQueue、PriorityBlockingQueue、S 阅读全文
posted @ 2016-12-22 11:47 文洁丫头 阅读(415) 评论(0) 推荐(0) 编辑
摘要:转载请注明出处:http://blog.csdn.net/ns_code/article/details/17465497 Executor框架简介 在Java 5之后,并发编程引入了一堆新的启动、调度和管理线程的API。Executor框架便是Java 5中引入的,其内部使用了线程池机制,它在ja 阅读全文
posted @ 2016-12-22 10:48 文洁丫头 阅读(254) 评论(0) 推荐(0) 编辑
摘要:转载请注明出处:http://blog.csdn.net/ns_code/article/details/17377197 主内存与工作内存 Java内存模型的主要目标是定义程序中各个变量的访问规则,即在虚拟机中将变量存储到内存和从内存中取出变量这样的底层细节。此处的变量主要是指共享变量,存在竞争问 阅读全文
posted @ 2016-12-22 10:47 文洁丫头 阅读(277) 评论(0) 推荐(0) 编辑
摘要:转载请注明出处:http://blog.csdn.net/ns_code/article/details/17348313 happen—before规则介绍 Java语言中有一个“先行发生”(happen—before)的规则,它是Java内存模型中定义的两项操作之间的偏序关系,如果操作A先行发生 阅读全文
posted @ 2016-12-22 10:38 文洁丫头 阅读(5122) 评论(0) 推荐(0) 编辑
摘要:1、volatile变量是一种稍弱的同步机制在访问volatile变量时不会执行加锁操作,因此也就不会使执行线程阻塞,因此volatile变量是一种比synchronized关键字更轻量级的同步机制。 2、从内存可见性的角度看,写入volatile变量相当于退出同步代码块,而读取volatile变量 阅读全文
posted @ 2016-12-22 10:23 文洁丫头 阅读(292) 评论(0) 推荐(0) 编辑
摘要:转载请注明出处: volatile用处说明 在JDK1.2之前,Java的内存模型实现总是从主存(即共享内存)读取变量,是不需要进行特别的注意的。而随着JVM的成熟和优化,现在在多线程环境下volatile关键字的使用变得非常重要。 在当前的Java内存模型下,线程可以把变量保存在本地内存(比如机器 阅读全文
posted @ 2016-12-22 10:20 文洁丫头 阅读(614) 评论(0) 推荐(0) 编辑
摘要:转载请注明出处:http://blog.csdn.net/ns_code/article/details/17288243 加锁(synchronized同步)的功能不仅仅局限于互斥行为,同时还存在另外一个重要的方面:内存可见性。我们不仅希望防止某个线程正在使用对象状态而另一个线程在同时修改该状态, 阅读全文
posted @ 2016-12-22 09:53 文洁丫头 阅读(143) 评论(0) 推荐(0) 编辑
摘要:生产者消费者问题是线程模型中的经典问题:生产者和消费者在同一时间段内共用同一存储空间,生产者向空间里生产数据,而消费者取走数据。 这里实现如下情况的生产--消费模型: 生产者不断交替地生产两组数据“姓名--1 --> 内容--1”,“姓名--2--> 内容--2”,消费者不断交替地取得这两组数据,这 阅读全文
posted @ 2016-12-22 09:19 文洁丫头 阅读(171) 评论(0) 推荐(0) 编辑
摘要:notify通知的遗漏很容易理解,即threadA还没开始wait的时候,threadB已经notify了,这样,threadB通知是没有任何响应的,当threadB退出synchronized代码块后,threadA再开始wait,便会一直阻塞等待,直到被别的线程打断。 实例见 :https:// 阅读全文
posted @ 2016-12-19 20:39 文洁丫头 阅读(293) 评论(0) 推荐(0) 编辑
摘要:转载请注明出处:http://blog.csdn.net/ns_code/article/details/17225469 wait()方法:public final void wait() throws InterruptedException,IllegalMonitorStateExcepti 阅读全文
posted @ 2016-12-19 20:28 文洁丫头 阅读(616) 评论(0) 推荐(0) 编辑
摘要:转载请注明出处:http://blog.csdn.net/ns_code/article/details/17200937 大部分代码并不容易产生死锁,死锁可能在代码中隐藏相当长的时间,等待不常见的条件地发生,但即使是很小的概率,一旦发生,便可能造成毁灭性的破坏。避免死锁是一件困难的事,遵循以下原则 阅读全文
posted @ 2016-12-19 17:30 文洁丫头 阅读(141) 评论(0) 推荐(0) 编辑
摘要:转载请注明出处:http://blog.csdn.net/ns_code/article/details/17200509 在集合API中,最初设计的Vector和Hashtable是多线程安全的。例如:对于Vector来说,用来添加和删除元素的方法是同步的。如果只有一个线程与Vector的实例交互 阅读全文
posted @ 2016-12-19 17:27 文洁丫头 阅读(294) 评论(0) 推荐(0) 编辑
摘要:Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。 一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能 阅读全文
posted @ 2016-12-19 17:17 文洁丫头 阅读(224) 评论(0) 推荐(0) 编辑
摘要:http://blog.csdn.net/ns_code/article/details/17161237 阅读全文
posted @ 2016-12-19 17:08 文洁丫头 阅读(117) 评论(0) 推荐(0) 编辑
摘要:转载请注明出处:http://blog.csdn.net/ns_code/article/details/17099981 守护线程 Java中有两类线程:User Thread(用户线程)、Daemon Thread(守护线程) 用户线程即运行在前台的线程,而守护线程是运行在后台的线程。 守护线程 阅读全文
posted @ 2016-12-19 17:01 文洁丫头 阅读(410) 评论(0) 推荐(0) 编辑
摘要:转载请注明出处:http://blog.csdn.net/ns_code/article/details/17095733 下面我们给出不用上述两个方法来实现线程挂起和恢复的策略——设置标志位。通过该方法实现线程的挂起和恢复有一个很好的地方,就是可以在线程的指定位置实现线程的挂起和恢复,而不用担心其 阅读全文
posted @ 2016-12-19 16:32 文洁丫头 阅读(2845) 评论(0) 推荐(0) 编辑
摘要:参考:http://blog.csdn.net/ns_code/article/details/17091267 使用interrupt()中断线程 当一个线程运行时,另一个线程可以调用对应的Thread对象的interrupt()方法来中断它,该方法只是在目标线程中设置一个标志,表示它已经被中断, 阅读全文
posted @ 2016-12-19 16:09 文洁丫头 阅读(209) 评论(0) 推荐(0) 编辑
摘要:每个Java对象都可以用做一个实现同步的锁,这些锁被称为内置锁或监视器锁。线程在进入同步代码块之前会自动获取锁,并且在退出同步代码块时会自动释放锁。获得内置锁的唯一途径就是进入由这个锁保护的同步代码块或方法。 “重入”意味着获取锁的操作的粒度是“线程”,而不是调用。重入的一种实现方法是,为每个锁关联 阅读全文
posted @ 2016-12-19 15:27 文洁丫头 阅读(396) 评论(0) 推荐(0) 编辑
摘要:一.synchronized的缺陷 synchronized是java中的一个关键字,也就是说是Java语言内置的特性。那么为什么会出现Lock呢? 在上面一篇文章中,我们了解到如果一个代码块被synchronized修饰了,当一个线程获取了对应的锁,并执行该代码块时,其他线程便只能一直等待,等待获 阅读全文
posted @ 2016-12-19 15:07 文洁丫头 阅读(226) 评论(0) 推荐(0) 编辑
摘要:项目实现了1.java实现线程的三个方法2.java4种线程迟的使用3Synchronized的几个同步现成的例子。4阻塞队列实现并发——典型例子生产者消费者问题。 https://git.oschina.net/wenjieyatou/threadTest 阅读全文
posted @ 2016-12-19 10:21 文洁丫头 阅读(181) 评论(0) 推荐(0) 编辑
摘要:一.几种主要的阻塞队列 自从Java 1.5之后,在java.util.concurrent包下提供了若干个阻塞队列,主要有以下几个: ArrayBlockingQueue:基于数组实现的一个阻塞队列,在创建ArrayBlockingQueue对象时必须制定容量大小。并且可以指定公平性与非公平性,默 阅读全文
posted @ 2016-12-19 09:20 文洁丫头 阅读(214) 评论(0) 推荐(0) 编辑
摘要:1. Redis Cluster的架构图。 (1)所有的redis节点彼此互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽. (2)节点的fail是通过集群中超过半数的节点检测失效时才生效. (3)客户端与redis节点直连,不需要中间proxy层.客户端不需要连接集群所有节点, 阅读全文
posted @ 2016-12-14 16:49 文洁丫头 阅读(267) 评论(0) 推荐(0) 编辑
摘要:Redis启动多端口,运行多实例 使用redis在同一台机器上,启用多个端口,实现多个实例,完成集群的模拟实现。 启动多实例 redis默认启动端口为6379,我们可以使用 --port 来指定多个端口,如下,在linux终端命令: redis-server & redis-server --por 阅读全文
posted @ 2016-12-14 15:55 文洁丫头 阅读(1325) 评论(0) 推荐(0) 编辑
摘要:1、查看主机信息 # more /etc/hosts # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 xyn-redha 阅读全文
posted @ 2016-12-14 09:56 文洁丫头 阅读(24415) 评论(0) 推荐(0) 编辑
摘要:http://blog.nosqlfan.com/html/3705.html 下面内容来源于Quora上的一个提问,问题是使用Redis需要避免的五个问题。而回答中超出了五个问题的范畴,描述了五个使用Redis的注意事项。如果你在使用或者考虑使用Redis,可能你可以学习一下下面的一些建议,避免一 阅读全文
posted @ 2016-12-13 16:13 文洁丫头 阅读(2500) 评论(0) 推荐(0) 编辑
摘要:命令 : redis-cli打开一个客户端 Redis Psubscribe 命令订阅一个或多个符合给定模式的频道。 每个模式以 * 作为匹配符,比如 it* 匹配所有以 it 开头的频道( it.news 、 it.blog 、 it.tweets 等等)。 news.* 匹配所有以 news. 阅读全文
posted @ 2016-12-13 11:26 文洁丫头 阅读(137) 评论(0) 推荐(0) 编辑
摘要:MongoDB是一个开源文档型数据库,能够提供高性能、高可用性以及自动拓展。 文档数据库 MongoDB中的一条记录就是一个文档,是一个数据结构,由字段和值对组成。MongoDB文档与JSON对象类似。字段的值有可能包括其它文档、数组以及文档数组。 使用文档的优势在于: 文档(例如,对象)对应许多编 阅读全文
posted @ 2016-12-09 20:28 文洁丫头 阅读(217) 评论(0) 推荐(0) 编辑
摘要:https://www.zhihu.com/question/22764869 阅读全文
posted @ 2016-12-06 09:07 文洁丫头 阅读(135) 评论(0) 推荐(0) 编辑
摘要:防止SQL注入,我们需要注意以下几个要点: 1.永远不要信任用户的输入。对用户的输入进行校验,可以通过正则表达式,或限制长度;对单引号和 双"-"进行转换等。 2.永远不要使用动态拼装sql,可以使用参数化的sql或者直接使用存储过程进行数据查询存取。 3.永远不要使用管理员权限的数据库连接,为每个 阅读全文
posted @ 2016-12-05 11:52 文洁丫头 阅读(277) 评论(0) 推荐(0) 编辑
摘要:1,Native SQL ->HQL->EJBQL->QBC(Query By Cretira)->QBE(Query By Example) 此排列是根据可实现功能大小排序。 阅读全文
posted @ 2016-12-04 11:11 文洁丫头 阅读(153) 评论(0) 推荐(0) 编辑
摘要:性能优化 1.注意session.clear()的运用。尤其是不断分页循环的情况下。 a)在一个大集合中进行遍历,遍历取出数据或者对象 b)java会引起内存泄漏吗?在语法上是不可能出现内存泄露的,因为我们是运行在java虚拟机,有垃圾处理机制。但是在实际操作中,比如打开session不关闭,打开s 阅读全文
posted @ 2016-12-04 10:51 文洁丫头 阅读(221) 评论(0) 推荐(0) 编辑
摘要:zhan 阅读全文
posted @ 2016-12-02 17:41 文洁丫头 阅读(111) 评论(0) 推荐(0) 编辑
摘要:https://git.oschina.net/wenjieyatou/hibernate_OR_Mapping 请参考git代码。基本原理是自己写了一个session,然后用反射机制模拟数据库存储机制。 阅读全文
posted @ 2016-12-02 11:48 文洁丫头 阅读(141) 评论(0) 推荐(0) 编辑
摘要:1.最简单的查询 这是hql最基本的查询语句了,作用就是查出所有的Special对象放到一个List当中 2.基于 ? 的参数化形式 3.基于 :xx 的别名的方式设置参数 4.如果返回的值只有一个,可以使用uniqueResult方法 5.基于投影的查询 6.基于导航对象的查询 注意:若直接通过导 阅读全文
posted @ 2016-12-02 11:47 文洁丫头 阅读(317) 评论(0) 推荐(0) 编辑
摘要:我们会分析load和get两种加载方式: 一.load加载方式 当使用load方法来得到一个对象时,此时hibernate会使用延迟加载的机制来加载这个对象,即:当我们使用session.load()方法来加载一个对象时,此时并不会发出sql语句,当前得到的这个对象其实是一个代理对象,这个代理对象只 阅读全文
posted @ 2016-12-02 11:36 文洁丫头 阅读(183) 评论(0) 推荐(0) 编辑
摘要:特别感谢http://www.cnblogs.com/xiaoluo501395377/p/3377604.html 在本篇随笔里将会分析一下hibernate的缓存机制,包括一级缓存(session级别)、二级缓存(sessionFactory级别)以及查询缓存,当然还要讨论下我们的N+1的问题。 阅读全文
posted @ 2016-12-02 11:16 文洁丫头 阅读(504) 评论(0) 推荐(0) 编辑
摘要:CVS及SVN都是集中式的版本控制系统,而Git是分布式版本控制系统,集中式和分布式版本控制系统有什么区别呢? 集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。中央服务器就 阅读全文
posted @ 2016-12-01 14:39 文洁丫头 阅读(289) 评论(0) 推荐(0) 编辑
摘要:实现功能是,用户可以直接导入对应数据,或者用户下载模板,填写数据,导入模板数据。easyui实现 前台页面 以上代码加颜色的是特别注意的点。上传文件一定加这些声明,否则不可实现。点击模板下载可以直接在我们根路径下找到模板,并下载。 具体的后台代码是: readExcel代码:把数据先读到一个dayr 阅读全文
posted @ 2016-12-01 11:42 文洁丫头 阅读(1971) 评论(0) 推荐(0) 编辑
摘要:方法一 前台页面的定义分页展示 easy ui 每次页面操作或者查询请求CURD时 响应头部都会带着页面page和rows属性。所以后台可以指定接收参数 进行分页。 例如 在初始化的时候。我们会创建一个page的 bean用来接收前台传入的page 和 row、 再定义一个 pagination来方 阅读全文
posted @ 2016-12-01 11:08 文洁丫头 阅读(388) 评论(0) 推荐(0) 编辑
摘要:实现功能 输入查询结果 点击导出查询结果 导出到excle表。 前台代码为: 此处涉及到了一个序列化form表单的方法。为: 后台代码 其实和导出选中行操作过程一样的,区别是。导出所选行,前台传入是选中行的id.导出查询结果,前台传入的是查询条件,可以直接复用初始化数据时的方法。 具体参考 http 阅读全文
posted @ 2016-12-01 10:42 文洁丫头 阅读(217) 评论(0) 推荐(0) 编辑
摘要:要实现的是将所选行导出。例如勾选这两条 导出为 我的前台是easyUI实现的。所以前台代码为: 后台处理逻辑为: DayRecruitService的逻辑: DayRecruitDAO后台逻辑为: 其中涉及到的hql语句模板是 此处还涉及到了工具类 代码为: 阅读全文
posted @ 2016-12-01 10:06 文洁丫头 阅读(256) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示