自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(129)
  • 资源 (24)
  • 收藏
  • 关注

原创 请求结束回调事件 ServletRequestHandledEvent

自定义监听器XxxxListener类,实现ApplicationListener接口,监听ServletRequestHandledEvent事件。@Slf4j@Override// 返回请求的URL。// 返回请求来源的IP地址。// 以毫秒为单位返回请求的处理时间。// 返回请求的HTTP方法(通常是GET或POST)。// 返回响应的HTTP状态码。

2024-04-28 23:54:22 424

原创 自定义注解加反射实现数据类型转换

自定义注解加反射实现数据类型转换

2024-04-12 20:30:02 469

转载 MySQL数据库设计规范

数据库命名规范1、所有数据库对象名称必须使用小写字母并用下划线分割。2、所有数据库对象名称禁止使用MySQL保留关键字3、数据库对象的命名要能做到见名识义,并且最好不要超过32个字符。4、临时表必须以tmp为前缀并以日期为后缀。5、备份库,备份表必须以bak为前缀并以日期为后缀。6、所有存储相同数据的列名和列类型必须一致。数据库基本设计规范1、所有表必须使用Innodb存储引擎。2、数据库和表的字...

2018-06-06 22:23:16 535 1

原创 状态模式 State

核心:用于解决系统中复杂对象的状态转换以及不同状态下行为的封装问题。结构:Context环境类: 环境类中维护一个State对象,定义了当前的状态。State抽象状态类:ConcreteState具体状态类: 每一个类封装了一个状态对应的行为。UML结构图示例代码:房间的状态房间的状态:空闲、预定、入住State.java 状态对应的行为/** * 状态 * * @aut

2017-09-24 11:51:18 1027

原创 Document以及Document CRUD操作

简单的集群管理(1) 快速检查集群的健康状况es提供了一套API,叫做cat api,可以查看es中各种各样的数据GET _cat/health查看集群的健康状况“status” : “yellow”green:每个索引的primary shard和replica shard 都是active状态的。yellow:每个索引的primary shard都是active状态的,但是部分replica

2017-08-29 21:56:20 801

原创 在windows上安装和启动Elasticseach

1、安装JDK,至少是1.8以上版本2、下载和解压缩Elasticsearch的安装包下载地址:https://www.elastic.co/downloads/elasticsearch解压之后的目录结构:3、启动Elasticsearch运行bin目录下的elasticsearch.bat4、检查ES是否启动成功访问:http://localhost:9200?prettyname:Node(节

2017-06-20 21:53:50 6709

原创 Netflix Zuul 简介

什么是Zuul?Zuul是从设备和网站到Netflix流应用的后端的所有请求的前门。 作为边缘服务应用程序,Zuul旨在实现动态路由,监控,弹性和安全性。 它还可以根据需要将请求路由到多个Amazon Auto Scaling Groups。为什么我们建立Zuul?Netflix API流量的数量和多样性有时会导致生产问题迅速而且没有警告。 我们需要一个允许我们快速改变行为以便对这些情况作出反应的系

2017-06-19 13:48:24 6309

原创 Elasticsearch 核心概念

1、lucene和Elasticsearch的前世今生2、elasticsearch的核心概念(1)、Near Realtime (NRT):近实时,两个意思,从写入数据到数据可以搜索到有一个小延迟(大概1秒);基于es执行搜索和分析可以达到秒级。(2)、Cluster:集群,包含多个节点,每个节点属于哪个集群,是通过一个配置(集群名称,默认是elasticsearch)来决定,对于中小型应用来说,

2017-06-16 22:26:47 562

原创 什么是Elasticsearch

1、什么是搜索2、如果用数据库做搜索会怎么样3、什么是全文搜索和Lucene倒排索引4、什么是Elasticsearch

2017-06-15 22:19:40 1663

原创 Thymeleaf 标准表达式语法

使用和显示变量@Controllerpublic class HomeController { @RequestMapping("home") public String toHome(Model model){ model.addAttribute("home", "这是首页"); return "home"; }}<html xmlns:

2017-05-26 13:57:21 9479

原创 在SpringMVC 中使用 Thymeleaf 模板引擎

Thymeleaf提供了一组Spring集成,允许您将其用作Spring MVC应用程序中全面替代JSP的功能。Maven依赖 <!-- thymeleaf-spring4 --> <dependency> <groupId>org.thymeleaf</groupId> <artifactId>thymeleaf-spr

2017-05-25 16:15:03 12677 4

原创 Feign Hystrix 支持

如果Hystrix在类路径上,feign.hystrix.enable=true,Feign将用断路器包装所有方法。Hystrix支持回退的概念:当电路断开或出现错误时执行的默认代码路径。要为给定的@FeignClient启用回退,请将fallback属性设置为实现回退的类名。示例代码:UserFeignClientHystrix 需要实现UserFeignClientUserFeignClient

2017-05-22 22:00:51 4402

原创 解决Feign第一次请求timeout问题

java.util.concurrent.TimeoutException: null at com.netflix.hystrix.AbstractCommand.handleTimeoutViaFallback(AbstractCommand.java:980) ~[hystrix-core-1.5.6.jar:1.5.6] at com.netflix.hystrix.Abst

2017-05-15 20:53:35 20242 3

原创 FeignClient 代码示例

Client端UserController@RestController@RequestMapping("userClient")public class UserController { @Autowired private UserClient userClient; @RequestMapping(value = "getUser/{userId}", method =

2017-05-07 11:18:30 20223 4

原创 使用配置文件自定义Ribbon的负载均衡

在UserCleint端,添加配置项springcloud-userservcie.ribbon.NFLoadBalancerRuleClassName=com.netflix.loadbalancer.RandomRule

2017-05-03 22:12:32 3333

原创 自定义Ribbon的负载均衡

参考:http://www.idouba.net/netflix-source-ribbon-rule/?utm_source=tuicool&utm_medium=referralSpring Cloud还可以通过使用@RibbonClient声明其他配置(在RibbonClientConfiguration之上)来完全控制客户端。 例:/** * 自定义Ribbon的负载均衡 * */@

2017-05-02 22:14:14 5407

原创 Shiro Test

创建Maven工程添加Maven依赖 <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.10</version> <scope>test</scope> </depe

2017-04-22 14:12:55 877

原创 RocketMQ 部分 配置项

# 所属集群名字brokerClusterName=rocketmq-cluster# broker名字,注意此处不同的配置文件填写的不一样brokerName=broker-1|broker-b# 0 表示Master, > 0 表示slavebrokerId=0# nameServer 地址,分号分割namesrvAddr=rocketmq-nameserver1:9876;rocket

2017-04-18 10:19:01 3994

原创 SpringCloud Config 加密和解密 (对称)

加密和解密Spring Cloud具有用于在本地解密属性值的环境预处理器。 它遵循与Config Server相同的规则,并通过加密具有相同的外部配置。 因此,您可以使用{cipher} *形式的加密值,只要有一个有效的密钥,那么在主应用程序上下文获取环境之前,它们将被解密。 要在应用程序中使用加密功能,您需要在您的类路径中包含Spring Security RSA(Maven协调“org.spri

2017-04-12 22:15:45 5993 3

原创 Elasticsearch windows 安装

1、jdk环境2、解压缩安装包3、启动双击执行 elasticsearch.bat4、访问http://localhost:9200,查看启动状态

2017-04-12 15:22:09 657

原创 Elasticsearch 简介

Elasticsearch术语及概念1、索引词 (term)2、文本 (text)3、分析 (analysis)4、集群 (cluster)5、节点 (node)6、路由 (routing)7、分片 (shard)8、主分片 (primary shard)9、副本分片 (replica shard)10、复制 (replica)11、索引 (index)12、类型 (type)13、文档 (docu

2017-04-12 14:07:30 699

原创 MongoDB Replica Set (复制集)

Replica Set 架构图当主节点挂掉之后复制集的搭建过程(写的比较简陋)1、在MongoDB的安装目录下新建replicSet文件夹,以及三个以端口号命名的文件夹2、在replicSet目录下的27000准备几个文件以及文件夹1)db文件夹 2)27000.conf 启动服务时用到的配置文件 3)mongod启动进程27001、27003也需要准备相同的文件以及文件夹3、修改配置文件por

2017-04-11 16:32:03 5014

原创 MongoDB 比较运算符 $eq$gt

$eq = (等于)$gt > (大于)$gte >= (大于等于)$lt < (小于)$lte <= (小于等于)$ne != (不等于)$in in (in)$nin !in (not in)参考:https://docs.mongodb.com/manual/reference/operator/query/$eq 语法:{ <field>: { $eq: <value> }

2017-04-10 17:04:41 12862

原创 Redis 集群搭建完之后

Redis 数据分区Redis Cluster采用虚拟槽分区,所有的键根据哈希函数映射到0~16383整数槽内,计算公式:slot = CRC16(key) & 16383。每个节点负责维护一部分槽以及槽所映射的键值数据。Redis 虚拟槽分区的特点:1、解耦数据和节点之间的关系,简化了节点扩容和收缩难度。2、节点自身维护槽的映射关系,不需要客户端或者代理服务维护槽分区元数据。3、支持节点、槽、键之

2017-04-10 10:23:04 711

原创 使用Shiro 实现登录

项目的目录结构1、login.jsp<script type="text/javascript"> function doLogin(){ var username = $("#username").val(); var password = $("#password").val(); $.ajax({ type: "

2017-04-08 19:19:44 8388 1

原创 Elasticsearch 简介

Elasticsearch的优点1、横向可扩展性:只需要增加一条服务器,做一些配置,启动一下Elasticsearch进程就可以并入集群。2、分片机制提供更好的分布性:同一个索引分成多个分片(sharding),这点类似于HDFS的块机制;分而治之的方式可提升处理效率。3、高可用:提供复制(replica)机制,一个分片可以设置多个复制,使得某台服务器在宕机的情况下,集群仍然可以照常运行,并会把服务

2017-04-07 13:02:43 634

原创 Spring Cloud Config

为什么要统一管理配置?1、集中管理 2、不同环境不同配置 3、运行期间动态调整配置 4、自动刷新简介Spring Cloud Config为分布式系统外部化配置提供了服务器端和客户端的支持,它包括Config Server和Config Client两部分。由于Config Server和Config Cleint都实现了对Spring Environment和PropertySource抽象

2017-04-04 21:46:03 5123 2

原创 redis 集群的搭建

在redis3.0以前,提供了Sentinel工具来监控各Master的状态,如果Master异常,则会做主从切换,将slave作为Master,将Master作为slave。其配置也是稍微的复杂,且各方面表现一般。现在redis3.0已经支持集群的容错功能,并且非常简单。下面我们来进行学习redis3.0如何搭建集群。 搭建集群至少要三个Master第一步创建一个文件夹redis-cluster

2017-03-28 17:08:42 508

原创 Redis Sentinel 配置优化

Redis安装目录下有一个sentinel.conf,是默认的sentinel节点配置文件,下面就以它作为例子进行说明:port: Sentinel节点的端口号。dir: Sentinel节点的工作目录。1)sentinel monitor sentinel monitor <master-name> <ip> <port> <quorum>quorum : 代表要判定主节点最终不可达所需要

2017-03-28 10:25:03 1022

原创 Redis Sentinel

Redis Sentinel 的高可用    Redis Sentinel 是一个分布式架构,其中包含若干个Sentinel节点和Redis 数据节点,每个Sentinel节点会对数据节点和其余Sentinel节点进行监控,当它发现节点不可达时,会对节点做下线标识。如果被标识的是主节点,它还会和其他Sentinel节点进行“协商”,当大多数Sentinnel节点都认为主节点不可达时,它们会选举出一个

2017-03-23 13:02:55 672

原创 Redis 主从复制

配置复制配置复制的方式有以下三种:1)在配置文件中加入 slaveof {masterHost} {masterPort}随redis启动生效2)在redis-server启动命令后加入 –slaveof {masterHost} {masterPort}生效3)直接使用命令 :slaveof {masterHost} {masterPort}生效主从节点复制成功建立之后,可以使用info repl

2017-03-22 15:36:11 423

原创 Java客户端Jedis

使用Jedis的Java客户端maven依赖 <!-- jedis --> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version> </

2017-03-21 17:11:24 425

原创 MongoDB 聚集分析

聚集分析聚集操作是对数据进行分析的有效手段。MongoDB主要提供了三种对数据进行分析计算的方式:1、管道模式聚集分析 2、MapReduce聚集分析 3、简单函数和命令的聚集分析Aggregation Pipeline聚合管道是用于基于数据处理管道的概念建模的数据聚集的框架。文档进入多级流水线,将文档转换为聚合结果。聚合管道提供map-reduce的替代方案,并且可以是用于聚合任务的优选解决方

2017-03-16 18:18:05 699

原创 SS(Spring + SpringMVC)

使用Maven构建项目添加依赖的Jar包修改web.xml文件<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee

2017-03-15 13:40:00 653

原创 SSM (Spring+SpringMVC + MyBatis)

构建Maven项目修改web.xml配置文件<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee

2017-03-14 17:53:55 472

原创 MongoDB GridFS 分布式文件存储系统

mongofiles命令行工具导入[root@mongodb bin]# ./mongofiles –port 27017 –db mydocs –local /usr/local/01_

2017-03-14 10:35:03 1201

原创 MongoDB 索引

索引的分类Single Field 单键索引Compound Index 复合索引Multikey Index 多键值索引Geospatial Index 地理索引Text Indexes 全文索引Hashed Indexes hash索引Unique Indexes 唯一索引Sparse Indexed 稀疏索引创建索引db.collection.createIndex( <key and ind

2017-03-13 16:57:17 498

原创 Redis 持久化 AOF

以日志的形式来记录每个写操作,将Redis执行过的所有写指令记录下来(读操作不记录),只允许追加文件不可以改写文件,redis启动之初会读取该文件重新构建数据,换言之,redis重启的话就根据日志文件的内容将写指令从前到后执行一次以完成数据的恢复工作。相关的配置项:appendonly:appendfilename:appendfsync:       always : 同步持久化,每次发生数据变

2017-03-10 15:58:25 461

原创 Redis 持久化 RDB AOF

Redis支持两种方式的持久化,一种寺RDB(Redis DataBase)方式,另一种是AOF(Append Only File)方式。 RDB会根据指定的规则“定时”将内存中的数据存储在硬盘上,AOF,在每次执行命令后将命令本身记录下来。在指定的时间间隔内将内存中的数据集快照写入磁盘,也就是行话讲的Snapshot快照,它恢复时是将快照文件直接读到内存里。Redi会单独创建(fork)一个子进

2017-03-09 13:23:09 400

原创 redis配置文件 redis.conf (后续不断更新)

Units单位1、配置大小单位,开头定义了一些基本的度量单位,只支持bytes,不支持bit 2、对大小写不敏感Includes包含GENERAL 通用的daemonize yespidfile /var/run/redis_6379.pidport 6379tcp-backlog 511maxmemory-policy noeviction1)volatile-lru : 使用LRU算法移除ke

2017-03-07 15:45:47 1472

jeeboot-admin

一个ssh的脚手架,已经初步的搭建完(Spring + SpringMVC + Hibernate),使用javaConfig的配置方式

2016-12-23

02-SpringMVC基础及应用

02-SpringMVC基础及应用

2014-03-19

01-springMVC概述和基础配置

01-springMVC概述和基础配置

2014-03-19

遍历DO元素

遍历Dom元素

2013-03-24

jQuery选择器

jQuery选择器

2013-03-24

VB基础语法

VB基础语法知识点

2013-03-24

java版mspaint

java做的mspaint程序,简单小练习

2013-01-04

聊天小程序

java防QQ聊天,简单一对多,聊天小程序!

2013-01-04

java做的记事本

java简单小练习,java做的记事本小练习

2013-01-04

java版房产中介管理系统

java做的C/s架构的房产中介管理系统

2013-01-03

java 技术javaSE

Java 的安全模型可以追溯到该平台的早期时代,当时人们主要将它看作一种增强用户体验的浏览器扩展机制。执行的 Java 代码可以从各种源派生,而其中一些的来源是未知的或者不可靠的。相应地,该平台的安全性最初主要关注的是解决验证被执行的代码可信任的问题,而且整个游戏围绕着在浏览器中执行 applet

2012-11-01

java技术javaSE

Java 的安全模型可以追溯到该平台的早期时代,当时人们主要将它看作一种增强用户体验的浏览器扩展机制。执行的 Java 代码可以从各种源派生,而其中一些的来源是未知的或者不可靠的。相应地,该平台的安全性最初主要关注的是解决验证被执行的代码可信任的问题,而且整个游戏围绕着在浏览器中执行 applet

2012-11-01

javaSEjava技术

Java 的安全模型可以追溯到该平台的早期时代,当时人们主要将它看作一种增强用户体验的浏览器扩展机制。执行的 Java 代码可以从各种源派生,而其中一些的来源是未知的或者不可靠的。相应地,该平台的安全性最初主要关注的是解决验证被执行的代码可信任的问题,而且整个游戏围绕着在浏览器中执行 applet

2012-11-01

java基础javaSE

Java EE是一种利用Java 2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。J2EE技术的基础就是核心Java平台或Java 2平台的标准

2012-11-01

深入理解hibernate映射文件

Hibernate倡导低侵入式的设计,完全采用普通的java对象(POJO)编程,不要求PO继承Hibernate的某个超类或实现Hibernate的某个接口。Hibernate充当了面向对象的程序设计语言和关系数据库之间的桥梁,Hibernate允许程序开发者采用面向对象的方式来操作关系数据库。

2012-06-12

深入理解持久化对象

Hibernate倡导低侵入式的设计,完全采用普通的java对象(POJO)编程,不要求PO继承Hibernate的某个超类或实现Hibernate的某个接口。Hibernate充当了面向对象的程序设计语言和关系数据库之间的桥梁,Hibernate允许程序开发者采用面向对象的方式来操作关系数据库。

2012-06-12

深入hibernate配置文件

Hibernate倡导低侵入式的设计,完全采用普通的java对象(POJO)编程,不要求PO继承Hibernate的某个超类或实现Hibernate的某个接口。Hibernate充当了面向对象的程序设计语言和关系数据库之间的桥梁,Hibernate允许程序开发者采用面向对象的方式来操作关系数据库。

2012-06-12

解析一个简单的hibernate

  Hibernate倡导低侵入式的设计,完全采用普通的java对象(POJO)编程,不要求PO继承Hibernate的某个超类或实现Hibernate的某个接口。Hibernate充当了面向对象的程序设计语言和关系数据库之间的桥梁,Hibernate允许程序开发者采用面向对象的方式来操作关系数据库。

2012-06-12

hibernate的基本用法

  Hibernate倡导低侵入式的设计,完全采用普通的java对象(POJO)编程,不要求PO继承Hibernate的某个超类或实现Hibernate的某个接口。Hibernate充当了面向对象的程序设计语言和关系数据库之间的桥梁,Hibernate允许程序开发者采用面向对象的方式来操作关系数据库。

2012-06-12

ant 管理整个项目的编译和运行

ant 管理整个项目的编译和运行

2012-06-12

Android开发

这是我自己做的技术文档,有兴趣的可以拿来LOOKLOOK

2012-03-08

使用foreach循环

java中foreach循环的使用方法!

2011-03-02

使用Iterator接口遍历集合元素

Iterator接口在集合中的使用方法!

2011-03-02

空空如也

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

TA关注的人

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