自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (2)
  • 收藏
  • 关注

原创 Java研发面经

个人情况:双非一本 2019届本科岗位:Java研发本次整理面经的面试时间周期:2020年4月——2020年7月自己在每次面试后都整理了下来,分版块去说常问的问题,挨个学习突破的办法。公司一 线下面一面 (一小时)1、自我介绍。2、说一说你在工作中常用的框架。我的回答:用的最多的是Spring社区的技术,常用的OR框架、Redis、JVM也会一些。3、那你知道Spring的IOC和AOP吗?说一说。我的回答:Spring框架的核心出发点为应用程序提供一个基础的可运行的环境为目标,所

2020-07-21 16:46:03 1097 3

原创 MySQL优化从哪些方面谈?

前言MySQL优化绝对是面试中必问的一个知识点,也是一个没有标准答案的问题。但是看问题的角度和对问题认知的维度确实是一个很具有考察性的问题。了解MySQL的存储引擎、主从复制、读写分离、索引、分库分表、SQL调优这些知识以后,对这个问题建立一个比较完整的知识体系才能回答好。存储引擎存储引擎其实本质上来说是一种数据存取的方案。MySQL现在主流的存储引擎由两种,InnoDB和MyISAM。InnoDBInnoDB是目前使用的比较多的一种存储引擎。1、它最大的特点是支持事务,也就是在一些报错需要

2020-07-09 11:26:32 478

原创 K8s(一) 入门

K8s简述演示实在是很难一句话把K8s是什么说清楚,我觉得还是直接看图比较直观。首选需要一个集群环境,使用3台虚拟机虚拟机构建1个主,2个从的模拟集群环境。在保证主机网络互通并且成功安装上kubernetes之后,就拥有了一个最基础的集群环境。使用 kubectl get node 命令可以查看整个k8s集群的节点情况,当所有节点都是Reday的时候就表示集群搭建成功。然后就可以在K8s上运行应用程序。使用yaml格式的声明文件去定义一个应用:下面这段yaml格式的文件的含义只要这些就行了:

2020-07-07 16:00:51 886

原创 JVM(四)垃圾收集器

Java从诞生至今,在追求更加智能、更加低延迟的垃圾回收器的道路上一路披荆斩棘,Java7推出了G1收集器,在此之前的所有垃圾收集器接着被冠以“经典”之名,而G1垃圾收集器在Java9才被设置为默认的垃圾收集器,Java13推出的Shemendoah收集器已经是一款成熟的高性能垃圾收集器,垃圾收集领域最新的研究成果ZGC已经在OpenJDK中商用。经过(二、三)的介绍,整个堆内存空间的结构大致如下:传统垃圾收集器1、Serial 收集器Serial是一款比较老的收集器,可以用于新生代和老年代的对象

2020-05-19 23:26:20 333

原创 JVM(三)图解垃圾回收

当问到垃圾回收的时候该怎么去回答?为什么那么多面试官喜欢从如何判断对象应该被回收开始问?Java和C++之间永远隔着一道由自动内存管理和自动垃圾回收筑起来的高墙,里面的人想出去,外面的人想进来。——《深入理解Java虚拟机》Java语言是一门自动进行垃圾回收的语言垃圾回收(GC) 指的是:对象在使用完毕之后,在应用系统之后的运行过程中,不会再使用到这个对象,那么这个对象就应该被回收掉,让出它所占用的内存空间给将要被创建的对象。在一个应用系统中,创建对象的动作时时刻刻都在发生,每一次查询,每一次请求

2020-05-18 22:58:00 581

原创 JVM(二) GC

Java和C++之间永远隔着由内存动态分配和垃圾收集器筑起的高墙。GC (Garbage Collection)垃圾回收。这项技术出现的时间甚至远早于Java语言。而垃圾收集技术与内存分配策略是离不开的。在Java语言中,更准确的说是:垃圾收集和堆内存的分配策略是不可分割的。Java语言的运行时数据分区大概可以分为:方法区,堆,虚拟机栈,程序计数器,本地方法栈和一部分直接内存。Java虚拟机栈...

2020-05-03 13:34:07 451

原创 设计模式

学设计模式就五部分内容:七大设计原则 、UML图 、23种设计模式(3大类,23种经典模式) 、结合JDK或者Spring看 、自己悟 。概念较多,看代码移架github : https://github.com/xiaoshaDestiny/My-Note-Utils-Learn/tree/master/learn-design-pattern/src/main/java/com/lea...

2020-03-31 23:12:07 306

原创 nginx配置

用nginx可以做域名映射、虚拟IP、动静分离、反向代理、负载均衡。本文是配置实操。一、反向代理(域名)Nginx和Redis都采用了操作系统的IO多路复用机制,而Windows系统的IO多路复用在性能上不如Windows,所以不建议把Nginx或者Redis安装在Windows系统上。1.1、安装pcre、zlib等nginx依赖的系统功能可以使用一下命令安装这些依赖的功能yum -y...

2020-03-26 21:22:03 196

原创 MQ之ActiveMQ

MessageQueue 消息队列,也称消息中间件。对于模块化系统之间复杂调用,使用MQ形式传递调用过程,能解耦;避免支线业务造成阻塞,使用MQ的消息回调,能异步;瞬间访问,业务堆积,使用MQ延迟处理边缘业务,能削峰。本文(一到四)段简要介绍MQ,后(五到九)为核心。一、简单入门本文选择ActiveMQ作为消息队列的产品实现。MQ产品很多,但他们都遵从JMS的消息规范。安装好ActiveMQ即...

2020-03-23 21:37:02 503

原创 JVM(一)

本文主要介绍Java虚拟机(默认为HotSpot虚拟机)中的几个重要模块,主要有:类加载子系统、PC寄存器、虚拟机栈和本地方法接口。适用于具备以下基础知识的Java开发人员:数据结构(本文主要涉及 栈)、JUC(多线程)、了解操作系统,能区分寄存器和内存即可。一、对JVM的基础认知虚拟机虚拟机的本质是一款软件,用来执行一些虚拟的计算机指令。一般分为程序虚拟机和系统虚拟机。系统虚拟机:一般...

2020-02-03 15:41:18 955 1

原创 layui表格行合并

先看一下最终合并之后的效果,能对单选、复选框进行按照某一列的合并。最开始的解决方案来自于这篇博客介绍的方法:https://blog.csdn.net/guishifoxin/article/details/81480136但是还是存在没能解决的问题。在完善之后达到的效果:一:单选、复选原来加入开启了单选或者多选之后会将全部的单选按钮都合并了。也传入合并列名field,layui默...

2020-01-13 12:53:53 4357 3

原创 layui实际使用整理

layui在国内还是有很多公司在使用,本文记录了一个前端小白,第一次接触这个开箱即用的前端框架时候整理的一些问题。有些常见,有些不常见,有些可能很low,有些可能不对,有些可能不全面。但都不重要,因为在任何地方我都觉得自己前端是个渣渣,没有评价的资格,我所做的只是记录而已。希望在实践中越来越熟练就好。(由于是实际工作中整理的,所以对截图的敏感数据打码)1、实现表格数据 按照某一列查询2...

2020-01-05 21:56:52 575

原创 多线程(五)线程池

本文简述线程池的概念,在编程过程中应该注意哪些问题,从入门的使用到底层原理简述。建议结合(三)数据容器中文的阻塞队列一起,更容易理解线程池。首先弄清楚两个问题:1、线程池是什么?线程池做的工作主要是控制运行线程的数量,处理过程中将任务放入队列,然后再线程创建后启动这些任务,如果线程数量超过了最大数量,超出的线程将排队等待,等其他线程执行完毕,再从队列中取出任务来执行。2、这样做的好处是什么...

2019-12-26 19:52:34 202

原创 多线程(四) 锁 Lock

Java中,锁的种类按照不同的维度可以区分出很多的类型,比如是否公平?可读写?可重入?等等。而本文主要介绍JUC并发包Lock接口下锁的实现,以及对常见的锁类型介绍、在实际使用中应该注意什么等。如下图,Lock接口及实现类。区分synchronized和Lock这两者最大的区别:synchronized是Java的一个关键字,Lock是Java并发包下的一个接口。细分两者区别:Jav...

2019-12-11 18:10:12 184

原创 多线程(三)数据容器

主要介绍的是JDK自带数据容器在多线程环境下的知识,主要围绕三大数据容器List、Set和Map展开,为避免有重复造轮子的嫌疑,基础知识将不再介绍(类似于Set的底层是Map,HashMap初始容量为什么是16,扩容因子为什么是0.75,什么时候变成红黑树,什么时候变为二叉树等等,将不会介绍),仅仅只说在多线程的环境中,如何保证我们操作的数据容器可靠!安全!高可用!ConcurrentModif...

2019-12-03 22:40:57 250

原创 多线程(二)CAS算法和ABA问题

前提要点JMM,在每个线程启动的时候,JVM虚拟机都会为这个线程开辟一个内存空间,他们进行数据运算都是在自己的内存空间中进行的,而变量的可见性是多线程共同合作计算的基础,在多线程编程中,大量的使用了Volatile关键字,根据JMM规范,它能保证内存数据在计算时的可见性和机制指令在CPU执行期间的排序机制,但无法保证原子性。而volatile关键字是怎么做到这一点的呢?CAS算法简洁CA...

2019-11-30 22:40:22 270

原创 多线程(一)JMM内存模型

必须前置声明JMM是Java Memory Model 即Java 内存模型,而JVM 是 Java Virtual Machine ,即Java 虚拟机,两者完全不同!JVM的知识会在后续补充。先了解JUC并发编程的知识能帮助更好的了解JVM。Java多线程基础知识一、基础认知(入坑必备)直接先看代码两个线程(main线程和T1线程),三个输出语句在运行时的输出情况。需要说明的是new...

2019-11-29 23:56:33 289

原创 大数据Hadoop基础

Hadoop简述一个由Apache开发的基础分布式框架,主要目的是解决海量数据的存储、分析、计算问题。通常从广义上来说,Hadoop是一个更广泛的概念,发展至今已经是一个成熟的生态体系。Hadoop自2005年发行以来的迅速发展,标志着云计算时代的来临。组成Hadoop主要由以下三部分组成:HDFS:存储数据。一个分布式文件系统。MapReduce:计算。一个分布式离线并行计算框架。...

2019-10-31 23:31:42 891

原创 浅析ElasticSearch入门

前言刚毕业的小明同学入职一家互联网公司,开开心心的拿到了他的第一个开发任务。项目经理:客户这边有个需求,让你做一个搜索框,他们输一写东西,你就把数据资源查出来给他们,这个功能很急,明天要上线。小明同学:好的,我加油,保证完成任务。(内心:就这?没啦? 一曲凉凉安排上!)一脸懵逼的小明同学冥思苦想之后盯上了系统里面几张特变常用的数据表,好的,就安排你们了。于是乎,小明写了一堆SELECT 查...

2019-10-03 22:39:43 227

原创 Docker基础知识

认识Docker在听技术大佬吹牛的时候,最直接解释docker的话语是:本来咱们代码在开发环境跑的好好的,测试通过了要发布的时候,将代码部署到实际环境的时候总是会报各种奇奇怪怪的错,而Docker就是把你代码连同环境一起全部搬运到生产环境的工具。版本迭代问题一款产品从开发到上线,从操作系统,到运行环境,再到应用配置。作为开发运维之间的协作我们需要关心很多东西,这也是很多互联网公司都不得不面...

2019-08-27 17:40:39 240

原创 208道Java常问面试题答案

最近在CSDN的公众号上有这208道面试题目,自己将关于这208道题知道的知识整理如下,希望自己能尽快把这些题都弄清楚。原文链接:https://blog.csdn.net/sufu1065/article/details/88051083Java 基础1.JDK 和 JRE 有什么区别?JRE可以支撑Java程序的运行,包括JVM虚拟机和基本的类库。JDK可以支持Java程序的开发,包括...

2019-04-16 17:24:39 692

原创 微服务入门

这是一篇介绍分布式微服务的入门文章,不用花很多时间就能大致了解什么是微服务?什么是SpringCloud?什么是dubbo?全文不会涉及任何的编码内容,我完完全全站在一个初学者的角度来进行叙述。适合人群:在校学生,刚入行的互联网从业者。如果你对分布式微服务架构已经很了解了,那么本文对你的帮助不大。@在校学生:我自己本人就是一名学生,自然清楚学校课程与生产实际情况存在脱节情况,本文有益无害。@刚...

2019-04-05 02:47:22 1037 2

原创 内存数据库Redis

本文篇幅很长,整理了Redis的核心知识作为笔记。更多学习Redis的学习资源应该是来自于官网:http://redis.io/ 和 http://www.redis.cn/理论知识Redis作为现在最为热门的NoSQL服务器,要突兀的讲述一些关于Redis的理论知识突然不知道怎么写的很有结构性,只好将各个知识点罗列出来,如下:首先得知道Redis是什么,能干嘛Redis(REmote D...

2019-04-01 23:30:07 1704

原创 Mysql性能优化

本文宗旨在于详述Java开发工程师如何写出高性能SQL语句。关系型数据库在各类ORM框架充斥的项目中,开发人员或者学习者很久没有手写一条SQL语句是很正常的事情,毕竟一个接口一个配置一个注解就能搞定的DAO层实在没有太多可以操作的空间,即便想写一条两表连接查询的SQL语句,这样的需求也实在是难找。现在的市场行情是:大部分互联网企业采用的还是传统关系型数据库+新型NoSQL数据库的方式。并且大部...

2019-03-27 20:57:05 443

原创 SpringBoot+Thymeleaf超好用的前后端数据交互模板引擎

开发工具选用IDEA,尽量选择高版本的Thymeleaf避免版本不兼容问题,使用它可以完全替代JSP。准备1、pom文件除了普通的SpringBoot项目,版本选择1.5.10,除了引入Web模块的场景启动器,数据库模块等等之外,还需要thymeleaf的场景启动器,为了兼容性,还需要指定thymeleaf较高的版本 ,pom文件主要的依赖如下(包含但不仅限于,看需求): &lt...

2019-03-01 15:11:00 53316 16

原创 缓存核心概念

使用缓存的核心目的只有一个,就是:加速访问,提高性能,保护数据库。对于加速项目访问有一份极具经典的图:访问量较小时,项目采用的是All In One的结构,这时候能跟数据库快速、便捷存取数据的ORM框架是提升性能的关键;当访问量增加,能快速响应前端,数据在前后端快速交互的MVC框架就显得更加尤为重要;访问量极大、高并发的网站一台服务器难以支撑,这时则需要将服务分散于多个服务器上,于是分布...

2019-02-25 22:27:59 337

原创 SpringMVC表单回显

做课程设计的时候遇到一个问题弄了好久,找了好久也没有找到解决办法,弄了好久终于弄出来了,人生的第一篇博客来补充一下吧, 先说Eclipse抛出的异常: 严重: Invalid property ‘rigth’ of bean class [com.learn.train.entitis.User]: Bean property ‘rigth’ is not readable or has an...

2018-08-29 21:32:44 1297

K-Means文本聚类python实现

对文本进行聚类,文本预处理-->构造特征向量-->聚类,压缩包内含有实验用语料

2019-01-05

远程视频视频监控源程序(C++实现)

这个程序是用C++语言编写的远程监控系统,有兴趣的朋友可以参考一下,里面重点是附加了说明和结构图,内容比较丰富

2019-01-05

空空如也

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

TA关注的人

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