自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

转载 Java线程池

一、线程池初探所谓线程池,就是将多个线程放在一个池子里面(所谓池化技术),然后需要线程的时候不是创建一个线程,而是从线程池里面获取一个可用的线程,然后执行我们的任务。线程池的关键在于它为我们管理了多个线程,我们不需要关心如何创建线程,我们只需要关系我们的核心业务,然后需要线程来执行任务的时候从线程池中获取线程。任务执行完之后线程不会被销毁,而是会被重新放到池子里面,等待机会去执行任务。我...

2018-08-22 01:10:00 76

转载 springMVC请求过程

SpringMVC框架是一个基于请求驱动的Web框架,并且使用了‘前端控制器’模型来进行设计,再根据‘请求映射规则’分发给相应的页面控制器进行处理。(一)整体流程具体步骤:1、 首先用户发送请求到前端控制器,前端控制器根据请求信息(如 URL)来决定选择哪一个页面控制器进行处理并把请求委托给它,即以前的控制器的控制逻辑部分;图中的 1、2 步骤;2、 页面控制器接收到请求后,进行功...

2018-08-20 10:53:00 125

转载 java中特殊的String类型

Java中String是一个特殊的包装类数据有两种创建形式:String s = "abc";String s = new String("abc"); 第一种先在栈中创建一个对String类的对象引用变量s,然后去查找"abc"是否被保存在字符串常量池中,如果没有则在栈中创建三个char型的值'a'、'b'、'c',然后在堆中创建一个String对象object,它的值是...

2018-08-19 19:08:00 79

转载 单例模式和多例模式

单例模式的关键有两点:1.构造方法为私有,这样外界就不能随意调用。2.get的方法为静态,由类直接调用多例模式(Multiton)1、多例类可以有多个实例2、多例类必须能够自我创建并管理自己的实例,并向外界提供自己的实例。一、单例模式和多例模式说明:1.单例模式和多例模式属于对象模式。2.单例模式的对象在整个系统中只有一份,多例模式可以有多个...

2018-08-19 01:02:00 82

转载 hash算法学习

1. Hash是什么,它的作用先举个例子。我们每个活在世上的人,为了能够参与各种社会活动,都需要一个用于识别自己的标志。也许你觉得名字或是身份证就足以代表你这个人,但是这种代表性非常脆弱,因为重名的人很多,身份证也可以伪造。最可靠的办法是把一个人的所有基因序列记录下来用来代表这个人,但显然,这样做并不实际。而指纹看上去是一种不错的选择,虽然一些专业组织仍然可以模拟某个人的指纹,但这种代价...

2018-08-18 18:05:00 74

转载 arraylist和linkedlist的简单比较

ArrayList和LinkedList都是实现了List接口的容器类,用于存储一系列的对象引用。他们都可以对元素的增删改查进行操作。对于ArrayList,它在集合的末尾删除或添加元素所用的时间是一致的,但是在列表中间的部分添加或删除时所用时间就会大大增加。但是它在根据索引查找元素的时候速度很快。对于LinkedList则相反,它在插入、删除集合中任何位置的元素所花费的时间都是一样的,...

2018-08-18 11:14:00 85

转载 乐观锁和悲观锁

乐观锁和悲观锁https://blog.csdn.net/truelove12358/article/details/54963791https://blog.csdn.net/L_BestCoder/article/details/79298417首先我们理解下两种不同思路的锁,乐观锁和悲观锁。这两种锁机制,是在多用户环境并发控制的两种所机制。下面看百度百科对乐观锁和悲观锁两种锁机制的...

2018-08-17 11:28:00 60

转载 单例和装饰模型

六大原则:单一职责原则(Single Responsibility Principle, SRP):一个类只负责一个功能领域中的相应职责,就一个类而言,应该只有一个引起它变化的原因开闭原则(Open-Closed Principle, OCP):一个软件实体应当对扩展开放,对修改关闭。即软件实体应尽量在不修改原有代码的情况下进行扩展。里氏代换原则(Liskov Substitution ...

2018-08-16 20:36:00 53

转载 ssm框架

SSM框架作用:SSM框架是spring MVC ,spring和mybatis框架的整合,是标准的MVC模式,将整个系统划分为表现层,controller层,service层,DAO层四层使用spring MVC负责请求的转发和视图管理spring实现业务对象管理,mybatis作为数据对象的持久化引擎原理:SpringMVC:1.客户端发送请求到DispacherServlet(分发...

2018-08-16 10:14:00 216

转载 TCP和UDP

UDP协议UDP:User Datagram Protocol,用户数据报协议.主要作用:将网络数据压缩成数据包的形式。数据包:一个二进制数据的传输单位工作机制:蛮干型。它想传送时就简单地去抓取来自应用程序的数据,并尽可能快地把它扔到网络上。因此,在发送端,UDP传送数据的速度仅仅是受应用程序生成数据的速度、计算机的能力和传输带宽的限制;在接收端,UDP把每个消息段放在队列中,应用程序每...

2018-08-15 20:26:00 63

转载 Vector和ArrayList区别

Java中Vector和ArrayList的区别首先看这两类都实现List接口,而List接口一共有三个实现类,分别是ArrayList、Vector和LinkedList。List用于存放多个元素,能够维护元素的次序,并且允许元素的重复。3个具体实现类的相关区别如下:ArrayList是最常用的List实现类,内部是通过数组实现的,它允许对元素进行快速随机访问。数组的缺点是每个元素之间...

2018-08-15 10:40:00 54

转载 Hibernate与MyBatis

第一章Hibernate与MyBatisHibernate是当前最流行的O/R mapping框架,它出身于sf.net,现在已经成为Jboss的一部分。Mybatis是另外一种优秀的O/R mapping框架。目前属于apache的一个子项目。MyBatis参考资料官网:http://www.mybatis.org/core/zh/index.htmlHibern...

2018-08-14 10:04:00 54

转载 redis缓存

1、为什么使用redis2、使用redis有什么缺点3、单线程的redis为什么这么快4、redis的数据类型,以及每种数据类型的使用场景5、redis的过期策略以及内存淘汰机制6、redis和数据库双写一致性问题7、如何应对缓存穿透和缓存雪崩问题8、如何解决redis的并发竞争问题正文1、为什么使用redis分析:博主觉得在项目中使用redis,主要是从两个角度去考虑:性能和并发。当然...

2018-08-13 18:27:00 71

转载 Innodb学习

INNODB整体学习1 内存结构组成部分:缓冲池buffer pool, 由innodb_buffer_pool_size配置重做日志缓冲池redo log buffer, 由innodb_log_buffer_size配置额外内存池additional memory pool, 由innodb_additional_mem_pool_size配置1.1 bu...

2018-08-13 13:58:00 72

转载 基本数据结构-图

一、图的定义与术语定义:图(Graph)是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为:G(V,E),其中,G表示一个图,V是图G中顶点的集合,E是图G中边的集合。1、图的分类图是按照无方向和有方向分为无向图和有向图。左图为无向图是由顶点和边构成,右图为有向图是由顶点和弧(有向边构成)。弧有弧头和弧尾区别。按照边分为稀疏图和稠密图,这是个模糊的概念,同样是相对的概念。如果任意两...

2018-08-13 01:05:00 87

转载 java集合

一、集合与数组数组(可以存储基本数据类型)是用来存现对象的一种容器,但是数组的长度固定,不适合在对象数量未知的情况下使用。集合(只能存储对象,对象类型可以不一样)的长度可变,可在多数情况下使用。二、层次关系Collection接口是集合类的根接口,Java中没有提供这个接口的直接的实现类。但是却让其被继承产生了两个接口,就是Set和List。Set中不能包含重复的元素。List是一个有序...

2018-08-12 08:58:00 52

转载 类的加载顺序

tomcat类加载和JVM类加载的区别:http://blog.csdn.net/dreamcatcher1314/article/details/78271251对象的创建(new、克隆、反序列化)的过程:1. 当虚拟机遇到内存创建的指令的时候,来到了方法区,找到方法区中有没有符号引用(类信息存在的一种原始形式,字符串)2.检查该符号引用有没有被加载、解析和初始化过,如果没有则执行类加...

2018-08-12 00:28:00 42

转载 垃圾回收算法

垃圾回收算法GC Root:1.可达性分析算法2.引用计数法引用计数器:当对于对象存在引用时,会给这个对象的计数上+1,当引用结束后,会对这个计数减1,当对象的引用计数为0时,代表这个对象可以被回收可达性分析算法从一系列GCRoot对象开始,向下搜索引用链,如果一个对象没有与任何GCRoot对象关联,这个对象就会被判定为可回收对象。GCRoot包括以下对象:虚拟机栈上的本地变量表引用的对...

2018-08-11 09:47:00 66

转载 垃圾回收机制

JVM垃圾收集器 CMS 收集器CMS(Concurrent Mark Sweep),从 Mark Sweep 可以知道它是基于标记-清除算法实现的。特点:并发收集、低停顿。分为以下四个流程:1.初始标记:仅仅只是标记一下 GC Roots 能直接关联到的对象,速度很快,需要停顿。2.并发标记:进行 GC Roots Tracing 的过程,它在整个回收过程中耗时最长,不需要停顿。3.重...

2018-08-10 23:38:00 65

转载 jvm内存模型

jvm内存模型http://blog.csdn.net/u012152619/article/details/46968883#t1 网页链接JVM定义了若干个程序执行期间使用的数据区域。这个区域里的一些数据在JVM启动的时候创建,在JVM退出的时候销毁。而其他的数据依赖于每一个线程,在线程创建时创建,在线程退出时销毁。(1)程序计数器程序计数器是一块较小的内存空间,可以看作是当前线...

2018-08-10 09:10:00 33

转载 JMV的学习

一.JVM学习1.1JVM运行机制的最重要的三点:加载(类加载器,classloader) 、内存管理(包含GC)、执行。如果再加上JDK所作的把java文件编译为二进制class文件的步骤,就组成了Java代码的执行机制三部曲:编译–>加载–>执行2.1 Java编译机制Java编译机制不属于JVM,但是JVM运行class文件,首先需要JDK把java源码编译成class...

2018-08-09 21:08:00 166

转载 NIO学习(2)

果,转载请标明原文链接:  http://www.cnblogs.com/dolphin0520/p/3919162.html一.NIO中的几个基础概念  在NIO中有几个比较关键的概念:Channel(通道),Buffer(缓冲区),Selector(选择器)。  首先从Channel说起吧,通道,顾名思义,就是通向什么的道路,为某个提供了渠道。在传统IO中,我们要读取一个文件中的内...

2018-08-09 16:24:00 47

转载 NIO学习(1)

1、NIO(New IO)非阻塞式IO2、IO和NIO区别:IO:面向流(Stream oriented)阻塞IO(Blocking IO)NIO:面向缓冲区(Buffer Oriented)非阻塞IO*选择器(Selectors)通道负责传输,buffer负责存储。3、(1)、缓存区(Buffer):在java NIO中负责数据的存取,缓冲区就是数组,用户存储不同类型的数据。根据数据类...

2018-08-09 09:14:00 54

转载 Java多线程学习

Java JUC 简介在Java 5.0 提供了java.util.concurrent(简称JUC )包,在此包中增加了在并发编程中很常用的实用工具类,用于定义类似于线程的自定义子系统,包括线程池、异步IO 和轻量级任务框架。提供可调的、灵活的线程池。还提供了设计用于多线程上下文中的Collection 实现等volatile 关键字(内存可见性)内存可见性内存可见性(Memory V...

2018-08-09 00:34:00 65

转载 全文检索基本实现原理

solr是一个独立的企业级搜索应用服务器,它对外t提供类似于web-service的api接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的xml文件,生成索引。;也可以通过http get操作提出查询的请求,得到xml/json格式的返回结果Lucene是一个高效的,基于Java的全文检索库。所以在了解Lucene之前要费一番工夫了解一下全文检索。那么什么叫...

2018-08-08 17:17:00 81

转载 搜索功能的实现

if (list.isEmpty()) { productSearch.setHistorysearch(productSearch.getMast()); productSearch.setHotsearch_count(productSearch.getHotsearch_count() + 1); if(productSearc...

2018-08-08 14:24:00 103

转载 结果集pojo和根据条件查询

一.ProductResult结果集private long totalPages;private long recordCount;private List<ProductSearch> productSearchList;二.搜索结果服务层service根据查询对象在索引库进行查询SolrServer solrServer=new HttpSolr...

2018-08-08 10:04:00 129

转载 项目搜索功能

一 .明确自己的任务把商品数据导入到solr引擎的索引库里导入依赖solrdependency> <groupId>org.apache.solr</groupId><artifactId>solr-solrj</artifactId> <version>4.10.3</version...

2018-08-08 00:39:00 252

转载 向solr索引库添加数据

一.写一个测试用例:向索引库添加文档(数据)创建一个SolrServer对象。创建一个HttpSolrServer对象需要指定solr服务的url创建一个文档对象SolrInputDocument向文档中添加域,必须有id域,域的名称必须在schema.xml中定义把文档对象写入索引库提交@Test public void testAddDo...

2018-08-07 21:45:00 159

转载 idea中完成简单的搜索

一.简单的搜索功能1:mapper.xml文件:<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mappe...

2018-08-07 21:43:00 169

转载 IKAnalyzer 配置到服务器

solrIK Analyzer 2012FF_hf1:IKAnalyzer详细介绍IK Analyzer 是一个开源的,基于java语言开发的轻量级的中文分词工具包。从2006年12月推出1.0版开始, IKAnalyzer已经推出了4个大版本。最初,它是以开源项目Luence为应用主体的,结合词典分词和文法分析算法的中文分词组件。从3.0版本开始,IK发展为面向Java的...

2018-08-07 21:40:00 73

转载 solr引擎的学习

solr(solr-4.10.3) 搜索引擎学习什么是SolrSolr是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器。Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化Solr可以独立运行,运行在Jetty、Tomcat等这些Servlet容器中,Solr索引的实现方法很简单,...

2018-08-07 14:06:00 46

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除