- 博客(55)
- 资源 (14)
- 收藏
- 关注
原创 Linux下使用Jenkins+Git+Maven+码云搭建自动化部署,可远程部署jar和war
写在前面: 本教程为2台全新阿里云服务器CentOS 6.8(以下称搭建Jenkins的为第1台服务器,可访问项目工程的为第2台服务器,以免混淆,没有说明的都是在第1台服务器root目录上操作,记得添加端口安全组和关闭防火墙),git仓库使用的是码云。 整个教程包括了jdk、tomcat、Git、Maven、Maven私服、Jenkins、zookeeper等的搭建,全部代...
2018-04-24 22:18:36 7951 2
原创 ElasticSearch系列一:了解和安装ES、Kibana页面可视化
一、概述(简称ES) 是基于Lucene的搜索服务器,基于RESTful web接口。 分布式、高性能、高可用、可伸缩的搜索和分析系统。 面向文档的搜索分析引擎。 ES会自动建立index和type,不需要提前创建,而且es默认会对document每个field都建立倒排索引。二、ES概览 核心知识点:工作原理、文档管理、索引管理、搜索、聚合分析、分词、数据建模、Java API。深入和细节...
2018-04-09 23:15:19 5898 1
原创 Springboot接口、入参、出参使用字节流传输数据,使用协议proto序列化
springboot使用protobuf协议序列化,网上找了半天没找到满意的结果,其实不用设置contentType,入参、出参均使用字节流形式。对于字节流可以自己在入参增加解密算法,出参增加加密算法。
2023-05-25 17:16:05 1517
原创 markdown-viewer-3.9浏览器插件无法识别图片问题解决
解决方式:修改源文件中,全量替换 \ 为 / 使用markdown-viewer-3.9插件,电脑是win7,死活访问不了图片,F12或审查元素发现图片路径不对,全量替换反斜杠为斜杠后,发现图片全部可以识别了。...
2021-05-09 17:44:02 1544 1
原创 面试系列二:JavaWeb框架(spring、springmvc、mybatis、springboot、SpringCloud、dubbo)
1.springMVC的流程(1)用户发送请求至前端控制器DispatcherServlet(2)DispatcherServlet收到请求调用处理器映射器HandlerMapping。(3)处理器映射器根据请求ur1找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet。(4)DispatcherServlet通过HandlerAdap...
2019-04-08 14:35:03 1035 1
原创 面试系列一:Java基础
一、查看源码//todo二、多线程和锁//todo三、集合//todo四、JVM//todo2.性能调优和问题查找五、网络七层协议//todo六、tcp和udp和http//todo七、网络Netty和NIO//todo八、JDK1.8新特性//todo...
2019-04-08 14:33:55 254
原创 ElasticSearch系列十二:掌握ES使用Java API
一、Java连接ElasticSearch6.x版本(可整合到spring中) <dependencies> <!-- ES --> <dependency> <groupId>org.elasticsearch</groupId> <artifa...
2018-06-18 13:38:28 8476 1
原创 SpringBoot2.x系列二:整合第三方组件Mybatis、JPA、Redis、Elasticsearch、ActiveMQ、Kafka、Logback
一、整合Mybatis及事务(1)加入依赖<!-- 引入starter--><dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version&g
2018-06-18 13:32:32 4195
原创 SpringBoot2系列一:基础入门
一、概述Spring Boot设计目的是用来简化新Spring应用的初始搭建以及开发过程。Spring Boot并不是对Spring功能上的增强,而是提供了一种快速使用Spring的方式。二、特性 ①创建独立的Spring应用程序 ②嵌入的Tomcat,无需部署WAR文件 ③简化Maven配置 ④自动配置Spring ⑤提供生产就绪型功能,如指标,健康检查和外部配置 ⑥开箱即用,没有代码生成,也无...
2018-06-13 21:58:01 7177
原创 Java任务调度
1.Spring任务调度之Spring-Task步骤:①配置文件中: xmlns:task="http://www.springframework.org/schema/task" http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.2.xsd <...
2018-06-13 21:38:52 1265
原创 SpringMVC、SpringBoot、Dubbox跨域
1.跨域描述:当两个应用协议、主机地址(或域名)、端口其中有一项不同,则认为他们的域不同的,例如: http://cas.pinyougou.com http://cart.pinyougou.com http://192.168.0.130/aaa http://192.168.0.135/aaa http://192.168.0.130/aaa https://192.168.0.130/...
2018-06-13 21:36:43 1430
原创 ElasticSearch系列十一:掌握ES使用地理位置
一、geo point地理位置数据类型1.建立geo_point类型的mappingPUT /my_index { "mappings": { "my_type": { "properties": { "location": { "type": "geo_point" } } } }}2.写入geo_point的3种方法PUT my_index/my_type/1{
2018-05-31 19:55:28 7501 1
原创 ElasticSearch系列十:ES底层原理探秘
一、ES基于_version进行乐观锁并发控制 post /index/type/id/_update?retry_on_conflict=5&version=6 ①内部_version版本号: 第一次创建document的_version版本号为1,以后每次对这个document修改或删除操作,_version自动加1。 同时带上数据的版本号,确保es中数据的版本号,跟客户端中的...
2018-05-30 21:57:08 7003 1
原创 ElasticSearch系列九:掌握ES相关特性
一、ES分布式的特性1.对复杂分布式机制的透明隐藏特性:分片机制集群发现机制shard负载均衡shard副本请求路由集群扩容shard重分配2.增减或减少节点时的数据rebalance 保持负载均衡3.master节点 创建或删除索引 增加或删除节点4.节点对等的分布式架构 节点对等,每个节点都能接收所有的请求 自动请求路由 响应收集二、shard和replica机制①index包含多个shard...
2018-05-30 20:40:35 5334
原创 ElasticSearch系列八:掌握ES数据建模
1.将所有有关联关系的数据,放在一个doc json类型数据中。冗余数据,将可能会进行搜索的条件和要搜索的数据,放在一个doc中。一般来说,对于es这种NoSQL类型的数据存储来讲,都是冗余模式 { "deptId": "1", "name": "研发部门", "desc": "负责公司的所有研发项目", "employees": [ { "
2018-05-30 19:48:13 6006 1
原创 ElasticSearch系列七:深入ES聚合数据分析
一、聚合操作内部原理1.正排索引(doc value)的聚合内部原理①index-time生成PUT/POST的时候,就会生成doc value数据,也就是正排索引②核心原理与倒排索引类似正排索引,也会写入磁盘文件中,然后os cache先进行缓存,以提升访问doc value正排索引的性能如果os cache内存大小不足够放得下整个正排索引,doc value,就会将doc value的数据写入...
2018-05-30 19:46:05 8999
原创 ElasticSearch系列六:深入ES结构化搜索
一、搜索条件的权重boost 默认情况权重都是1,可以将某个搜索条件的权重加大,此时当匹配这个搜索条件和匹配另一个搜索条件的document,计算relevance score时,匹配权重更大的搜索条件的document,relevance score会更高,也就会优先被返回回来。 需求:搜索标题中包含java的帖子,同时呢,如果标题中包含hadoop或elasticsearch就优先搜索出来,同...
2018-05-29 23:02:45 3827
原创 ElasticSearch系列五:掌握ES使用IK中文分词器
一、内置分词器的介绍例:Set the shape to semi-transparent by calling set_trans(5)standard analyzer(默认): set, the, shape, to, semi, transparent, by, calling, set_trans, 5simple analyzer: set, the, shape, to, sem...
2018-05-29 20:56:36 20741
原创 ElasticSearch系列四:掌握ES聚合数据分析
1.两个核心概念 bucket:一个数据分组,类似数据库分组group by metric:对一个数据分组执行的统计,常见的数据分析的metric操作有count,avg,max,min,sum2.有分词的字段需要field的fielddata属性设置为truePUT /ecommerce/_mapping/product{ "properties": { "tags": { "type":...
2018-05-29 20:52:04 5102 1
原创 JVM(二)性能调优
一、常见线上问题内存泄露某个进程突然cpu飙升线程死锁响应变慢二、问题定位 一般会基于数据收集来定位,而数据的收集离不开监控工具的处理,比如:运行日志、异常堆栈、GC日志、线程快照、堆快照等。经常使用恰当的分析和监控工具可以加快我们的分析数据、定位解决问题的速度。三、JVM常见监控指令 ①jps:查看java进程信息 -q 不输出类名、Jar名和传入main方法的参数 -l 输出main类或J...
2018-05-28 21:45:20 1482
原创 JVM(一)内存分布
一、JVM概述 ①所有的java代码都是在虚拟机中运行的。 ②一次编译,到处运行。JVM可以和不同的操作系统交互。Java是一门跨平台性语言。二、JVM、JDK 、JRE区别 JDK:(Java Development Kit) 是Java语言的软件开发工具包。 JRE:在JDK的安装目录下有一个jre目录,里面有bin和lib两个文件夹,可以认为bin里的就是JVM,lib中则是jvm工作所需要...
2018-05-28 20:55:40 2411 1
原创 Spring中切面捕获自定义异常
pom.xml: <properties> <!-- base setting --> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.jdk>1.7</proje...
2018-04-24 22:01:30 10896
原创 Java自定义注解
一、概述jdk5之后提供了一个特性,和类、接口同级。注解本质就是一个接口,接口中可以有常量和抽象方法,抽象方法在注解中就称之为注解属性。示例:@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)public @interface AccessTokenVerify { AccessTokenVerifyEnum valu...
2018-04-24 21:51:27 1352
原创 Java反射
一、类加载器1.类的加载 当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化。 ①加载 就是指将class文件读入内存,并为之创建一个Class对象。 任何类被使用时系统都会建立一个Class对象 ②连接 验证 是否有正确的内部结构,并和其他类协调一致 准备 负责为类的静态成员分配内存,并设置默认初始化值 解析 将类的二进制数据...
2018-04-24 21:42:34 1320
原创 Java自定义泛型
一、概述自定义泛型的作用是用来规定一个类, 接口或方法所能接受的数据的类型。泛型中没有多态的概念,两边的数据必须要一致,或者只写一边的泛型类型(兼容老版本)。二、泛型的好处①将运行时出现的错误提前到了编译时②避免了类型强转的麻烦三、自定义泛型方法 ①定义格式:修饰符 <自定义泛型>返回值类型 函数名(自定义泛型 变量名){ }②注意: a. 在方法上的自定义泛型的具体数据类型是...
2018-04-24 21:32:52 5486
原创 Java注解教程、学习笔记
一、概述jdk5之后提供了一个特性,和类、接口同级注解本质就是一个接口,接口中可以有常量和抽象方法,抽象方法在注解中就称之为注解属性示例:@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)public @interface AccessTokenVerify { AccessTokenVerifyEnum value(...
2018-04-20 14:39:27 1730
原创 dubbox跨域请求、Cookie
Dubbox配置CORS服务来解决跨域问题,这里不涉及jsonp跨域方式,一般服务端接口返回的数据都不是jsonp形式。1、创建CorsResponseFilter类package com.neusoft.filter;import com.neusoft.util.PropertiesUtils;import javax.ws.rs.container.ContainerRequestC...
2018-04-16 22:18:07 2295
原创 ECMAScript 6新特性(ES6)
一、ES6的三种声明方式var:variable的简写,变量的意思。let:声明局部变量。const:声明常量。二、解构赋值①概述:ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构。等号左边和等号右边的形式要统一,如果不统一解构将失败。 数组解构: 第一种:let [a,b,c]=[1,2,3]; 第二种:let [a,[b,c],d]=[1,[2,3],4]; 第...
2018-04-16 17:22:16 1435
原创 jQuery教程、笔记
一、概述 John Resig在2006年1月发布的一款跨主流浏览器的JavaScript库,简化JavaScript对HTML操作。 使用: <script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.js"></script>二、jQuery的功能(API) 选择器...
2018-04-16 11:07:18 1433
原创 多线程教程、学习笔记
一、线程与进程的区别把操作系统的多个任务称为进程(Process),而程序中的多任务则称为线程。一个程序运行后至少有一个进程,一个进程中可以包含多个线程。二、程序运行原理分时调度 所有线程轮流使用CPU的使用权,平均分配每个线程占用CPU的时间。抢占式调度 优先让优先级高的线程使用CPU,如果线程的优先级相同,那么会随机选择一个(线程随机性),Java使用的为抢占式调度。三、创建线程 方式一...
2018-04-13 21:39:58 1955
原创 Java集合教程、学习笔记
一、常用集合概览单例集合:----| Collection 单列集合根接口---------| List 实现List接口具备的特点:有序、可重复。-------------| ArrayList 底层用Object数组实现,特点:查询快、增删慢。-------------| LinkedList 底层用链表结构实现的,特点:查询慢、增删快。-------------| Vector ...
2018-04-13 21:19:47 1795
原创 正则表达式
一、概述正则表达式(英语:Regular Expression,在代码中常简写为regex)。正则表达式是一个字符串,使用单个字符串来描述、用来定义匹配规则,匹配一系列符合某个句法规则的字符串。在开发中,正则表达式通常被用来检索、替换那些符合某个规则的文本。二、方法 matches 匹配 split 切割 replaceAll 替换 查找并获取: Pattern...
2018-04-13 16:27:44 1280
原创 centos6.8安装MySQL 5.6,可腾讯云、阿里云
================== 安装MySQL 5.6 ===============2.下载编译包wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.35-linux-glibc2.5-x86_64.tar.gztar xvf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz3.复制到...
2018-04-13 13:35:44 1402
原创 Redis入门、安装教程
一、概述Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,也叫非关系型型数据库,并提供多种语言的API。关系型数据库:以二维表形式存储数据,如:MySQL、Oracle、SQLite非关系型数据库: 以键值对形式存储数据(key, value形式),如Redis、MongoDb、HBase优点:存取速度快,官方称读取速度会达到30万次...
2018-04-11 22:39:55 1283
原创 XML(可扩展标记语言)教程
1.XML的作用 ①描述带关系的数据(作为软件的配置文件): 包含与被包含的关系 ②作为数据的载体(存储数据,小型的"数据库")2.需注意的语法 ①xml标签名称区分大小写。 ②xml标签名不能以数字开头 ③在一个xml文档中,有且仅有一个根标签 ④转义字符 " &quot; & &amp; 原样输出 <...
2018-04-11 22:35:33 2668
原创 Spring框架入门教程
一、概述Spring是一个分层的JavaSE/EEfull-stack(一站式) 轻量级开源框架。Spring的核心是控制反转IOC和面向切面AOP。Spring解决的是业务逻辑层和其他各层的松耦合问题。Spring可以解决对象创建以及对象之间依赖关系的一种框架Spring可以和其他框架一起使用。二、Spring4示例(待续)三、组件/框架设计侵入式设计 引入了框架,对现有的类的结构有影响;即需要...
2018-04-10 21:03:15 1412
原创 cause: Failtodecoderequestdueto: RpcInvocation
错误记录:dubbo报错之坑,cause: Failtodecoderequestdueto: RpcInvocation。首先看看实体对象是否序列化了,其次看dubbo版本是否一致,我就因为这个被坑了一下午。因为某些原因,本地maven仓库下了dubbo其他版本,导致序列化与反序列化不一致出错,解决方式:把本地maven仓库的dubbo删掉,让它重新下载。...
2018-04-10 18:09:53 5452 3
原创 ElasticSearch系列三:掌握ES结构化搜索
一、ES分布式的特性对复杂分布式机制的透明隐藏特性: 分片机制 cluster discovery(集群发现机制) shard负载均衡 shard副本 请求路由 集群扩容 shard重分配增减或减少节点时的数据rebalance 保持负载均衡master节点 创建或删除索引 增加或删除节点节点对等的分布式架构 节点对等,每个节点都能接收所有的请求 自动请求路由 响应收集二、shard和replic...
2018-04-09 23:32:19 2567
spring整合redis案例(jedis)
2018-04-11
Elasticsearch的Head插件
2018-04-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人