- 博客(36)
- 收藏
- 关注
原创 用java来实现对zookeeper节点添加、更新、删除的监听(非常的浅显易懂,代码可以跑通)
一、首先说明的一个非常重要的点:使用zookeeper第一件事就是要连接zookeeper,那么连接就是耗时间的。先做一个例子:比如你写了一段代码,这段代码主要干了是三件事:第一件事连接zookeeper、第二件事操作zookeeper(比如更新删除节点了)、第三件事你的业务代码并且这些业务代码和zookeeper一点关系都没有。那么问题来了 第一件事连接zookeeper这是非常消耗时间的,...
2019-07-12 16:22:36
1973
原创 maven 如何使用国内的镜像仓库解决下载jar包慢的问题
1.进入 Mave 的安装目录,进入 on 目录,编辑 setti gs.xml2.找到 mirrors 元素,添加如下仓库镜像<mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun . com/nexus/conte...
2019-05-21 10:09:19
414
原创 jav 中 this和super
今天看java核心技术卷一 看到了这样的一句话:有些人认为super和this引用是类似的概念,实际上,这样比较并不恰当。这是因为super不是一个对象的引用,不能将super赋给另一个对象变量。它只是一个指示编译器调用超类方法的特殊关键字。...
2019-05-07 13:36:14
1038
原创 对java 语言 跨平台的理解
在计算机的世界里,计算机只认识0和1 ,所以无论什么语言都会最终被翻译成0 和1 ,才能被计算机执行, 像java 语言,它是高级语言,而非二进制语言,所以要想计算机认识我们写的java代码,他必须经过编译成0和1, 那么怎么才能把java 代码编译成0 和 1 呢? 只需经过两步:前端编译:那么什么是前端编译呢?首先我们在eclipse生写一个端java 代码,那么这个jav...
2019-04-11 09:16:05
192
原创 java 插入排序
import java.util.Arrays;/**插入排序思路 34 8 64 51 32 21插入排序的总体的思路是 保证 0 - p位置是有序的第一遍 : p=1 8 和 34 比较 8 34 64 51 32 21第二遍 : p=2 64 和 8、34 比较 位置不变 8 34 64 51 32 21第三遍 : p=3 51 和 ...
2019-03-20 15:25:16
313
原创 Centos7 现在安装rabbitmq
Centos7 现在安装rabbitmq1.第一步安装erlang语言环境yum install ncurses-devel 安装依赖tar xf tp_src_21.0.tar.gz 解压cd opt_src_21.0 进入这个文件夹./configure --prefix=/usr/local/erlang 安装到指定的文件夹make 编译make install...
2019-01-30 10:15:34
95
原创 spring boot 整合mybatis 简单整洁
spring boot 整合 mybatis1.在pom.xml 中添加 mybatis 相关依赖<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-...
2019-01-23 10:04:28
514
原创 python 中全局变量、局部变量、静态变量,实例变量的区别和理解
python 中全局变量、局部变量、静态变量,实例变量的区别和理解在python中一个XXX.py 文件可能有多个类所以要严格区分这些变量全局变量: 在这个模块内也就是在整个.py 文件里,并且在所以类和函数的外边局部变量: 在函数内或者在类方法内(不要加self修饰 self 表示当前类的对象)静态变量: 在类内,当不再类的方法里(学过java的人可以理解为类的属性,这是一个...
2019-01-18 09:17:23
3842
原创 http通信 的理解python版
import socketdef main():# tcp 作为服务器# 1. 创建tcp套接字tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# 2. 作为服务绑定端口 这个端口只负责监听tcp_server_socket.bind(("", 7791))# 3. socket 套接字设置为监...
2019-01-15 13:46:53
340
原创 数据库视图
mysql 视图问题对于复杂的查询, 往往是多个数据表进行关联查询得到的,如果数据库因为需求等原因发生了改变,为了保证查询的数据与之前的相同,则需要在多个地方进行修改,维护起来非常麻烦。什么是视图通俗的讲,视图就是一条select 语句执行后返回的结果视图就是对若干个基本表的引用,一张虚表定义一个视图建议以...
2019-01-11 09:56:06
152
原创 什么是sql 注入
Sql 注入例子:根据商品名称查询商品 sql 语句应该值这样的: 输入 苹果手机select * from goods where goods_name = '苹果手机'但是假设输入 ' or 1=1 or '1 那么sql 语句就变成了这样:select * from goods where goods_name ='' ...
2019-01-11 09:08:05
86
原创 java文件上传代码及其理解
/** * 文件上传 * """ * 我对文件上传代码实现的理解 * 1. 首先我要把文件要指定一个上传的地方 比如:c:/file这个文件夹下 * * 2. 再次我要得到上传文件的文件名称 比如 file1 那么此时这个文件的完整的路径 是 c:/file/file1 * * 3. 那么此时c:/file/file1 就指向了file1 这个文件 那么此时 c:/file/...
2019-01-09 16:18:16
266
原创 正则表达式
正则表达式匹配单个字符. 匹配任意一个字符 除了\n(换行)[] 匹配[]中列举的数字字符\d 匹配数字, 0-9\D 匹配非数字\s 匹配空白 空格键 tab 建\S 匹配非空白\w 匹配单词字符\W 匹配非单词字符匹配多个字符匹配前边字符出现0 次或者多次匹配前边字符出现一次或多次?匹配前边字符出现1次或者0次...
2019-01-03 08:56:53
95
原创 互斥锁(解决多个线程几乎同时修改某个共享数据)
def test1():global g_nummutex.acquire()g_num += 100mutex.release()print(g_num)def test2():global g_num# 上锁 如果之前没有被上锁 ,那么此时上所成功# 如果之间已经被上锁了 那么此时会堵塞在这里 直到锁被解开mutex.acquire()g_num += 100# 解锁...
2018-12-28 16:07:31
954
原创 网络传输协议(UDP和TCP的一些理解)
网络通信UDP1.1 网络通信的概念 两台机器进行通信1.2 ip地址 1.1 什么是地址 飞秋通信能够准确的给想要的人发送消息每个人都有一个唯一的ip地址 ip地址:目的用来标记网络上的一台电脑 1.2 ip地址的作用 ip地址在网络上标识唯一电脑 1.3 查看ip地址 ...
2018-12-27 10:56:53
530
1
原创 java中volatile和synchronized
JMMjava Memory Model并发过程中如何处理可见性,原子性,有序性的问题并发过程中两个关键性的问题a 线程之间如何通信:wait() notify() notifall()a)共享内存 - 隐式通信b) 消息传递 - 显示通信b 线程之间如何同步在共享内存的并发模型中,同步是显示做的 :synchronized在消息传递都并发模型中由于消息的发送必须在消息的接收...
2018-12-24 16:06:38
88
原创 java如何控制线程的顺序
如何控制线程的顺序的执行join方法 : 让主线程等待子线程结束以后才能继续执行Executors.newSingleThreadExecutor():创建这个对象然后调用它的submit方法。这个方法的意思是 把线程放在队列里 先进先出顺序执行。package com.zzy.test;import java.util.concurrent.Executor;import ja...
2018-12-24 15:02:00
155
翻译 一道面试题 消息中间件,怎么解决消息的幂等性(消息怎么防止不被重复消费)
消息中间件中,怎么解决消息的幂等性(消息消费怎么防止不被重复消费。)如果SpringBoot和ActiveMQ集成,代码不抛异常,标识为消费成。ActiveMQ 消费代码抛出异常,就会一直重试(10次)。消费者端抛出异常,怎么解决日志mongdb(json)、redis、数据库日志中有一个标识,生成每发一个报文—对应一个消息ID。处理 消息ID+报文绑定在对应生成一个日志整体消费者代...
2018-12-11 14:32:25
3015
原创 在注册时用md5加盐加密
一、首先写一个工具类 MD5Utilspackage com.zzy.common.utils;import java.security.MessageDigest;public class MD5Util {public final static String MD5(String s) { char hexDigits[] = { '0', '1', '2', '3', '4', '...
2018-11-22 13:59:13
404
原创 spring cloud 基于JWT的token认证实现登录、鉴权(待完善 还没学明白)
一、基于session身份认证的方案()这种方式的不足:1.不能跨实例共享2.对移动端很难支持二、基于token的身份认证方案 这种方式的不足 代码复杂三 、JWT开始写代码实现1.controller登录 2.service用户进行登录 调用onLogin方法生成token...
2018-11-15 09:21:37
3251
原创 SpringCloud学习二之服务注册和服务发现Eureka总结
一、看图二、SpringCloudEureka的核心特性1.Eureka通过相互注册和复制支持高可用2.Eureka支持用户认证3.EurekaClient支持注册表缓存(容错机制)4.Eureka的核心保护模式5.服务提供方提供健康检查信息6.Eureka支持rest协议...
2018-11-08 09:49:05
128
原创 SpringCloud学习二之服务注册和服务发现Eureka入门服务消费者的搭建
创建消费者1.pom文件中添加eureka的岂步依赖2.配置文件添加eureka.client的相关配置server.port=8080#应用的名称spring.application.name=api-getewayeureka.client.service-url.defaultZone=http://127.0.0.1:8666/eureka/3.启动类注解@EnableDis...
2018-11-08 09:25:26
176
原创 SpringCloud学习二之服务注册和服务发现Eureka入门服务提供者的搭建
一、搭建步骤1.pom中添加eureka起步依赖org.springframework.cloudspring-cloud-starter-netflix-eureka-client2.配置文件添加eureka.client及eureka.instance相关配置server.port=8083#服务名称spring.application.name=user#服务注册的地址...
2018-11-06 10:20:13
78
原创 SpringCloud学习二之服务注册和服务发现Eureka入门服务中心的搭建
一、看图说话二、是什么Eureka是一个服务发现组件,基于REST的服务,包含Server和Client三、动手搭建服务架构1.创建Eureka Server步骤1:创建SpringBoot工程,添加eureka-server的起步依赖org.springframework.cloudspring-cloud-starter-netflix-eureka-server步骤2:配...
2018-11-06 10:05:31
86
原创 Spring Cloud 学习一 之SpringCloud介绍
一、什么是Spring Cloud1.先看一下Spring Cloud的技术栈2.Spring Cloud 是一个工具组件集,快速搭建分布式环境的通用模式。3.Spring Cloud是基于Spring Boot开发的,每个组件都是一个起步依赖。4. 组件之间可以整合在一起发挥作用。...
2018-11-06 09:27:14
95
原创 spring boot maven 项目运行会自动更改jdk 版本
1.原因 spring boot 有个默认的jdk版本2.解决maven-compiler-plugin1.81.8这样就可以锁定jdk版本为1.8了
2018-11-02 10:55:58
5299
原创 mvn spring boo工程上线部署到本地步骤
1.首先在web工程的pom.xml 添加配置org.springframework.bootspring-boot-maven-plugincom.mooc.house.HouseApplicationZIPrepackage2. 在当前web工程下执行命令mvn clean package3. 打包成功 进入该web工程的target目录4.执行命令(一...
2018-11-01 09:40:42
131
原创 解决linux启动某应用端口号被占用问题
1.安装net-tooslsyum install net-tools2.查看该端口号的所占进程netstat –apn | grep 8087
2018-10-31 15:19:29
2186
原创 spring boot 整合redis 以一个热门房产为例子
1.添加redis依赖 就是jedisredis.clientsjedis2.9.02.每次点击房屋详情热度加一 调用此方法recommandService.increase(id);//每次点击房屋热度加13.recommandService如何写主要三个方法//redis保存热门房产的keyprivate static final String HOT_HOUSE_K...
2018-10-31 11:00:10
189
原创 spring 拦截器的用法
1.创建 AuthIntercepter并实现spring的HandlerInterceptor接口public class AuthIntercepter implements HandlerInterceptor {@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse httpS...
2018-10-29 14:42:25
169
原创 Nginx的安装步骤
一. gcc 安装安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装:yum install gcc-c++二. PCRE pcre-devel 安装PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre ...
2018-10-26 10:52:59
347
原创 springboot整合mybatis-zzy
1.首先添加mybatis的起步依赖 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.2.0</version&
2018-10-24 15:23:01
98
原创 springboot之自定义过滤器
1.public class Logfilter implements Filter{private Logger logger= LoggerFactory.getLogger(Logfilter.class);@Overridepublic void init(FilterConfig filterConfig) throws ServletException {}@Overri...
2018-10-24 14:00:17
436
原创 spring boot之自定义错误页面
spring boot之自定义错误页面1.在resource-templates文件夹下新建error文件夹 在error 文件里创建自己的错误页面2.自定义错误异常处理类@ControllerAdvice //用于拦截全局的controller异常public class ErrorHandler {private static final Logg...
2018-10-24 11:18:02
185
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人