自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(94)
  • 资源 (21)
  • 收藏
  • 关注

原创 MySQL练习题

1.MySQL练习题建表在开始之前,先建立本文所需要的数据表格:-- 学生表CREATE TABLE `Student`( `s_id` VARCHAR(20), `s_name` VARCHAR(20) NOT NULL DEFAULT '', `s_birth` VARCHAR(20) NOT NULL DEFAULT '', `s_sex` VARCHAR(10) NOT NULL DEFAULT '', PRIMARY KEY(`s_id`));-- 课程表CREATE TA

2021-08-29 00:01:14 183

原创 Java面试题

1Java基础1.1什么是Java虚拟机Java 虚拟机是一个可以执行 Java 字节码的虚拟机进程。Java 源文件被编译成能被 Java 虚拟机执行的字节码文件。1.2JDK 和 JRE 有什么区别?

2021-08-29 00:00:34 1502 3

原创 MarkDown文件快捷生成XMind方法

MarkDown文件快捷生成XMind方法1.markdown 文档编辑工具这里我用的是 typora 编辑器,下载地址:https://www.typora.io/MarkDown常用语法2.typora导出OPML文件3.XMind导入OPML文件选择导入选择OPML文件

2021-07-02 11:07:24 1889

原创 java8 stream 多字段排序

很多情况下sql不好解决的多表查询,临时表分组,排序,尽量用java8新特性stream进行处理使用java8新特性,下面先来点基础的List<类> list; 代表某集合 //返回 对象集合以类属性一升序排序list.stream().sorted(Comparator.comparing(类::属性一));//返回 对象集合以类属性一降序排序 注意两种写法list.stream().sorted(Comparator.comparing(类::属性一).reversed());

2021-06-26 17:31:37 351

原创 java8 stream list转map及问题解决

测试代码如下:public class StreamUtil { public static void main(String[] args) { //List集合 List<Test> list = new ArrayList(); list.add(new Test("01", "A")); list.add(new Test("02", "B")); list.add(new Test("02", "c"));

2021-06-26 17:18:49 469

原创 java8 Stream 常用使用方法

1.forEach循环list.forEach(item -> {});1.foreach的实现基于Iterator;2.不能使用foreach对数组或容器进行赋值;3.可以使用foreach修改数组或容器的对象的属性;4.赋值行为尽量使用for循环。2.java8 stream list转map及问题解决3.java8 stream 集合取交集、并集、差集、去重并集public static void main(String[] args) { List<St

2021-06-26 17:15:27 224

原创 3.计算机网络

1.TCP/IP五层协议的体系结构5应用层4运输层3网络层2数据链路层1物理层物理层:中继器、集线器、还有我们通常说的双绞线也工作在物理层数据链路层:网桥(现已很少使用)、以太网交换机(二层交换机)、网卡(其实网卡是一半工作在物理层、一半工作在数据链路层)网络层:路由器、三层交换机传输层:四层交换机、也有工作在四层的路由器2.OSI七层模型物理层:设备之间比特流的传输,物理接口,电气特性等等。常见的设备有网线,网卡等等。数据单位是比特数据链路层:成帧,用Mac地址访问媒介,错误检

2021-06-16 15:03:39 136

翻译 2.计算机操作系统

1.进程与线程区别进程是系统资源分配的最小单位,线程是程序执行的最小单位;进程使用独立的数据空间,线程共享进程的数据空间。线程是进程的一个实体,是cpu调度和分配的基本单位,是最小的cpu执行单元。线程自己不拥有任何系统资源,但是它可以访问其隶属进程的全部资源,所以线程创建,撤销,切换的开销远小于进程,一个进程可以拥有多个线程。2 进程(或作业)的调度算法有哪些1优先级调度算法2 高响应比优先调度算法3 时间片的轮转调度算法4 先来先服务调度算法5 短作业优先调度算法(高响应比优先调度)

2021-06-16 14:50:53 94

翻译 1.计算机基础

目录1.数据结构与算法1.数据结构1.数据结构的基本功能2.常用的数据结构2.算法新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入1.数据结构与算法1.数据结构数据结构是计算机存储、组织数据的方式,指相互之间存在一种或

2021-06-16 13:36:36 89

翻译 Java中this和super()的用法

thisthis关键字指向的是当前对象的引用,可以理解为:指向对象本身的一个指针。this的用法在java中的用法:1.普通的直接引用2.形参与成员名字重名指的是访问类中的成员变量,用来区分成员变量和局部变量(重名问题)class Person { private int age = 10; public Person(){ System.out.println("初始化年龄:"+age);} public int GetAge(int age){

2021-06-16 11:52:50 549

原创 Spring Cloud微服务架构

什么是微服务?微服务的概念源于 2014 年 3 月 Martin Fowler 所写的一篇文章“Microservices”。文中内容提到:微服务架构是一种架构模式,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。微服务架构优势复杂度可控在将应用分解的同时,规避了原本复杂度无止境的积累。每一个微服务专注于单一功能,并通过定义良好的接口清晰表述服务边界。由于体积小、复杂度低,每个微服务可由一个小规模开发团队完全掌控,易于保持高可维护性和开发效率。独立

2021-06-06 13:19:13 2409 3

原创 谷粒商城 学习笔记 一、项目简介(p1-p5)

前言此文章是本人根据全网最强电商项目【谷粒商城】-基础篇-高级篇-集群篇视频课学习的总结,本视频课程一共400多集,完全看完的话需要很久。为了方便大家学习,我对其做了一些整理。希望大家多多支持。一、项目简介谷粒商城是尚硅谷推出的全栈视频,网上有视频课程,也有相关的代码文档,但是这些东西没有比较完整的。分布式基础概念项目架构图如下1、微服务微服务架构风格,就像是把一个单独的应用程序开发为一套小服务,每个小服务运行在自己的进程中,并使用轻量级机制通信,通常是HTTP API。这些服务围绕业务能力

2021-06-06 13:17:18 1116 2

原创 springcloud微服务+Kubernetes集群部署实战 (一)

必读:首先说一下本次的搭建文章是本人实战过的,目前已用于公司的生产环境。本次文章内容将从k8s集群的搭建,代码仓库,镜像仓库,持续集成,日志监控等多个方面进行详细的介绍。本文不是基础的k8s教学,而是让大家在实际工作中能够快速上手并投入生产。所以安装方式都是采用的脚本安装,并不会一步一步的对其内部组件进行讲解。具体详细原理内部组件后续有时间再补上把。硬件最低要求节点数量:3 单节点内存信息:8G及以上 单节点处理器信息:2核2线程及以上 硬盘总容量:100G及以上 系统版本:Ce

2021-01-26 14:49:35 1242 2

翻译 2021年排名前9的Web应用测试工具

现代商业企业的需求使每个组织都必须拥有优化和高性能的Web应用程序和网站。应用程序或网站的质量在用户如何看待组织以及他们对产品的信心方面起着重要作用。在这种情况下,对应用程序和网站进行严格的测试就变得至关重要。网站测试是一种用于测试网站上托管的Web应用程序的测试方法。它包括检查应用程序的界面以及其他功能。 在网站或Web应用程序测试期间会检查各种内容,例如Web应用程序安全性,网站功能,对残障和常规用户的可访问性及其处理流量的能力。简而言之,我们可以说,在启动Web...

2021-01-24 17:50:55 745

原创 SpringCloud (一)使用SpringBoot2+整合SpringCloud

开发工具JDK 1.8.0 及以上 maven 3.3 及以上 IDE Mysql(适用模式一) Redis(适用模式一)创建父Maven工程本次学习使用得SpringBoot版本为2.0.3.RELEASE,SpringCloud版本为Finchley.RELEASE新建maven项目(parent项目) 添加项目依赖 添加默认配置文件 修改pom文件,参考如下,版本...

2020-04-09 15:51:35 562

原创 SpringBoot 内嵌容器Undertow替换Tomcat

前言在SpringBoot框架中,我们使用最多的是Tomcat,这是SpringBoot默认的容器技术,而且是内嵌式的Tomcat。同时,SpringBoot也支持Undertow容器,我们可以很方便的用Undertow替换Tomcat,而Undertow的性能和内存使用方面都优于Tomcat,那我们如何使用Undertow技术呢?本文将为大家细细讲解。SpringBoot中的Tomcat...

2020-02-28 13:27:56 1698

原创 Linux(centos7)安装docker

首先查看是否安装过了docker --version#查询机器是否安装过的docker命令:yum list installed | grep docker#删除旧的dockeryum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logr...

2019-12-09 11:01:33 139

原创 Grafana使用方法

1.配置Prometheus数据库grafana忘记登陆密码找到grafana的数据文件grafana.dbfind / -name "grafana.db"ps:默认的安装路径为/var/lib/grafana/grafana.db进入数据库修改数据#进入数据库sqlite3 /var/lib/grafana/grafana.db#...

2019-12-03 17:42:34 925

原创 Grafana+Prometheus监控系统安装

简介:grafana 是一款采用 go 语言编写的开源应用,主要用于大规模指标数据的可视化展现,是网络架构和应用分析中最流行的时序数据展示工具,目前已经支持绝大部分常用的时序数据库。官网(http://docs.grafana.org/)。用到的工具:Docker,本文大量使用了Docker来启动各个应用。 Prometheus,负责抓取/存储指标信息,并提供查询功能。 Grafa...

2019-12-03 17:05:40 666

原创 Nacos 安装配置

官方介绍:Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您实现动态服务发现、服务配置管理、服务及流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构(例如微服务范式、云原生范式)的服务基础设施。简单地说可以作为注册中心、配置中心、动态 DNS 服务。官网:https:...

2019-12-03 14:29:07 5453 1

原创 ELK (ElasticSearch+Logstash+kibana) Linux(centos7) 安装 使用教程(三) kibana的安装

kibana介绍:1.下载安装地址:https://www.elastic.co/cn/downloads/past-releases#kibanatar -zxvf kibana-6.7.1-linux-x86_64.tar.gzcd /home/niuhao/elasticsearch/kibana-6.7.1-linux-x86_64/bin#启动kibanan...

2019-12-03 11:51:24 153

原创 ELK (ElasticSearch+Logstash+kibana) Linux(centos7) 安装 使用教程(二) Logstash的安装

在分布式系统中,一台主机可能有多个应用,应用将日志输出到主机的指定目录,这时由logstash来搬运日志并解析日志,然后输出到elasticsearch上。由于于 logstash是java应用,解析日志是非的消耗cpu和内存,logstash安装在应用部署的机器上显得非常的笨重。最常见的做法是用filebeat部署在应用的机器上,logstash单独部署,然后由 filebeat将日志输出给lo...

2019-12-03 10:57:24 263

原创 ELK (ElasticSearch+Logstash+kibana) Linux(centos7) 安装 使用教程(一) ElasticSearch的安装

ELK介绍:在分布式系统中,应用数量众多,应用调用链复杂,常常使用ELK作为日志收集、分析和展示的组件。本篇文章将讲讲解如何部署ELK,然后讲解如何 使用Filebeat采集Spring Boot的日志输出到Logstash上,logstash再将日志输出到Elasticsearch上,最后展示到kibana上面。整个日志采集流程如下图:1.下载安装包https://www.ela...

2019-12-03 10:16:53 758

原创 dubbo admin 2.7 安装教程

文档地址:http://dubbo.apache.org/zh-cn/docs/admin/introduction.html源码地址:https://github.com/apache/dubbo-admin总结:下载好项目修改dubbo\dubbo-admin\dubbo-admin-server的pom的build部分 修改C:\JAVA\java-idea\...

2019-12-02 18:03:25 532

原创 Dubbo工作原理

一、Dubbo是什么?Dubbo是阿里巴巴开源的基于 Java 的高性能 RPC(一种远程调用) 分布式服务框架(SOA),致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。二、为什么要用Dubbo?因为是阿里开源项目,国内很多互联网公司都在用,已经经过很多线上考验。内部使用了 Netty、Zookeeper,保证了高性能高可用性。1、使用Dubbo可以将核...

2019-12-02 18:00:39 211

原创 MySQL Explain 详解 (索引)

在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain这个命令来查看一个这些SQL语句的执行计划,查看该SQL语句有没有使用上了索引,有没有做全表扫描,这都可以通过explain命令来查看。所以我们深入了解MySQL的基于开销的优化器,还可以获得很多可能被优化器考虑到的访问策略的细节,以及当运行SQL语句时哪种策略...

2019-12-02 17:30:15 311

原创 MySQL 索引

索引是什么?索引是帮助MySQL高效获取数据的数据结构。索引能干什么?提高数据查询的效率。索引:排好序的快速查找数据结构!索引会影响where后面的查找,和order by 后面的排序。一、索引的分类从存储结构上来划分:BTree索引(B-Tree或B+Tree索引),Hash索引,full-index全文索引,R-Tree索引。 从应用层次来分:普通索引,唯一索引,复合...

2019-12-02 16:16:30 94

原创 JMeter 5.1.1性能测试,完整入门篇

Apache JMeter是一款纯java编写负载功能测试和性能测试开源工具软件。相比Loadrunner而言,JMeter小巧轻便且免费,逐渐成为了主流的性能测试工具,是每个测试人员都必须要掌握的工具之一。本文为JMeter性能测试完整入门篇,从Jmeter下载安装到编写一个完整性能测试脚本、最终执行性能测试并分析性能测试结果。运行环境为Windows 10系统,JDK版本为1.8,JM...

2019-08-13 14:26:54 6044 2

转载 Java 应用性能调优实践

Java 应用性能优化是一个老生常谈的话题,典型的性能问题如页面响应慢、接口超时,服务器负载高、并发数低,数据库频繁死锁等。尤其是在“糙快猛”的互联网开发模式大行其道的今天,随着系统访问量的日益增加和代码的臃肿,各种性能问题开始纷至沓来。Java 应用性能的瓶颈点非常多,比如磁盘、内存、网络 I/O 等系统因素,Java 应用代码,JVM GC,数据库,缓存等。笔者根据个人经验,将 Java 性能...

2019-07-12 15:01:42 123

转载 Lock和synchronized的区别和使用

今天看了并发实践这本书的ReentantLock这章,感觉对ReentantLock还是不够熟悉,有许多疑问,所有在网上找了很多文章看了一下,总体说的不够详细,重点和焦点问题没有谈到,但这篇文章相当不错,说的很全面,主要的重点都说到了,所有在这里转载了这篇文章。  在上一篇文章中我们讲到了如何使用关键字synchronized来实现同步访问。本文我们继续来探讨这个问题,从Java5之后,在j...

2019-07-12 10:08:46 218

转载 Java 定时器(Timer)

在开发中,我们经常需要一些周期性的操作,例如每隔几分钟就进行某一项操作。这时候我们就要去设置个定时器,Java中最方便、最高效的实现方式是用java.util.Timer工具类,再通过调度java.util.TimerTask任务。1、简介Timer是一种工具,线程用其安排以后在后台线程中执行的任务。可安排任务执行一次,或者定期重复执行。实际上是个线程,定时调度所...

2019-07-08 14:23:30 182

转载 JVM的内存区域划分

学过C语言的朋友都知道C编译器在划分内存区域的时候经常将管理的区域划分为数据段和代码段,数据段包括堆、栈以及静态数据区。那么在Java语言当中,内存又是如何划分的呢?由于Java程序是交由JVM执行的,所以我们在谈Java内存区域划分的时候事实上是指JVM内存区域划分。在讨论JVM内存区域划分之前,先来看一下Java程序具体执行的过程:如上图所示,首先Java源代码文件(.java后缀...

2019-07-05 15:11:55 82

原创 必须掌握JVM 参数总结

前言大家都知道,jvm在启动的时候,会执行默认的一些参数。一般情况下,这些设置的默认参数应对一些平常的项目也够用了。但是如果项目特别大了,需要增加一下堆内存的大小、或者是系统老是莫明的挂掉,想查看下gc日志来排查一下错误的原因,都需要咱们手动设置这些参数。各个参数介绍1.verbose:gc表示,启动jvm的时候,输出jvm里面的gc信息。格式如下: 1 ...

2019-07-05 15:03:02 132

转载 Linux 系统运行缓慢,CPU 100%,以及Full GC次数过多问题的排查思路

处理过线上问题的同学基本上都会遇到系统突然运行缓慢,CPU 100%,以及Full GC次数过多的问题。当然,这些问题的最终导致的直观现象就是系统运行缓慢,并且有大量的报警。本文主要针对系统运行缓慢这一问题,提供该问题的排查思路,从而定位出问题的代码点,进而提供解决该问题的思路。对于线上系统突然产生的运行缓慢问题,如果该问题导致线上系统不可用,那么首先需要做的就是,导出js...

2019-07-05 11:39:41 2314

原创 如何在无序数组中查找第n小的值

如题:给定一个无序数组,如何查找第K小的值。例子如下:在一个无序数组,查找 k = 3 小的数输入:arr[] = {7, 10, 4, 3, 20, 15}输出:7在一个无序数组,查找 k = 4 小的数输入:arr[] = {7, 10, 4, 3, 20, 15}输出:10几种思路如下和复杂度分析如下:(1)最简单的思路直接使用快排,堆排或者归并排...

2019-07-04 11:01:21 2700

原创 Java 反射

前言Java的反射特性是一项非常强大和有用的功能,它使得我们可以轻松的在运行时观察到类实例的内部状态,并且可以动态的操作实例,从而为Java语言提供更多更灵活的想象空间。随便举几个例子:使用反射可以动态的映射Java对象属性到Json文件属性的操作,这一点无论在FastJson,还是GSON或者是jackson上都体现的淋漓尽致。此外使用反射可以轻松的用在JDBC中完成Java Bean...

2019-07-04 10:39:01 91

转载 RPC框架是什么?原理?核心点?使用?

远程过程调用协议RPC(Remote Procedure Call Protocol)首先了解什么叫RPC,为什么要RPC,RPC是指远程过程调用。即两台服务器A和B,一个应用部署在A上想要访问位于B上应用提供的函数、方法,由于不在一个内存空间,不能直接调用,需要通过网络来表达调用的语意以及传达调用的数据。它是一种编程模式,把对服务器的调用抽象成过程调用,通常还伴随着框架代码自动生成等功能...

2019-07-01 16:29:40 478

转载 程序员之间的十八层鄙视网络

有人的地方就有江湖。程序员,是一个知识、智商、都异于常规行业的群体。自傲,清高,闷骚,也属于这个群体鲜明标签。程序员有时候很自我,这样就给自己一个盲目的优越感。特别在与其他程序员对比的时候,他总能找到在一两个地方优于你的地方,所以,程序员之间的鄙视网络,在程序员这个职位诞生之日起,就慢慢的形成了。时至今日,这张鄙视网络已经相当的庞大。互联网的江湖中,有好事者开始归纳这张网,现在我们就来看看...

2019-07-01 14:58:31 139

原创 优秀的程序员10分钟内能搞定下面5个编程问题,你能做到吗?

每次我发布软件工程师的岗位工作要求,各种求职申请就会纷至沓来,接踵而至。但每每让我困惑的是,似乎总有那么几位应聘者完全不明白所谓“编程”的意思。当然,他们另有想法。而我认为,如果你应聘的是“Web前端开发”岗位,那么你只懂jQuery也可以胜任,那么,“软件工程师”是不是就意味着会HTML、JavaScript和CSS这些必备技能就行了呢?(我觉得那些聊起XML、JSON、XSL...

2019-07-01 14:56:07 171

转载 一位程序员工作10年总结了这些忠告

展望未来,总结过去10年的程序员生涯,给程序员小弟弟小妹妹们的一些总结性忠告。1、自己的户口档案、养老保险、医疗保险、住房公积金一定要保管好。由 于程序员行业每年跳槽一次,我不隐瞒大家,我至少换过5个以上的单位,这期间跳来跳去,甚至是城市都换过3个。还好户口没丢掉,其他都已经是乱了,好几个 城市里,都有交过三金,甚至是一个程序的2个区里交的都有,那些东西,10年后,会变得很重要。你买房子若...

2019-07-01 14:54:35 181

仿 pigx 的 springcloud 项目 java代码

仿 pigx 的 springcloud 项目 java代码

2021-06-22

vue版本冲突 解决 替换包

运行vue项目时,启动报错 error in ./~/[email protected]@element-ui/packages/form/src/label-wrap.vue Syntax Erroe:Unexpected token (20:14) ;; 将此压缩包解压到node_moudel里面找到 element-ui,替换即可

2019-04-15

linux 安装 rabbitmq 安装包以及所需erlang环境安装

linux 安装 rabbitmq 安装包以及所需erlang环境安装,安装详情请查看 https://blog.csdn.net/qq_39526250/article/details/80864432

2018-10-18

java百度OCR文字识别名片信息补充

java代码实现调用第三方百度OCR文字识别接口获取图片名片信息提取出文字

2018-07-04

java百度OCR文字识别名片信息

java代码实现调用第三方百度OCR文字识别接口获取图片名片信息提取出文字

2018-07-04

java讯飞语音转文字

java代码实现使用讯飞语音第三方接口实现语音转文字功能

2018-07-04

java公众号绑定域名,微信消息接收和token验证

java实现公众号绑定域名,微信消息接收和token验证功能

2018-07-04

java支付宝支付退款

java代码实现支付宝支付退款,代码已经封装,解压即用

2018-07-04

java微信付款退款取消订单

java代码实现微信付款,退款,取消订单等操作,代码已经做了封装转,解压即用

2018-07-04

java实现操作微信小程序后台发送模板消息

java代码实现用户操作微信小程序端,后台发送模板消息

2018-07-04

java实现微信退款

java实现微信支付的退款,根据微信用户的openid和订单号进行退款

2018-07-04

java实现微信红包发放

java实现微信红包发放,根据微信用户的openid进行发放普通红包

2018-07-04

activemq linux版本安装包

activemq linux版本安装包 apache-activemq-5.15.4-bin.tar.gz

2018-06-30

VisualSVN+TortoiseSVN+myeclipesd端需要文件

VisualSVN+TortoiseSVN+myeclipesd端需要文件,包含64.32位安装包。

2018-06-26

Java代买实现文件上传下载

Java代码实现文件上传下载到服务器本地,包括自定义路径,文件名。

2018-06-11

java实现DES对称加密

JAVA代码实现DES对称加密,同时加密后的数据为字符串类型,方便数据传输。

2018-06-11

Java实现 sm 2 3 4 加密解密签名验签工具包

java代码实现sm2的加密解密签名验签,sm3加密,sm4加密

2018-06-11

ssl 公私钥加密解密签名验签

java 代码实现 获取keystore,cer文件中的私钥公钥,对数据进行加密解密验签签名

2018-06-11

sm 2 3 4 加密工具类-java

sm 加密所需要的所有工具都在里面,实现数据的加密解密(记得添加jar包bcprov-jdk16)

2018-06-07

java + keytool+openssl 实现批量生成客户端证书

使用Java实现根据ca购买到的根证书 批量生产客户端需要的.bks和.cer文件,从而实现双向认证

2018-06-07

空空如也

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

TA关注的人

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