自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

拿着核武器的程序员的博客

一念百草生,一念山河成,人间最美,不过鲸落。

  • 博客(41)
  • 资源 (4)
  • 收藏
  • 关注

原创 Lambda表达式总结

Lambda作为Java8的新特性,本篇文章主要想总结一下常用的一下用法和api。

2023-08-06 14:38:37 165

原创 Spring Data JPA源码

Spring data jpa的源码分析

2023-08-06 14:31:24 714

原创 MySQL之函数、视图、存储过程

【代码】MySQL之函数、视图、存储过程。

2023-07-25 12:15:13 329

原创 Python的pip install安装路径修改

当我们在安装python的依赖包的时候,不知道默认安装在什么位置,或者不想安装在默认的位置,这时候我们可以手动修改pip install的安装位置

2023-06-12 10:11:43 3843 1

原创 码云(Gitee)与Git配置

三次回车之后,在windows系统中,一般会在系统盘的当前用户的目录下有一个.ssh文件,本文配置的前提是已经申请好了码云(gitee)的账号和电脑上已经安装好了git。输入如下命令,邮箱就填自己的邮箱就可以了,然后需要三次回车。将id_rsa.pub文件中的公钥复制到gitee的输入框中。这里的gitee用户名,就是gitee个人主页@后面的那一串。就是将公钥复制到右侧的框中, 并点击确定即可。点击确定,至此gitee的ssh公钥配置完成。在gitee的个人设置里面配置ssh公钥。

2023-05-17 22:36:30 875

原创 Java中CAS原理分析

通过上面的AtomicInteger源码的阅读,我对CAS的理解:CAS操作是不加锁的, 它每次都假设自己可以执行成功, 然后它就去尝试执行了,成功就返回,否则就一直循环去不断地尝试。这样做比加锁和释放锁的性能是要高的。但是如果一直都是失败的,这样长时间的循环(自旋)会给CPU带来很大的开销。其次CAS还会有ABA的问题,比如我原来value的值为 A, 期间改成了B,后来有变成了A,这个时候某一个线程去执行CAS的之后就会认为value的值没有更改过。但是实际却变化过了。

2023-03-27 11:33:31 600

原创 npm的安装与配置

一.npm介绍npm是node.js平台默认的包管理器,由于新版本的node.js已经集成了npm,所以安装node.js就默认安装好了npm二.配置node.js安装完成之后,打开dos窗口,输入 node -v 和npm -v来检查是否安装成功.如下就表示安装成功了!我的npm安装在如下目录①安装完成之后,需要在nodejs目录下新建node_cache和node_global两...

2019-07-13 08:44:21 1423

转载 Java总结篇系列:Java泛型

https://www.cnblogs.com/lwbqqyumidi/p/3837629.html

2019-03-19 14:29:20 190

原创 Shell脚本笔记

1.查看linux可用的shellcat /etc/shells2.查看linux默认的shellecho $SHELLecho是一个shell命令SHELL是shell的环境变量3.shell提示符普通用户base shell提示是$符号超级用户(root)base shell提示是#符号[root@1fce913333e2 ~]root 当前用户1fce913333e...

2019-01-17 14:42:58 286

原创 Go使用glide包管理工具异常:Unable to export dependencies to vendor directory: Error moving files: exit status

1.安装glidego get github.com/Masterminds/glidego install github.com/Masterminds/glide验证:输入glide,出现如下内容表示安装成功2.使用glide命令①、初始化配置glide create (别名 init)②、下载包glide get [package name]例如:glide get ...

2019-01-03 23:34:37 1487

原创 Lambda表达式使用2

1.概述本篇主要介绍lambda中常用的收集器,收集器的作用就是从数据流中生成需要的数据接口。最常用的就是Collectors.toList(),只要将它传递给collect()函数,就能够使用它了。在我们使用收集器的时候经常会用到“方法引用”这样的简写语法:方法引用:ClassName::methodName2.代码示例按照收集器的作用分类公共代码:@Data@NoArgsCo...

2018-12-13 11:30:28 286

原创 Spring源码解析之SpringMVC

1、说在前面的话①、在说springmvc之前先说一下与之相关的一些类与接口:ContextLoaderListener与ServletContextListener,ContextLoaderListener实现了ServletContextListener接口。ContextLoaderListener类:启动容器时候,自动装配ApplicationContext的配置信息。因为实现了S...

2018-12-05 14:07:00 165 1

原创 单元测试框架PowerMock

1.概述Mockito 是一个针对 Java 的单元测试模拟框架,它与 EasyMock 和 jMock 很相似,都是为了简化单元测试过程中测试上下文的搭建而开发的工具。  PowerMock 也是一个单元测试模拟框架,它是在其它单元测试模拟框架的基础上做出的扩展。通过提供定制的类加载器以及一些字节码篡改技巧的应用,PowerMock 现了对静态方法、构造方法、私有方法以及 Final 方法的...

2018-12-04 19:18:47 532

转载 Java并发编程:CountDownLatch、CyclicBarrier和 Semaphore

原文出处: 海子在java 1.5中,提供了一些非常有用的辅助类来帮助我们进行并发编程,比如CountDownLatch,CyclicBarrier和Semaphore,今天我们就来学习一下这三个辅助类的用法。以下是本文目录大纲:一.CountDownLatch用法二.CyclicBarrier用法三.Semaphore用法一.CountDownLatch用法CountDownLat...

2018-11-19 10:37:59 124

原创 python网络爬虫入门

1、获取网页源码from urllib import requestfp=request.urlopen("https://blog.csdn.net")content=fp.read()fp.close()2、从源码中提取信息这里需要使用可以从HTML或者xml文件中提取数据的python库,beautiful soup安装该库:pip3 install beautifulso...

2018-11-15 23:36:24 185

原创 Lambda表达式使用

一、常用概念1.函数接口:函数接口是只有一个抽象方法的接口,用作Lambda表达式的类型。例如:ActionListener接口就是一个函数接口只有一个抽象方法,由于定义在接口中abstract关键字可以不写2.可以使用以下图表示ActionEvent ----> ActionListener上图表示:箭头左边表示 参数; 箭头指向的表示接口;若接口后面还有箭头...

2018-11-15 20:05:01 297

原创 anaconda设置代理以及添加镜像源

公司为了安全,网络连接外网需要设置代理。因此,如果不设置代理,将无法访问anaconda等python包的来源。进行如下操作:1.打开Anaconda Prompt,先添加国内镜像源一些国内镜像源:  阿里云 https://mirrors.aliyun.com/pypi/simple/  中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/ ...

2018-11-15 10:26:41 22545 1

原创 elasticsearch安装中文分词器

1.下载分词安装包本文使用的是ik分词器,如下:2.解压安装包在plugins目录下创建名为ik的文件夹,解压至elasticsearch的plugins目录下的ik文件夹下:3.重启elasticsearch测试分词器,结果如下图:注意:这里的分词器需要是ik_smart或者ik_max_word,不是ik,使用ik会报错!...

2018-11-08 20:46:37 290

原创 elasticsearch之分词器

1.概念在elasticsearch中索引分析模块是可以通过注册分词器来进行配置的。分词器的作用就是当一个文档被索引的时候,分词器从文档中提取若干词元(token)来支持索引的存储和搜索。elasticsearch内置了很多分词器,分解器,和词元过滤器.索引分析模块包括:分词器(analyzer)分解器(tokenizer)词元过滤器(token filters)2.分词器(包含分解...

2018-11-08 20:11:49 209

原创 elasticsearch的java api基本操作

1.添加依赖默认elasticsearch的配置已经没有问题了,本文使用elasticsearch版本为6.4.2,依赖如下: <dependency> <groupId>org.elasticsearch</groupId> <artifactId>elasticsearch<...

2018-11-08 09:57:04 185

原创 elasticsearch集群搭建

1.elasticsearch下载去官网下载最新版本的安装包然后解压,我下载的是6.4.2版本的es修改包名如下以作区分:es目录结构如下:2.设置集群配置进入config目录下,修改elasticsearch.yml文件中以下几个参数:主节点配置# 集群名称cluster.name: my-es-cluster# 节点名称node.name: node-master# ...

2018-11-07 23:17:52 131

原创 java读取classpath下文件方法总结

项目中一般都会遇到需要读取classpath下文件的问题,今天我打算把我知道的方式都整理一下,做一个记录方便以后查询,以下就是具体的方式: // classpath目录下 URL resource = TestASM.class.getResource("/"); // classpath+该类所在路径 URL resource1 =...

2018-11-06 16:58:38 11505

原创 java RMI介绍及入门

远程方法调用1.概述分布式计算的关键是远程方法调用,在一台计算机上的某些代码希望调用另一台计算机上的某个对象的方法。本文介绍的RMI协议就可以解决这种问题。2.工作原理基本结构如上:1.当客户端要调用远程方法时,实际上调用的是保存在客户端的一个普通对象,叫存根(stub)存根将远程方法所需参数打包成一组字节。对参数编码的过程称为参数编组,目的是转换成适合在虚拟机之间进行传递的格式。最...

2018-11-03 15:05:35 324

原创 python学习第05篇-20181101

今天学习了python数据分析工具pandas中Series数据结构中第二种数据结构DataFrame数据框的概念和一些基本操作:一、DataFrame的概念DataFrame :数据框用于存储多行多列的数据集合,是Series的容器,类似于Excel的二维表格二、基本操作和使用操作:增,删,查,改使用方法:DataFrame(columnsMap)df = DataFrame({'...

2018-11-03 14:08:45 130

原创 python学习第04篇-20181031

今天学习的是python的数据分析相关的工具,比如Numpy, Scipy, Pandas三个包的一些基本用法,笔记如下:'''NumpyNumpy的数据结构是n维的数组对象,叫做ndarry基本操作:import numpy as npdata1 = [1,2,3,4,5]array1 = np.array(data1) # 将列表转成Numpy中的数组# 多维数组data2 ...

2018-11-03 14:08:38 116

原创 python学习第03篇-20181031

今天学习的是python的类与实例的一些知识,还对于python进行了一些小的总结:如下print("--------类与实例-------")class Student(object): passclass Student2(object): def __init__(self, name, tell): ''' self: 表示创建...

2018-11-03 14:08:31 108

原创 python学习第02篇-20181030

今天主要学习了python的各种函数参数传递,函数回调与闭包,yield关键字的用法等,笔记与代码放在了一起,如下:print("------函数------")'''参数结构:1.传统参数传递 无参数传递 固定参数传递2.默认参数传递3.未知个数参数传递4.带键参数传递'''def fun(): print("无参数传递")def fun2(x...

2018-11-03 14:08:22 120

原创 python学习第01篇-20181030

待定

2018-11-03 14:08:13 137

原创 java静态代理与动态代理理解

#1.静态代理其实就是一个典型的代理模式实现,在代理类中包装一个被代理对象,然后影响被代理对象的行为代码示例:// 接口public interface Hello {public void sayHello(String name);}// 实现类@Slf4jpublic class HelloImpl implements Hello { @Override...

2018-11-01 15:06:38 359

原创 mysql的联合主键与复合主键区别

复合主键就是指你表的主键含有一个以上的字段组成 。 例如; create table test ( name varchar(19), id number, value varchar(10), primary key (id,name) ) 上面的id和name字段组合起来就是你test表的复合主键 (若其一为单索引字段时,左边的id才会有索引) 它的出现是因为你的name字段可能会出现重名,所...

2018-10-30 15:53:50 4472

原创 tomcat7源码调试运行环境搭建

1.提前准备本人使用的工具是:idea,jdk1.8,maven 3.3.92.登陆apache官网下载tomcat7源码在这里本人下载一份源码与一份二进制分发包(就是下载过可以直接使用的包),如下图3.解压两个包,创建一个目录叫tomcat7目录(该目录可以随意,本人使用的是这个目录) 解压完成之后,将源码包改为trunk,二进制包改为launch,一起拷贝到tomcat7目录中,如下...

2018-10-30 11:56:59 643

原创 Storm学习-集群提交拓扑

一、写一个word-count案例,关于一些介绍已经在代码注释里面做了介绍,在这里就不用额外的篇幅来写一下storm的一下使用了代码如下:1.先写一个生成句子的spout,如下/** * @Auther: 18030501 * @Date: 2018/10/24 14:25 * @Description: 数据流生成者 * * spout与bolt流程如下 * SentenceS...

2018-10-26 15:37:43 802

原创 FuseSource MQTT的实现发送和接收消(java 实现)

1.MQTT是什么?MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议...

2018-10-25 20:44:05 3878 1

原创 Java类加载器ClassLoader总结

1.类加载器概述java类的加载由虚拟机来完成的,虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验,转换解析和初始化最终形成可以被虚拟机直接说那个的java类型,这就是虚拟机的类加载机制。2.类的生命周期3.类加载器分类Java 中的类加载器大致可以分成两类,一类是系统提供的,另外一类则是由 Java 应用开发人员编写的。系统提供的类加载器主要有下面三个:1.引导类加...

2018-10-11 15:35:00 342

原创 java SPI机制学习笔记

1.机制简介SPI的全名为Service Provider Interface.是JDK内置的一种服务发现机制,在java.util.ServiceLoader的文档里有比较详细的介绍。简单的总结下javaspi机制的思想:是一种将服务接口与服务实现分离以达到解耦、大大提升了程序可扩展性的机制。引入服务提供者就是引入了spi接口的实现者,通过本地的注册发现获取到具体的实现类,轻松可插拔。2...

2018-10-10 16:32:03 323

原创 Spring boot整合logback 基础使用篇

1.背景在搭建新的系统时候必不可少的是需要日志的,日志的作用就不用多说了吧,可以用来调试程序,记录程序运行的状态,最重要的是可以用来排查线上的问题。那我们该如何在项目中使用日志呢?SpringBoot内部集成了LogBack日志依赖,SpringBoot默认使用LogBack记录日志信息,默认根据base.xml配置内容来输出到控制台和文件之中,这是默认的配置不能达到企业级项目的要求。本文...

2018-09-26 20:26:02 3655

原创 SpringMVC使用@RequestParam接收参数的问题

1.背景是在写登陆接口的时候代码如下:@RestController@Slf4jpublic class LoginController { @RequestMapping("/login") public String login(@RequestParam(name = "userName") String userName,

2018-09-21 16:45:54 12585 2

原创 OAuth2.0学习笔记

1.OAuth2.0是什么?OAuth2.0是工业标准的授权协议,本质是一种协议。Apache基金会提供了针对Java的oauth封装。我们做Java web项目想要实现oauth协议进行资源授权访问,直接使用该封装就可以。2.协议的工作原理:1.oauth2.0协议实现原理如下:OAuth2.0在"客户端"与"服务提供商"之间,设置了一个授权层(authorization layer)。...

2018-09-21 14:34:14 675 1

原创 Druid介绍及入门

1.什么是Druid?Druid是一个高效的数据查询系统,主要解决的是对于大量的基于时序的数据进行聚合查询。数据可以实时摄入,进入到Druid后立即可查,同时数据是几乎是不可变。通常是基于时序的事实事件,事实发生后进入Druid,外部系统就可以对该事实进行查询。Druid采用的架构: shared-nothing架构与lambda架构 Druid设计三个原则:1.快速查询(Fast Qu...

2018-09-19 19:38:36 183491 23

原创 Docker笔记总结

1.docker是什么?在这里就不做介绍了,不了解的同学可以自行百度,可能知道的更准确,我在这里写一下自己学习的一些命令以及docker的整体结构。大部分内容来自于自己阅读的书籍和一些自己的理解2.docker常用命令:docker子命令分类:docker命令结构图:接下来笔者对于上面用到的命令做一些说明:docker run命令docker run [OPTIONS] IMAG...

2018-09-18 13:46:05 230 1

tomcat源码测试类需要的类文件

tomcat7源码调试,测试类中依赖的一个类,这里提供这个类的文件

2018-10-30

tomcat7源码调试的pom文件

tomcat7源码调试,需要把tomcat编程maven工程所需要的pom文件

2018-10-30

java SPI的jar包

这个资源是我的博客《java SPI机制学习笔记》中的提供服务的jar包

2018-10-10

Handbook of Big Data Technologies

介绍了大数据相关思想和改变,详细介绍了mapreduce的使用

2018-07-31

空空如也

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

TA关注的人

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