- 博客(42)
- 收藏
- 关注
转载 Spring Boot入门教程
转载:https://blog.youkuaiyun.com/python6_quanzhan/article/details/107054704
2020-07-01 10:28:16
239
原创 RabbitMQ第三章:客户端开发向导
RabbitMQ 相关的开发工作,基本上是围绕 Connection和Channel 这两个类展开的 本章按照一个完整的运转流程进行讲解,详细内容有这几点:连接、交换器/队列的创建与绑定、发送消息、消费消息、消费消息的确认和关闭连接。1 连接 RabbitMQ创建连接工厂并设置生产者基本的信息(lP地址、端口号、用户名、密码等),通过连接工厂创建连接对象,通过连接对象创建通道channel,channel可以用来接收或者发送消息了。ConnectionFactory factory = new Con
2020-06-29 11:20:59
352
原创 四:Stream流
1.什么是有状态和无状态?有状态:在某项操作的结果中,是否将该结果最后统计起来再次进行有必要的操作。比如:max,min,reduce,sum这些流操作,需要内部状态来累积结果,对输出的流数据做统一的计算,这种叫做有状态的操作;无状态:filter,map等操作会从输入流中获取每一个元素,并在输出流中得到0或1个结果。也就是说,filter只会从输入流选出一个数据项,判断是否满足操作,然后对...
2020-03-23 16:02:49
320
原创 三:Lambda表达式
本章内容Lambda管中窥豹在哪里以及如何使用Lambda环绕执行模式函数式接口,类型推断方法引用Lambda复合1. lambda管中窥豹1.1 可以把Lambda表达式理解为简洁地表示可传递的匿名函数的一种方式:它没有名称,但它有参数列表、函数主体、返回类型,可能还有一个可以抛出的异常列表。这个定义够大的,让我们慢慢道来。匿名——我们说匿名,是因为它不像普通的方法...
2020-03-17 15:18:29
1548
原创 二:通过行为参数化传递代码
为什么要使用行为参数化传递代码在软件工程中,一个众所周知的问题就是,不管你做什么,用户的需求肯定会变。比方说,有个应用程序是帮助农民了解自己的库存的。这位农民可能想有一个查找库存中所有绿色苹果的功能。但到了第二天,他可能会告诉你:“其实我还想找出所有重量超过150克的苹果。”又过了两天,农民又跑回来补充道:“要是我可以找出所有既是绿色,重量也超过150克的苹果,那就太棒了。”你要如何应对这样不断...
2020-03-13 18:18:01
146
原创 Java多线程中各种锁的理解
1.简介锁作为并发共享数据,保证一致性的工具,在JAVA平台有多种实现(如 synchronized 和 ReentrantLock等 ) 。2.Java锁的种类公平锁/非公平锁可重入锁独享锁/共享锁互斥锁/读写锁乐观锁/悲观锁分段锁偏向锁/轻量级锁/重量级锁自旋锁上面是很多锁的名词,这些分类并不是全是指锁的状态,有的指锁的特性,有的指锁的设计,下面总结的内容是对每个锁的...
2019-08-17 19:21:51
323
原创 线程的基本概念、线程的基本状态以及状态之间的关系
什么是线程一个线程是进程的一个顺序执行流。同类的多个线程共享一块内存空间和一组系统资源,线程本身有一个供程序执行时的堆栈。线程在切换时负荷小,因此,线程也被称为轻负荷进程。一个进程中可以包含多个线程。进程与线程的区别一个进程至少有一个线程。线程的划分尺度小于进程,使得多线程程序的并发性高。另外,进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。线程在执...
2019-08-17 11:46:29
248
原创 单例模式的几种实现
1、饿汉式(线程安全,调用效率高,但是不能延时加载):public class ImageLoader{ private static ImageLoader instance = new ImageLoader; private ImageLoader(){} public static ImageLoader getInstance(){ ...
2019-08-16 20:28:07
130
原创 Shell命令
请查看:https://blog.youkuaiyun.com/weixin_37490221/article/details/80869792
2019-08-16 20:19:33
128
原创 正则表达式 - 语法
1.什么是正则表达式1.1正则表达式是一种特殊的字符串模式,用于匹配一组字符串,就好比用模具做产品,而正则就是这个模具,定义一种规则去匹配符合规则的字符。1.2 在线匹配工具:1 http://www.regexpal.com/2 http://rubular.com/2.正则字符简单介绍2.1 元字符介绍“^”^会匹配行或者字符串的起始位置,有时还会匹配整个文档的起始位置...
2019-08-13 21:39:52
224
原创 Nginx学习笔记(三):负载均衡
在上一篇博客我们介绍了 Nginx 一个很重要的功能——代理,包括正向代理和反向代理。这两个代理的核心区别是:正向代理代理的是客户端,而反向代理代理的是服务器。其中我们又重点介绍了反向代理,以及如何通过 Nginx 来实现反向代理。那么了解了Nginx的反向代理之后,我们要通过Nginx的反向代理实现另一个重要功能——负载均衡。一:负载均衡的由来早期的系统架构,基本上都是如下形式的: 客...
2019-08-13 18:35:47
1061
原创 Nginx学习笔记(二):反向代理
一:nginx 反向代理Nginx 服务器的反向代理服务是其最常用的重要功能,由反向代理服务也可以衍生出很多与此相关的 Nginx 服务器重要功能,比如后面会介绍的负载均衡。本篇博客会先介绍 Nginx 的反向代理,当然在了解反向代理之前,我们需要先知道什么是代理以及什么是正向代理。二:代理在Java设计模式中,代理模式是这样定义的:给某个对象提供一个代理对象,并由代理对象控制原对象的引用。...
2019-08-13 17:25:35
328
原创 Java 反射详解
一:什么是反射?Java反射就是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;并且能改变它的属性。而这也是Java被视为动态(或准动态,为啥要说是准动态,因为一般而言的动态语言定义是程序运行时,允许改变程序结构或变量类型,这种语言称为动态语言。从这个观点看,Perl,Python,Ruby是动态语言,C++,Java,C#不是动态...
2019-08-13 14:20:44
267
1
原创 zookeeper简述与安装
一:zookeeper简述1.zookeeper是什么?ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件。2.zookeeper能干什么?1)配置管理在我们的应用中除了代码外,还有一些就是各种配置。比如数据库连接等。一般我们都是使用配置文件的方式,...
2019-08-10 19:26:26
228
原创 kafka简述与集群配置
一:kafka简述消息队列(Message Queue)消息 Message 网络中的两台计算机或者两个通讯设备之间传递的数据。例如说:文本、音乐、视频等内容。队列 Queue 一种特殊的线性表(数据元素首尾相接),特殊之处在于只允许在首部删除元素和在尾部追加元素。入队、出队。消息队列 MQ 消息+队列,保存消息的队列。消息的传输过程中的容器;主要提供生产、消费接口供...
2019-08-03 18:54:21
549
原创 关于Log4J的理解
Log4j1.由apache退出的开源免费日志处理的类库2.为什么需要日志:2.1 在项目中编写System.out.println();输出到控制台。当项目发布到tomcat后,没有控制台(在命令行界面能看见),不容易观察一些输出结果。2.2 log4j作用,不仅能把内容输出到控制台,还能输出到文件中,便于观察。3.使用步骤:3.1导入 log4j-xxx.jar(log4j的jar...
2019-08-01 20:38:47
229
原创 Mysql远程连接报错:SQL Error (1130): Host '192.168.1.3' is not allowed to connect to this MySQL server
虚拟机安装好msql后,window上使用Navicat Premium进行数据库连接,报错SQL Error (1130): Host ‘192.168.1.3’ is not allowed to connect to this MySQL server。原因:说明你所连接的用户账户没有远程连接的权限,只能在本机localhost登录需要更改 mysql 数据库里的 user表里的 ho...
2019-07-31 16:46:14
727
转载 centos安装及完全卸载mysql
1.直接从网上下载mysql的repo源,使用wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm 2.从网上下载这个rpm包(这里wget 命令是从网络上下载文件的命令一般的格式为wget +url),下载好rpm包后安装这个包rpm -ivh mysql-community-release-el7-5.n...
2019-07-31 11:33:07
153
原创 hadoop暂时/永久关闭安全模式
在安全模式下,文件系统中的内容不允许修改也不允许删除,直到安全模式结束。安全模式主要是为了系统启动的时候检查各个DataNode上数据块的有效性,同时根据策略必要的复制或者删除部分数据块。运行期通过命令也可以进入 安全模式。在实践过程中,系统启动的时候去修改和删除文件也会有安全模式不允许修改的出错提示,只需要等待一会儿即可。 但是如果是在小型测试集群,往往因为结点数量较少,很可能导致集群一...
2019-07-30 11:02:00
13857
1
原创 centos中redis的主从复制 哨兵模式 集群搭建
话就不多说了,直接来。一:centos安装redis1.下载redis安装包下载地址:https://redis.io/download我下载的是:redis-3.0.0-rc2.tar.gz2.通过Xftp将压缩包放到指定目录,我是放在:/usr/local/ 目录下3.解压到当前目录:tar -zxvf redis-3.0.0-rc2.tar.gz 压缩文件4.进入到解压后...
2019-07-27 02:25:45
549
原创 Nginx学习笔记(一):安装及简介
一:概述Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。它的特点是:占有内存少,并发能力强。Nginx+Keepalived 进行负载均衡二:Nginx环境搭建1.wget下载:http://nginx.org/download/nginx-1.6.2.tar.gz2.进行安装:tar -zxvf nginx-1.6.2.tar.gz3...
2019-07-24 00:53:16
157
原创 java虚拟机概念以及各参数的配置
一.概念所谓虚拟机,就是一台虚拟的机器。它是一款软件,用来执行一系列虚拟计算机指令,大体上虚拟机可以分为:①系统虚拟机和②程序虚拟机。像Visual Box,VMware就属于系统虚拟机,他们完全是对物理计算机的仿真,提供了一个可运行完整操作系统的软件平台。程序虚拟机典型代表就是java虚拟机,它专门为执行单个计算机程序而设计,在java虚拟机中执行的指令我们称为java字节码指令。无论是系统虚...
2019-07-23 19:35:01
512
原创 克隆Centos之后,ifconfig得不到ip地址,mac地址冲突
今天克隆了一个虚拟机,放到自己本机里面使用时,发现ifconfig得不到ip地址,很奇怪,网上找了很多资料,没什么结果,后面各种尝试终于解决。其实就是因为复制克隆的两个虚拟机的mac地址冲突了。所以一台开着,另一台就用不了。本文主要讲的就是解决mac冲突的问题。mac地址冲突会导致 network 服务启动不了,网卡启动失败。首先 - ip addr 查看当前网络地址红色标记的为:本机的...
2019-07-19 23:54:16
1304
原创 为什么重写equals还要重写hashcode?
大家都知道,equals和hashcode是java.lang.Object类的两个重要的方法,在实际应用中常常需要重写这两个方法,以下是我的一些个人理解。hashCode方法一般的规定是:在 Java 应用程序执行期间,在对同一对象多次调用 hashCode 方法时,必须一致地返回相同的整数,前提是将对象进行 equals 比较时所用的信息没有被修改。从某一应用程序的一次执行到同一应用程序...
2019-07-13 21:58:02
232
原创 eclipse操作hadoop-文件上传下载以及使用MapReduce完成对一个文本文件的单词计数
1.查看hdfs上的文件public static void main(String[] args) { try { // 创建要链接的资源地址 URI uri = new URI("hdfs://xxx.xxx.xxx.xxx:端口号"); //这个地址是hadoop目录下etc/hadoop/core-site.xml文件里的 fs.defaultFS 地址 Con...
2019-06-22 20:23:32
1229
原创 Yarn是什么?搭建Yarn环境
Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的 Hadoop 资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。YARN的基本思想是将JobTracker的两个主要功能(资源管理和作业调度/监控)分离,主要方法是创建一...
2019-06-22 15:16:06
914
原创 Hadoop伪分布式平台的搭建
Hadoop 是什么?haddop是开源的分布式存储,和分布式计算平台Java编写的开源系统,能够安排在大规模的计算平台上,从而提高计算效率http://hadoop.apache.orgHadoop核心组件:Hbase:Nosql数据库 Key-Value存储HDFS:分布式文件存储系统,存储海量数据MapReduce:并行处理框架,实现任务分解和调度,主要用来做数据的分析 ...
2019-06-22 11:55:51
289
原创 pandas基础总结
近期想学习下数据分析,里边有用到pandas库,在书上网上找了些知识点想把它写下来便于以后自己的温习与分享。pandas库主要有Series和DataFrame两个数据结构Series 是一个类数组的数据结构,有索引index 可以理解为序列DataFrame 按列存储的数据结构,所有的数据都是按列存放的 每列都是Series序列的结构下面是关于pandas基础用法的实现#导入...
2019-04-03 11:10:05
191
原创 服务器报Couldn't find a tree builder with the features you requested: lxml 问题解决
服务器报Couldn’t find a tree builder with the features you requested: lxml 问题解决自己是在window系统下面运行的爬虫代码的时候运行没问题,可是当项目部署到服务器之后就出问题了,不知道为啥,说不出个所以然,一行一行代码去找,抛出了这个异常。查了网上很多资料终于有果因为lxml依赖的包如下:libxml2, libxml2...
2019-03-19 22:11:58
2446
1
原创 Ubuntu下安装 Phantomjs教程以及所碰到的问题
Ubuntu下安装 Phantomjs1.安装phantomjs输入命令:32位:wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-i686.tar.bz264位:wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs...
2019-03-18 20:59:08
700
原创 java项目发布到ubantu服务器
哎呀,好久没写博客了,离上一篇博客有三个月左右的时间间隔了叭,作为一名大三党,不完全是因为懒呀(笑哭),这三个月里在和朋友写一些项目,大大小小的杂七杂八的东西。途中也想到了如果能把写好的项目给身边的朋友看看让他们玩玩或许也能指出项目的不足,毕竟互联网时代,如果你写的东西别人都看不到实际效果,你拿什么跟别人说你写过什么什么的,无凭无据呀。所以我这段时间也找了找相关的资料,如何将写的项目发布到网上去...
2019-02-26 17:42:22
237
原创 Python 配置日志文件
在程序开发阶段,显然我们需要大量的日志。打个比方,我们的程序是一个卖东西的网站,那么关于用户关于钱的,关于商品销售等所有操作我们都应该记录下来,起码可以知道用户花了多少钱,商品销售的怎么样了。当我们使用爬虫爬取网页时,我们通过日志,能更直观得了解到我们得爬虫爬到哪了,数据是怎样的,有没有哪里报错等等等等信息。日志级别:critical > error > warning >...
2018-11-18 12:02:14
1794
原创 Python—selenium爬取快代理
本篇使用 selenium技术 爬取快代理上的代理IP,并判断其是否可用。#爬取代理IPfrom selenium import webdriverfrom selenium.webdriver.common.proxy import Proxyfrom selenium.webdriver.common.proxy import ProxyTypefrom selenium.webd...
2018-11-17 18:57:56
625
原创 Python爬取猫眼电影
爬取猫眼电影中经典电影里所有电影的电影名,图片以及评分不多说,直接上代码:由于爬取数量较多,所以电影图片就没有下载了,爬下来的是图片的网页连接,可以看我博客里面有篇文章是讲文件的读写操作的,包括json和pickle方式。import requestsimport reimport randomimport pymysqlimport time# ------连接数据库db ...
2018-11-17 16:24:05
633
原创 Python对文件和目录的操作
Python对文件和目录的操作中基础常用的操作如以下:操作作用os.path.exists(filePath)判断文件file是否存在(filePath可以是文件的相对绝对路径)os.rename(filePath1,filePath)将filePath1重命名为filePath2os.path.dirname(filePath)得到文件filePath的目...
2018-11-17 00:45:48
332
原创 Python中的with关键字
with语句用于对try except finally 等的优化,让代码更加美观,例如常用的读取文件的操作,用try except finally 实现:try: fo=open( 'context.txt','r',encoding='utf8' ) fo.read()except: passfinally: fo.close()是不是显得有点拖泥带水...
2018-11-01 22:41:17
526
原创 Python中对文件流的操作,以及对json和pickle的理解
关于Python对文件和流的操作本人也是初学者,在Python官网上看到的相关的文档,说的不好还请谅解,指出。值描述‘r’只读模式‘w’只写模式(会覆盖掉已经有的内容)‘a’追加模式(向已有的内容后面进行追加)‘b’二进制模式‘t’文本模式‘+’读写模式‘U’通用匹配换行符模式...
2018-11-01 21:15:37
676
原创 Python——伪随机数生成器
伪随机数生成器,顾名思义就是它能产生随机数!,实际上这种生成器就是一个小算法,通过一定的算法去生成一个个的随机数。现在网上流行的伪随机生成器的算法大致分为两种:1.平方取中法2.线性同余法线性同余法的随机概率更大一点,不容易随机,以下我要讲的也是关于线性同余法产生随机数的方法。 线性同余法的公式: rNew=(a*rOld+b) % (end-start) 其中: a成为乘数,b称为增...
2018-10-28 20:27:27
5860
原创 Python面向切面编程的装饰器模式
装饰器是什么?他有什么特点? 装饰器就是对被装饰的对象(函数、类)进行重构的,其可以在不改变原来对象的情况下调用对象时执行重构后的行为 特点: 1.修饰器本质上也是一个函数,2.只不过这个函数接收其他函数作为参数3.并对其进行一定的改造之后返回新函数上实例:问:定义一种方案,能在一个函数执行前输出hello,执行后输出byebye,并统计函数运行的时间?def s...
2018-10-28 19:03:30
217
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人