摘要: spring中的事件驱动模型也叫作发布订阅模式,是观察者模式的一个典型的应用,关于观察者模式在之前的博文中总结过,http://www.cnblogs.com/fingerboy/p/5468994.html 这里主要讲一下Spring中的观察者模式的应用. spring事件驱动模型的结构. 首先明 阅读全文
posted @ 2017-08-21 16:29 車輪の唄 阅读(19) 评论(0) 推荐(0)
摘要: 一个线程在未正常结束之前, 被强制终止是很危险的事情. 因为它可能带来完全预料不到的严重后果比如会带着自己所持有的锁而永远的休眠,迟迟不归还锁等。 所以你看到Thread.suspend, Thread.stop等方法都被Deprecated了 那么不能直接把一个线程搞挂掉, 但有时候又有必要让一个 阅读全文
posted @ 2017-08-15 18:32 車輪の唄 阅读(18) 评论(0) 推荐(0)
摘要: public class TestJoin implements Runnable { public static void main(String[] sure) throws InterruptedException { Thread t = new Thread(new TestJoin()) 阅读全文
posted @ 2017-08-15 17:02 車輪の唄 阅读(16) 评论(0) 推荐(0)
摘要: 如果对象调用了wait方法就会使持有该对象的线程把该对象的控制权交出去,然后处于等待状态。如果对象调用了notify方法就会通知某个正在等待这个对象的控制权的线程可以继续运行。如果对象调用了notifyAll方法就会通知所有等待这个对象控制权的线程继续运行。 分析wait方法: 1) 哪个线程调用了 阅读全文
posted @ 2017-08-14 16:32 車輪の唄 阅读(29) 评论(0) 推荐(0)
摘要: 如果有一块代码(或方法)可能被多个线程同时访问,然后里面操作的数据修改操作可能因为不同线程的操作而不一致的时候,使用synchronized锁定这块代码,确保同时只有一个线程访问这个代码块。也就是说,关键字synchronized可以用在任何类的方法里面,即使该类没有实现Runnable接口或者继承 阅读全文
posted @ 2017-08-14 16:31 車輪の唄 阅读(109) 评论(0) 推荐(0)
摘要: 涉及到的 1)stack>vector>list 2)工厂模式, 单例模式 3)线程同步 4)泛型 5)反射 为什么要将对象池话,这个问题还是比较有意义的。我们知道,一个对象的生命周期包括:创建、使用、销毁(类比Servlet的生命周期)。实际上创建和使用之间还有一个初始化的过程,只不过java把初 阅读全文
posted @ 2017-08-11 17:22 車輪の唄 阅读(21) 评论(0) 推荐(0)
摘要: 类实例化, 先成员变量默认初始化, 成员变量显式初始化, 执行构造函数 有父子关系的类实例化, 成员变量默认初始化, 执行父类构造函数, 成员变量显式初始化, 执行子类构造函数 class Fu { Fu() { super(); show(); //通过结果可以看出,子父类有同名show方法,调用 阅读全文
posted @ 2017-08-09 11:18 車輪の唄 阅读(17) 评论(0) 推荐(0)
摘要: 我们首先来看下面一段代码,这段代码是我们使用Jedis封装服务的一个实现: [java] view plain copy @Service public class JedisSpringDemo { @Resource(name = "shardedJedisPool") private Shar 阅读全文
posted @ 2017-08-07 18:20 車輪の唄 阅读(14) 评论(0) 推荐(0)
摘要: 模板模式 public abstract class TemplatePattern { //模板方法 public final void templateMethod(){ method1(); method2();//勾子方法 method3();//抽象方法 } private void me 阅读全文
posted @ 2017-08-07 17:32 車輪の唄 阅读(26) 评论(0) 推荐(0)
摘要: Spring框架中使用到了大量的设计模式,下面列举了比较有代表性的: 代理模式—在AOP和remoting中被用的比较多。单例模式—在spring配置文件中定义的bean默认为单例模式。模板方法—用来解决代码重复的问题。比如. RestTemplate, JmsTemplate, JpaTempla 阅读全文
posted @ 2017-08-04 16:53 車輪の唄 阅读(20) 评论(0) 推荐(0)
摘要: 1.修饰基本类型变量 , 该变量不能被修改 2.修饰引用类型变量 ,只能保证指向的引用类型的地址不变,即一直指向一个对象 , 但是对象的内容可以被修改 3.final修饰的方法不能被重写 4.final修饰的类不能有子类 阅读全文
posted @ 2017-08-03 20:53 車輪の唄 阅读(8) 评论(0) 推荐(0)
摘要: 1.三者在执行速度方面的比较:StringBuilder > StringBuffer > String 2.String <(StringBuffer,StringBuilder)的原因 String:字符串常量 StringBuffer:字符串变量 StringBuilder:字符串变量 从上面 阅读全文
posted @ 2017-08-03 09:22 車輪の唄 阅读(6) 评论(0) 推荐(0)
摘要: import java.util.ArrayList; import java.util.List; import org.apache.commons.lang.StringUtils; import org.junit.Test; import org.slf4j.Logger; import 阅读全文
posted @ 2017-08-03 09:10 車輪の唄 阅读(20) 评论(0) 推荐(0)
摘要: 第一种方法 , Entity实现了comparable接口 list<Entity> es = new ArrayList<>(); Collections.sort(); 第二种方法 , Entity没有实现comparable接口 (此时应用comparator接口) List<Entity> 阅读全文
posted @ 2017-08-01 17:17 車輪の唄 阅读(7) 评论(0) 推荐(0)
摘要: public class ChinesePerson implements Person { @Override public void say() { // TODO Auto-generated method stub System.out.println("i am chinese"); } 阅读全文
posted @ 2017-07-30 10:26 車輪の唄 阅读(20) 评论(0) 推荐(0)
摘要: 一.相关概念 什么是常量 用final修饰的成员变量表示常量,值一旦给定就无法改变! final修饰的变量有三种:静态变量、实例变量和局部变量,分别表示三种类型的常量。 Class文件中的常量池 在Class文件结构中,最头的4个字节用于存储魔数Magic Number,用于确定一个文件是否能被JV 阅读全文
posted @ 2017-07-25 10:36 車輪の唄 阅读(13) 评论(0) 推荐(0)
摘要: 可以理解为:class文件常量池只是.class文件中的、静态的;而运行时常量池,是在运行时将所有class文件常量池中的东西加载进来? 运行时常量池是方法区内存中的一部分,Class文件常量池是指方法区? http://hllvm.group.iteye.com/group/topic/26412 阅读全文
posted @ 2017-07-25 10:13 車輪の唄 阅读(18) 评论(0) 推荐(0)
摘要: public void mRun(final String name){ new Runnable() { public void run() { try { Thread.sleep(1000); } catch (InterruptedException e) { // TODO Auto-ge 阅读全文
posted @ 2017-07-24 23:20 車輪の唄 阅读(15) 评论(0) 推荐(0)
摘要: 使用spring难免要用到spring的事务管理,要用事务管理又会很自然的选择声明式的事务管理,在spring的文档中说道,spring声明式事务管理默认对非检查型异常和运行时异常进行事务回滚,而对检查型异常则不进行回滚操作。 那么什么是检查型异常什么又是非检查型异常呢? 最简单的判断点有两个: 1 阅读全文
posted @ 2017-07-24 09:36 車輪の唄 阅读(15) 评论(0) 推荐(0)
摘要: 在Java类库中出现的第一个关联的集合类是Hashtable,它是JDK1.0的一部分。 Hashtable提供了一种易于使用的、线程安全的、关联的map功能,这当然也是方便的。 然而,线程安全性是凭代价换来的――Hashtable的所有方法都是同步的。此时,无竞争的同步会导致可观的性能代价。 Ha 阅读全文
posted @ 2017-07-21 12:27 車輪の唄 阅读(25) 评论(0) 推荐(0)
摘要: 当多个数据须要共享内存或者多个数据每次仅仅取其一时。能够利用联合体(union)。在C Programming Language 一书中对于联合体是这么描写叙述的: 1)联合体是一个结构; 2)它的全部成员相对于基地址的偏移量都为0; 3)此结构空间要大到足够容纳最"宽"的成员; 4)其对齐方式要适 阅读全文
posted @ 2017-07-21 09:22 車輪の唄 阅读(38) 评论(0) 推荐(0)
摘要: 概要 本章对Java.util.concurrent包中的ConcurrentSkipListSet类进行详细的介绍。内容包括: ConcurrentSkipListSet介绍 ConcurrentSkipListSet原理和数据结构 ConcurrentSkipListSet函数列表 Concur 阅读全文
posted @ 2017-07-19 18:03 車輪の唄 阅读(22) 评论(0) 推荐(0)
摘要: title:this is 等效于 title:this OR df:is 空格默认为OR操作,具体由q.op指定 title:(this is) 在title中查询this is的分词结果, 如这里分出this, is, this is三个词,如果q.op=OR则只要匹配一个即可,如果q.op=A 阅读全文
posted @ 2017-07-07 15:16 車輪の唄 阅读(16) 评论(0) 推荐(0)
摘要: 变量和常量 在程序中存在大量的数据来代表程序的状态,其中有些数据在程序的运行过程中值会发生改变,有些数据在程序运行过程中值不能发生改变,这些数据在程序中分别被叫做变量和常量。 在实际的程序中,可以根据数据在程序运行中是否发生改变,来选择应该是使用变量代表还是常量代表。 变量 变量代表程序的状态。程序 阅读全文
posted @ 2017-07-04 16:50 車輪の唄 阅读(21) 评论(0) 推荐(0)
摘要: 内部类的this有三种指向: 1、本类的成员,即this.getDataHandle 2、父类的成员,即super.getDataHandle 3、所属类的成员,即MainSystem.this.getDataHandle 阅读全文
posted @ 2017-06-30 10:37 車輪の唄 阅读(23) 评论(0) 推荐(0)
摘要: String 和 CharSequence 关系 String 继承于CharSequence,也就是说String也是CharSequence类型。 CharSequence是一个接口,它只包括length(), charAt(int index), subSequence(int start, 阅读全文
posted @ 2017-06-23 10:49 車輪の唄 阅读(16) 评论(0) 推荐(0)
摘要: 1 /** 2 * String 构造函数演示程序 3 * 4 * @author skywang 5 */ 6 import java.nio.charset.Charset; 7 import java.io.UnsupportedEncodingException; 8 9 public cl 阅读全文
posted @ 2017-06-23 10:26 車輪の唄 阅读(13) 评论(0) 推荐(0)
摘要: 1. 第一种 不会创建“类对应的散列表” 这里所说的“不会创建类对应的散列表”是说:我们不会在HashSet, Hashtable, HashMap等等这些本质是散列表的数据结构中,用到该类。例如,不会创建该类的HashSet集合。 在这种情况下,该类的“hashCode() 和 equals() 阅读全文
posted @ 2017-06-22 14:14 車輪の唄 阅读(15) 评论(0) 推荐(0)
摘要: 1 fail-fast简介 fail-fast 机制是java集合(Collection)中的一种错误机制。当多个线程对同一个集合的内容进行操作时,就可能会产生fail-fast事件。例如:当某一个线程A通过iterator去遍历某集合的过程中,若该集合的内容被其他线程所改变了;那么线程A访问集合时 阅读全文
posted @ 2017-06-21 17:27 車輪の唄 阅读(14) 评论(0) 推荐(0)
摘要: 1.hql使用对象的方式封装结果数据 @Test public void getOrdersList(){ String hql = "select new com.demo.hibernate.one2many.Order(o.id, o.orderId, o.createTime) from O 阅读全文
posted @ 2017-06-20 11:21 車輪の唄 阅读(17) 评论(0) 推荐(0)
摘要: overview MongoDB使用的是内存映射存储引擎,即Memory Mapped Storage Engine,简称MMAP。MMAP可以把磁盘文件的一部分或全部内容直接映射到内存,这样文件中的信息位置就会在内存中有对应的地址空间,这时对文件的读写可以直接用指针来做,而不需要read/writ 阅读全文
posted @ 2017-06-19 22:53 車輪の唄 阅读(31) 评论(0) 推荐(0)
摘要: 原因:因为在重写toString()方法时,把关联的属性也放入到toString方法中了,去掉就可以了 @Entity @Table(name = "test.stu") @Data @NoArgsConstructor public class Student { @Id @Column(name 阅读全文
posted @ 2017-06-16 16:29 車輪の唄 阅读(11) 评论(0) 推荐(0)
摘要: 当集合使用Iterator进行迭代的时候,实际是new Itr()创建一个内部对象,初始化包含对象个数,可以理解为在独立线程中操作的。Iterator创建之后引用指向原来的集合对象。当原来的对象数量发生变化时,这个内部对象索引表内容其实是不会同步的。所以,当索引指针往后移动的时候就找不到要迭代的对象 阅读全文
posted @ 2017-06-15 17:34 車輪の唄 阅读(24) 评论(0) 推荐(0)
摘要: 在讲如何线程安全地遍历List之前,先看看通常我们遍历一个List会采用哪些方式。 方式一: for(int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); } 方式二: Iterator iterator = list 阅读全文
posted @ 2017-06-15 17:03 車輪の唄 阅读(56) 评论(0) 推荐(0)
摘要: java.util.regex是一个用正则表达式所订制的模式来对字符串进行匹配工作的类库包。它包括两个类:Pattern和Matcher Pattern 一个Pattern是一个正则表达式经编译后的表现模式。 Matcher 一个Matcher对象是一个状态机器,它依据Pattern对象做为匹配模式 阅读全文
posted @ 2017-06-14 11:30 車輪の唄 阅读(24) 评论(0) 推荐(0)
摘要: 在一个类的内部类中,如果需要访问外部类的方法或者成员域的时候,如果使用 this.成员域(与 内部类.this.成员域 没有分别) 调用的显然是内部类的域 , 如果我们想要访问外部类的域的时候,就要必须使用 外部类.this.成员域 public class TestA { public void 阅读全文
posted @ 2017-06-09 16:48 車輪の唄 阅读(17) 评论(0) 推荐(0)
摘要: 1. demo try…catch…finally恐怕是大家再熟悉不过的语句了,而且感觉用起来也是很简单,逻辑上似乎也是很容易理解。不过,我亲自体验的“教训”告诉我,这个东西可不是想象中的那么简单、听话。不信?那你看看下面的代码,“猜猜”它执行后的结果会是什么?不要往后看答案、也不许执行代码看真正答 阅读全文
posted @ 2017-06-08 19:47 車輪の唄 阅读(19) 评论(0) 推荐(0)
摘要: 作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。 单例模式的结构 单例模式的特点: 单例类只能有一个实例。单例类必须自己创建自己的唯一实例。单例类必须给所有其他对象提供这一实例。 饿汉式单例类 public class EagerSin 阅读全文
posted @ 2017-06-06 11:09 車輪の唄 阅读(9) 评论(0) 推荐(0)
摘要: 默认配置下是每个node下的所有core共享一个运行日志,在-d指定的 server diretory的logs目录下的solr.log文件 阅读全文
posted @ 2017-05-20 08:02 車輪の唄 阅读(13) 评论(0) 推荐(0)
摘要: 在Solr中,一个索引的实例称之为Core,而在SolrCloud中,一个索引的实例称之为Shard;Shard 又分为leader和replica。 1. SolrCloud的特质 作为分布式搜索引擎的SolrCloud具有以下几个特质: 可扩展性 所谓的可扩展性就是指可以通过扩大集群的规模来实现 阅读全文
posted @ 2017-05-14 14:08 車輪の唄 阅读(28) 评论(0) 推荐(0)