08 2018 档案
摘要:一、线程池初探 所谓线程池,就是将多个线程放在一个池子里面(所谓池化技术),然后需要线程的时候不是创建一个线程,而是从线程池里面获取一个可用的线程,然后执行我们的任务。线程池的关键在于它为我们管理了多个线程,我们不需要关心如何创建线程,我们只需要关系我们的核心业务,然后需要线程来执行任务的时候从线程
阅读全文
摘要:数据结构中有很多树的结构,其中包括二叉树、二叉搜索树、2-3树、红黑树等等。本文中对数据结构中常见的几种树的概念和用途进行了汇总,不求严格精准,但求简单易懂。 1. 二叉树 二叉树是数据结构中一种重要的数据结构,也是树表家族最为基础的结构。 二叉树的定义:二叉树的每个结点至多只有二棵子树(不存在度大
阅读全文
摘要:一、集合与数组 数组(可以存储基本数据类型)是用来存现对象的一种容器,但是数组的长度固定,不适合在对象数量未知的情况下使用。 集合(只能存储对象,对象类型可以不一样)的长度可变,可在多数情况下使用。 二、层次关系 Collection接口是集合类的根接口,Java中没有提供这个接口的直接的实现类。但
阅读全文
摘要:tomcat类加载和JVM类加载的区别: http://blog.csdn.net/dreamcatcher1314/article/details/78271251 对象的创建(new、克隆、反序列化)的过程: 1. 当虚拟机遇到内存创建的指令的时候,来到了方法区,找到方法区中有没有符号引用(类信
阅读全文
摘要:垃圾回收算法 GC Root: 1.可达性分析算法 2.引用计数法 引用计数器:当对于对象存在引用时,会给这个对象的计数上+1,当引用结束后,会对这个计数减1,当对象的引用计数为0时,代表这个对象可以被回收 可达性分析算法从一系列GCRoot对象开始,向下搜索引用链,如果一个对象没有与任何GCRoo
阅读全文
摘要:JVM垃圾收集器 CMS 收集器 CMS(Concurrent Mark Sweep),从 Mark Sweep 可以知道它是基于标记-清除算法实现的。 特点:并发收集、低停顿。 分为以下四个流程: 1.初始标记:仅仅只是标记一下 GC Roots 能直接关联到的对象,速度很快,需要停顿。 2.并发
阅读全文
摘要:jvm内存模型 http://blog.csdn.net/u012152619/article/details/46968883#t1 网页链接 JVM定义了若干个程序执行期间使用的数据区域。这个区域里的一些数据在JVM启动的时候创建,在JVM退出的时候销毁。而其他的数据依赖于每一个线程,在线程创建
阅读全文
摘要:一.JVM学习 1.1JVM运行机制的最重要的三点:加载(类加载器,classloader) 、内存管理(包含GC)、执行。 如果再加上JDK所作的把java文件编译为二进制class文件的步骤,就组成了Java代码的执行机制三部曲: 编译–>加载–>执行 2.1 Java编译机制 Java编译机制
阅读全文
摘要:果,转载请标明原文链接: http://www.cnblogs.com/dolphin0520/p/3919162.html 一.NIO中的几个基础概念 在NIO中有几个比较关键的概念:Channel(通道),Buffer(缓冲区),Selector(选择器)。 首先从Channel说起吧,通道,顾
阅读全文
摘要:1、NIO(New IO)非阻塞式IO 2、IO和NIO区别: IO:面向流(Stream oriented) 阻塞IO(Blocking IO) NIO:面向缓冲区(Buffer Oriented) 非阻塞IO *选择器(Selectors) 通道负责传输,buffer负责存储。 3、(1)、缓存
阅读全文
摘要:Java JUC 简介 在Java 5.0 提供了java.util.concurrent(简称JUC )包,在此包中增加了在并发编程中很常用的实用工具类,用于定义类似于线程的自定义子系统,包括线程池、异步IO 和轻量级任务框架。提供可调的、灵活的线程池。还提供了设计用于多线程上下文中的Collec
阅读全文
摘要:单例模式的关键有两点: 1.构造方法为私有,这样外界就不能随意调用。 2.get的方法为静态,由类直接调用 多例模式(Multiton) 1 、多例类可以有多个实例 2 、多例类必须能够自我创建并管理自己的实例,并向外界提供自己的实例。 一、单例模式和多例模式说明: 1. 单例模式和多例模式属于对象
阅读全文
摘要:solr全文检索实现原理 solr是一个独立的企业级搜索应用服务器,它对外t提供类似于web-service的api接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的xml文件,生成索引。; 也可以通过http get操作提出查询的请求,得到xml/json格式的返回结果 Lucene是
阅读全文
摘要:一.ProductResult结果集 private long totalPages; private long recordCount; private List<ProductSearch> productSearchList; 二.搜索结果服务层service 根据查询对象在索引库进行查询 S
阅读全文
摘要:热门搜索功能的实现 if (list.isEmpty()) { productSearch.setHistorysearch(productSearch.getMast()); productSearch.setHotsearch_count(productSearch.getHotsearch_c
阅读全文
摘要:一 .明确自己的任务 把商品数据导入到solr引擎的索引库里 导入依赖 solr dependency> <groupId>org.apache.solr</groupId> <artifactId>solr-solrj</artifactId> <version>4.10.3</version>
阅读全文
摘要:一. 写一个测试用例: 向索引库添加文档(数据) 创建一个SolrServer对象。创建一个HttpSolrServer对象 需要指定solr服务的url 创建一个文档对象SolrInputDocument 向文档中添加域,必须有id域,域的名称必须在schema.xml中定义 把文档对象写入索引库
阅读全文
摘要:solr(solr-4.10.3) 搜索引擎学习 什么是Solr Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器。Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化 Solr可以独立运行,运行在
阅读全文
摘要:一.简单的搜索功能 1:mapper.xml文件: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/
阅读全文
摘要:solr IK Analyzer 2012FF_hf1: IKAnalyzer 详细介绍 IK Analyzer 是一个开源的,基于java语言开发的轻量级的中文分词工具包。从2006年12月推出1.0版开始, IKAnalyzer已经推出了4个大版本。最初,它是以开源项目Luence为应用主体的,
阅读全文

浙公网安备 33010602011771号