自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 资源 (2)
  • 收藏
  • 关注

原创 Mysql数据库导入导出,含docker操作命令

MySQL导出数据库#5.7.8之前的版本:mysqldump --no-defaults -uroot -h192.168.1.30 -P3306 -pdev#123 --default-character-set=utf8 --hex-blob --add-drop-table --force -R --single-transaction --set-gtid-purged=OFF --...

2020-04-29 14:05:32 449 1

原创 solr数据导入和添加中文分词器

首先修改solrConfig.xml文件备份_default文件夹修改solrconfig.xml加入如下内容 官方示例:<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler"> <lst name="defa...

2018-07-25 09:39:39 1765 2

原创 Solr --faceting

在Apache Solr中的构面或分组(faceting)指的是将搜索结果分类到各种类别中。在本章中,我们将讨论Apache Solr中可用的faceting类型 -查询faceting - 返回当前搜索结果中与给定查询匹配的文档数。 日期faceting - 它返回在特定日期范围内的文档数。构面或分组(faceting)命令被添加到任何正常的Solr查询请求,并且faceting计数在同...

2018-07-25 09:31:38 336

转载 solr介绍和项目示例

什么是SolrLucene复习:1、什么是lucene:全文检索工具包2、Lucene的工作原理:索引数据的创建从原始文件中提取一些可以用来搜索的数据(封装成各种Field),把各field再封装成document,然后对document进行分析(对各字段分词),得到一些索引目录写入索引库,document本身也会被写入一个文档信息库;索引数据的查询根据关键词解析(qu...

2018-07-17 17:35:31 1823

原创 设计模式(适配器模式)

适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器。您将内存卡插入读卡器,再将读卡器插入笔记本,这样就可以通过笔记本来读取内存卡。我们通过下面的实例来演示适配器模式的使用。其中,音频播放器设...

2018-07-16 16:31:49 220

原创 设计模式(原型模式)

原型模式(Prototype Pattern)是用于创建重复的对象,同时又能保证性能。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式是实现了一个原型接口,该接口用于创建当前对象的克隆。当直接创建对象的代价比较大时,则采用这种模式。例如,一个对象需要在一个高代价的数据库操作之后被创建。我们可以缓存该对象,在下一个请求时返回它的克隆,在需要的时候更新数据库,以此来减少数据库...

2018-07-16 16:03:47 266

原创 设计模式(建造者模式)

建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。一个 Builder 类会一步一步构造最终的对象。该 Builder 类是独立于其他对象的。介绍意图:将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。主要解决:主要解决在软件系统中,有时候面临着"一个复杂对象"的创建工作...

2018-07-16 15:54:34 166

原创 设计模式(单例模式)

单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。注意: 1、单例类只能有一个实例。2、单例类必须自己创建自己的唯一实例。3、单例类必须给所有...

2018-07-13 10:05:00 150

原创 设计模式(抽象工厂模式)

抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在抽象工厂模式中,接口是负责创建一个相关对象的工厂,不需要显式指定它们的类。每个生成的工厂都能按照工厂模式提供对象。介绍意图:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。主要解决:主...

2018-07-13 09:50:01 148

原创 设计模式(工厂模式)

工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。介绍意图:定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。主要解决:主要解决接口选择的问题。何时使用:...

2018-07-13 09:36:47 133

原创 设计模式(设计模式简介)

设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设...

2018-07-13 09:31:18 184 1

转载 Redis使用总结(四、处理延时任务)

引言在开发中,往往会遇到一些关于延时任务的需求。例如生成订单30分钟未支付,则自动取消生成订单60秒后,给用户发短信对上述的任务,我们给一个专业的名字来形容,那就是延时任务。那么这里就会产生一个问题,这个延时任务和定时任务的区别究竟在哪里呢?一共有如下几点区别定时任务有明确的触发时间,延时任务没有定时任务有执行周期,而延时任务在某事件触发后一段时间内执行,没有执行周期定时任务一般执行的是批处理操作...

2018-07-13 09:12:32 4544 1

转载 Redis使用总结(三、缓存击穿问题)

什么是缓存击穿在谈论缓存击穿之前,我们先来回忆下从缓存中加载数据的逻辑,如下图所示因此,如果黑客每次故意查询一个在缓存内必然不存在的数据,导致每次请求都要去存储层去查询,这样缓存就失去了意义。如果在大流量下数据库可能挂掉。这就是缓存击穿。场景如下图所示:我们正常人在登录首页的时候,都是根据userID来命中数据,然而黑客的目的是破坏你的系统,黑客可以随机生成一堆userID,然后将这些请求怼到你的...

2018-07-12 09:45:04 1202

转载 Redis使用总结(二、缓存和数据库双写一致性问题)

首先,缓存由于其高并发和高性能的特性,已经在项目中被广泛使用。在读取缓存方面,大家没啥疑问,都是按照下图的流程来进行业务操作。但是在更新缓存方面,对于更新完数据库,是更新缓存呢,还是删除缓存。又或者是先删除缓存,再更新数据库,其实大家存在很大的争议。目前没有一篇全面的博客,对这几种方案进行解析。于是博主战战兢兢,顶着被大家喷的风险,写了这篇文章。文章结构本文由以下三个部分组成1、讲解缓存更新策略2...

2018-07-12 09:42:46 34821 29

转载 Redis使用总结(一、几点使用心得)

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

2018-07-12 09:36:33 60017 13

原创 Java 使用 Redis

安装开始在 Java 中使用 Redis 前, 我们需要确保已经安装了 redis 服务及 Java redis 驱动,且你的机器上能正常使用 Java。 Java的安装配置可以参考我们的 Java开发环境配置 接下来让我们安装 Java redis 驱动: 首先你需要下载驱动包 下载 jedis.jar,确保下载最新驱动包。 在你的 classpath 中包含该驱动包。本站提供了 2.9.0...

2018-07-12 08:49:19 301

原创 Redis命令(Redis 服务器)

Redis 服务器命令主要是用于管理 redis 服务。实例以下实例演示了如何获取 redis 服务器的统计信息:redis 127.0.0.1:6379> INFO# Serverredis_version:2.8.13redis_git_sha1:00000000redis_git_dirty:0redis_build_id:c2238b38b1edb0e2redis_mo...

2018-07-12 08:48:13 265

原创 Redis 命令(Redis 连接)

Redis 连接命令主要是用于连接 redis 服务。实例以下实例演示了客户端如何通过密码验证连接到 redis 服务,并检测服务是否在运行: redis 127.0.0.1:6379> AUTH "password"OKredis 127.0.0.1:6379> PINGPONGRedis 连接命令下表列出了 redis 连接的基本命令:序号命令及描述1AUTH passwor...

2018-07-12 08:47:12 1886

原创 Redis 命令 (脚本)

Redis 脚本使用 Lua 解释器来执行脚本。 Reids 2.6 版本通过内嵌支持 Lua 环境。执行脚本的常用命令为 EVAL。 语法Eval 命令的基本语法如下: redis 127.0.0.1:6379> EVAL script numkeys key [key ...] arg [arg ...]实例以下实例演示了 redis 脚本工作过程:redis 127.0.0.1:637...

2018-07-12 08:45:57 475

原创 Redis 命令(Redis 事务)

Redis 事务可以一次执行多个命令, 并且带有以下两个重要的保证:批量操作在发送 EXEC 命令前被放入队列缓存。 收到 EXEC 命令后进入事务执行,事务中任意命令执行失败,其余的命令依然被执行。在事务执行过程,其他客户端提交的命令请求不会插入到事务执行命令序列中。一个事务从开始到执行会经历以下三个阶段: 开始事务。命令入队。执行事务。实例以下是一个事务的例子, 它先以 MULTI 开始一个事...

2018-07-12 08:45:04 163

原创 Redis 命令(Redis 发布订阅)

Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。Redis 客户端可以订阅任意数量的频道。下图展示了频道 channel1 , 以及订阅这个频道的三个客户端 —— client2 、 client5 和 client1 之间的关系:当有新消息通过 PUBLISH 命令发送给频道 channel1 时, 这个消息就会被发送给订阅它的三个客...

2018-07-12 08:44:10 1082

原创 Redis 命令 (HyperLogLog)

Redis 在 2.8.9 版本添加了 HyperLogLog 结构。Redis HyperLogLog 是用来做基数统计的算法,HyperLogLog 的优点是,在输入元素的数量或者体积非常非常大时,计算基数所需的空间总是固定 的、并且是很小的。在 Redis 里面,每个 HyperLogLog 键只需要花费 12 KB 内存,就可以计算接近 2^64 个不同元素的基 数。这和计算基数时,元素越...

2018-07-12 08:42:29 130

原创 Redis 命令 (有序集合(sorted set))

Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。 不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。 有序集合的成员是唯一的,但分数(score)却可以重复。 集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。 集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储...

2018-07-11 14:44:40 219

原创 Redis 命令(集合(Set))

Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。 Redis 中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。 集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。 实例redis 127.0.0.1:6379> SADD runoobkey redis(int...

2018-07-11 14:43:47 686

原创 Redis 命令(列表(List) )

Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边) 一个列表最多可以包含 232 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。 实例redis 127.0.0.1:6379> LPUSH runoobkey redis(integer) 1redis 127.0.0.1:6379> LPUSH run...

2018-07-11 14:43:05 162

原创 Redis 命令(哈希(Hash))

Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿)。 实例127.0.0.1:6379> HMSET runoobkey name "redis tutorial" description "redis basic commands for caching" ...

2018-07-11 14:42:21 204

原创 Redis 命令(字符串(String))

Redis 字符串数据类型的相关命令用于管理 redis 字符串值,基本语法如下:语法redis 127.0.0.1:6379> COMMAND KEY_NAME实例redis 127.0.0.1:6379> SET runoobkey redisOKredis 127.0.0.1:6379> GET runoobkey"redis"在以上实例中我们使用了 SET 和 GE...

2018-07-11 14:41:32 142

原创 Redis 命令(键(key))

Redis 键命令用于管理 redis 的键。语法 Redis 键命令的基本语法如下:redis 127.0.0.1:6379> COMMAND KEY_NAME实例redis 127.0.0.1:6379> SET runoobkey redisOKredis 127.0.0.1:6379> DEL runoobkey(integer) 1在以上实例中 DEL 是一个命令...

2018-07-11 14:40:22 136

原创 Redis 数据类型

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。 String(字符串)string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 ...

2018-07-11 14:36:47 137

原创 Redis 配置

Redis 的配置文件位于 Redis 安装目录下,文件名为 redis.conf。你可以通过 CONFIG 命令查看或设置配置项。语法 Redis CONFIG 命令格式如下:redis 127.0.0.1:6379> CONFIG GET CONFIG_SETTING_NAME实例redis 127.0.0.1:6379> CONFIG GET loglevel1) "logl...

2018-07-11 14:30:44 197

原创 Redis 安装

Window 下安装下载地址:https://github.com/MSOpenTech/redis/releases。Redis 支持 32 位和 64 位。这个需要根据你系统平台的实际情况选择,这里我们下载 Redis-x64-xxx.zip压缩包到 C 盘,解压后,将文件夹重新命名为 redis。 打开一个 cmd 窗口 使用cd命令切换目录到 C:\redis 运行 redis-ser...

2018-07-11 14:25:26 156

原创 Redis 简介

Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。Redis 与其他 key - value 缓存产品有以下三个特点:Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。 Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。Redis支持数据的备份,即ma...

2018-07-11 14:22:04 155

原创 zookeeper实现分布式锁

实现分布式锁有三种方式1.   redis。 setNX 存在则会返回0, 不存在2.   数据方式去实现创建一个表, 通过索引唯一的方式create table (id , methodname …)   methodname增加唯一索引insert 一条数据XXX   delete 语句删除这条记录mysql  for update3.   zookeeper实现排他锁 利用临时有序节点的特性...

2018-07-05 16:13:10 157

原创 mybatis 动态 SQL

MyBatis 的强大特性之一便是它的动态 SQL。如果你有使用 JDBC 或其它类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句的痛苦。例如拼接时要确保不能忘记添加必要的空格,还要注意去掉列表最后一个列名的逗号。利用动态 SQL 这一特性可以彻底摆脱这种痛苦。     虽然在以前使用动态 SQL 并非一件易事,但正是 MyBatis 提供了可以被用在任意 SQL 映射语句中的强大的动态...

2018-07-03 11:49:21 98

原创 mybatis XML映射文件详解

MyBatis 的真正强大在于它的映射语句,也是它的魔力所在。由于它的异常强大,映射器的 XML 文件就显得相对简单。如果拿它跟具有相同功能的 JDBC 代码进行对比,你会立即发现省掉了将近 95% 的代码。MyBatis 就是针对 SQL 构建的,并且比普通的方法做的更好。SQL 映射文件有很少的几个顶级元素(按照它们应该被定义的顺序):cache – 给定命名空间的缓存配置。cache-ref...

2018-07-03 11:16:17 441

原创 Docker教程(Docker 安装 Redis)

Docker 安装 Redis方法一、通过 Dockerfile 构建创建Dockerfile首先,创建目录redis,用于存放后面的相关东西。runoob@runoob:~$ mkdir -p ~/redis ~/redis/datadata目录将映射为redis容器配置的/data目录,作为redis数据持久化的存储目录进入创建的redis目录,创建DockerfileFROM debian:...

2018-06-29 10:49:36 416

原创 Docker教程(Docker 安装 Tomcat)

Docker 安装 Tomcat方法一、通过 Dockerfile构建创建Dockerfile首先,创建目录tomcat,用于存放后面的相关东西。runoob@runoob:~$ mkdir -p ~/tomcat/webapps ~/tomcat/logs ~/tomcat/confwebapps目录将映射为tomcat容器配置的应用程序目录logs目录将映射为tomcat容器的日志目录conf...

2018-06-29 10:48:49 260

原创 Docker教程(Docker 安装 MySQL)

Docker 安装 MySQL方法一、通过 Dockerfile构建创建Dockerfile首先,创建目录mysql,用于存放后面的相关东西。runoob@runoob:~$ mkdir -p ~/mysql/data ~/mysql/logs ~/mysql/confdata目录将映射为mysql容器配置的数据文件存放路径logs目录将映射为mysql容器的日志目录conf目录里的配置文件将映射...

2018-06-29 10:48:01 1161 1

原创 Docker教程(Docker 安装 Nginx)

Docker 安装 Nginx方法一、通过 Dockerfile构建创建Dockerfile首先,创建目录nginx,用于存放后面的相关东西。runoob@runoob:~$ mkdir -p ~/nginx/www ~/nginx/logs ~/nginx/confwww目录将映射为nginx容器配置的虚拟目录logs目录将映射为nginx容器的日志目录conf目录里的配置文件将映射为nginx...

2018-06-29 10:47:01 209

原创 Docker教程(Docker容器连接)

Docker 容器连接前面我们实现了通过网络端口来访问运行在docker容器内的服务。下面我们来实现通过端口连接到一个docker容器网络端口映射我们创建了一个 python 应用的容器。runoob@runoob:~$ docker run -d -P training/webapp python app.pyfce072cc88cee71b1cdceb57c2821d054a4a59f67d...

2018-06-29 10:46:09 360

Centos6安装Greenplum操作手册

详细介绍Centos6下如何安装Greenplum,包括环境准备,依赖库安装,greenplum安装

2018-12-10

jsp网上购书系统设计与实现

上传的内容有系统源代码,论文,开题报告,答辩ppt,数据库设计模型,主要运用jsp,struct,Ajax,SQL server的技术实现,开发工具MyEclipse6.0,服务器tomcat

2010-07-29

空空如也

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

TA关注的人

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