自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一个假的程序员

java知识总结

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

原创 16进制的图片信息如何上传到FastDFS

16进制的图片信息如何上传到FastDFS。

2022-08-18 09:34:54 427 1

原创 Linux系统中如何给docker提供镜像加速

Linux系统中如何给docker提供镜像加速。

2022-07-27 10:57:34 699

原创 面试题:如何在多个重复数字中找到不重复的数字

1.问题的由来: 这是今天遇到的一个面试题,面试最后阶段,因为自己的才疏学浅没有合理的答上来,可能目前已经被PASS了,最开始我想到的是HashMap的特性,但是面试官说不要产生堆空间,所以这个方案也被否了,于是我请教了面试官,面试官说可以采用异或运算,于是有了这篇文章,下面就开始给大家讲一讲什么是异或运算,以及异或运算的特点。2.什么是异或运算? 异或运算是一种常用的位运算,在算法题中,对于避免额外的空间复杂度有独特的用处。3.异或运算的特点(口诀:相同取0,相异取1):...

2021-09-26 23:57:03 816 1

原创 如何使用Navicat向mysql中循环添加数据

前几天在公司遇到一个问题,就是如何使用Navicat向mysql中循环添加数据,百度查了查说是需要使用存储过程解决这个问题。 何为存储过程,官方的解释是这样的:MySQL 5.0 版本开始支持存储过程。存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的一种数据库对象。存储过程是为了完成特定功能的SQL语句集,经编译创建并保存在数据库中,用户可通过指定存储过程的名字并给定参数(需要时)来调用执行。存储过程思想上很简单,就是数据库 SQL 语言层面的代码

2021-08-16 13:41:54 2842

原创 关于mysql联合索引的面试题

今天是我失业的第41天,这段时间面试了很多公司,却没有几个offer,因为没有学历没有入职成功,今天和大家分享一下今天的面试题,关于mysql联合索引的问题。先跟大家描述一下面试官的问题,表中a,b两个字段创建联合索引,以下哪些sql会使用到索引。当然面试的时候我是说的对了,但是为了验证一下我还是在自己的电脑上实践了一下。我先是创建了表sql:CREATE TABLE `test_index` ( `id` int(11) NOT NULL AUTO_INCREMENT, `a` in

2020-08-11 21:05:05 1907

原创 MySQL学习笔记

以下为本人初学 MySQL 时做的笔记,也从那时起没再更新过,但还是囊括了基本的知识点,有时还翻出来查查。Windows服务-- 启动MySQL net start mysql-- 创建Windows服务 sc create mysql binPath= mysqld_bin_path(注意:等号与值之间有空格)连接与断开服务器mysql -h 地址 -P 端口 ...

2019-11-28 16:17:42 263

转载 如何优化Java代码

明代王阳明先生在《传习录》谈为学之道时说:私欲日生,如地上尘,一日不扫,便又有一层。着实用功,便见道无终穷,愈探愈深,必使精白无一毫不彻方可。代码中的"坏味道",如"私欲"如"灰尘",每天都在增加,一日不去清除,便会越累越多。如果用功去清除这些"坏味道",不仅能提高自己的编码水平,也能使代码变得"精白无一毫不彻"。这里,整理了日常工作中的一些"坏味道",及清理方法,供大家参考。让代码性...

2019-10-12 17:37:09 270

转载 Java8 Stream新特性详解及实战

Java8 Stream新特性详解及实战背景介绍在阅读Spring Boot源代码时,发现Java 8的新特性已经被广泛使用,如果再不学习Java8的新特性并灵活应用,你可能真的要out了。为此,针对Java8的新特性,会更新一系列的文章,欢迎大家持续关注。首先,我们来看一下Spring Boot源代码ConfigFileApplicationListener类中的一段代码:pr...

2019-10-12 16:37:35 211

转载 JAVA中try、catch、finally带return的执行顺序总结

 异常处理中,try、catch、finally的执行顺序,大家都知道是按顺序执行的。即,如果try中没有异常,则顺序为try→finally,如果try中有异常,则顺序为try→catch→finally。但是当try、catch、finally中加入return之后,就会有几种不同的情况出现,下面分别来说明一下。也可以跳到最后直接看总结。一、try中带有returnprivat...

2019-09-18 10:39:14 233

原创 java内置工具类

在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类。以下工具类、方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码。一. org.apache.commons.io.IOUtilscloseQuietly:关闭一个IO流、socket、或者selector且不抛出异常,通常放在finally块toString:...

2019-08-22 12:07:12 906

原创 谈谈你对MySQL索引的理解

看了很多关于索引的博客,讲的大同小异。但是始终没有让我明白关于索引的一些概念,如B-Tree索引,Hash索引,唯一索引....或许有很多人和我一样,没搞清楚概念就开始研究B-Tree,B+Tree等结构,导致在面试的时候答非所问!一、索引是什么?索引是帮助MySQL高效获取数据的数据结构。二、索引能干什么?索引非常关键,尤其是当表中的数据量越来越大时,索引对于性能的影响愈发...

2019-08-06 18:08:43 1711

转载 Git从入门基础

Git简介Git是一种分布式版本控制系统,它可以不受网络连接的限制,加上其它众多优点,目前已经成为程序开发人员做项目版本管理时的首选,非开发人员也可以用Git来做自己的文档版本管理工具。2013年,淘宝前端团队开始全面采用Git来做项目管理,我也是那个时候开始接触和使用,从一开始的零接触到现在的重度依赖,真是感叹Git的强大。Git的api很多,但其实平时项目中90%的...

2019-08-06 17:52:48 157

转载 SpringBoot是如何动起来的

程序入口SpringApplication.run(BeautyApplication.class,args);执行此方法来加载整个SpringBoot的环境。1.从哪儿开始?SpringApplication.java/***RuntheSpringapplication,creatingandrefreshinganew...

2019-08-05 17:00:03 171

转载 JVM常见面试题

IT哈哈今天前言总结了JVM一些经典面试题,分享出我自己的解题思路,希望对大家有帮助,有哪里你觉得不正确的话,欢迎指出,后续有空会更新。1.什么情况下会发生栈内存溢出思路:描述栈定义,再描述为什么会溢出,再说明一下相关配置参数,OK的话可以给面试官手写是一个栈溢出的demo。我的答案: 栈是线程私有的,他的生命周期与线程相同,每个方法在执行的时候都会创建一个栈帧,用来存...

2019-08-05 16:53:21 362

转载 Java8中的流操作-基本使用&性能测试

一、流(Stream)简介流是 Java8 中 API 的新成员,它允许你以声明式的方式处理数据集合(通过查询语句来表达,而不是临时编写一个实现)。这有点儿像是我们操作数据库一样,例如我想要查询出热量较低的菜品名字我就可以像下面这样:SELECTnameFROMdishesWHEREcalorie<400;您看,我们并没有对菜品的什么属性进行筛选(比如像之前使用...

2019-08-05 16:25:52 186

转载 Maven从入门到精通!

1.maven是什么?maven是Apache下的一个纯java开发的一个开源项目,它是一款能够抽象构建过程,并且提供依赖管理,中央仓库,自动下载构建等功能的项目构建工具。2.为什么要使用maven工具构建项目?假如我们在开发两个Java项目,暂时称之为A,B,这两个项目中对于一些特殊功能会有互相依赖的情况下,该如何做两者之间较好的关联呢?是打算在A,B两边共用一套代码进行关联吗?( ...

2019-08-05 15:15:51 190

转载 HTTP 面试知识点总结

今天和大家分享的是HTTP的面试考点总结,希望对找实习、秋招的小伙伴们有帮助。 一 、基础概念 URI 请求和响应报文 二、HTTP 方法 GET HEAD POST PUT PATCH DELETE OPTIONS CONNEC...

2019-08-05 12:03:38 254

转载 Ping命令都执行了什么

01 概览对于ping命令,想必只要是程序员都知道吧?当我们检查网络情况的时候,最先使用的命令肯定是ping命令吧?一般我们用ping查看网络情况,主要是检查两个指标: 第一个是看看是不是超时 第二个看看是不是延迟太高 如果超时那么肯定是网络有问题(禁ping情况除外);如果延迟太高,网络情况肯定也是很糟糕的。那么对于ping命令的原理,ping是如何检查网...

2019-08-05 12:01:07 594

原创 Java主流日志工具库

在项目开发中,为了跟踪代码的运行情况,常常要使用日志来记录信息。在 Java 世界,有很多的日志工具库来实现日志功能,避免了我们重复造轮子。我们先来逐一了解一下主流日志工具。日志框架java.util.logging (JUL)JDK1.4 开始,通过 java.util.logging 提供日志功能。它能满足基本的日志需要,但是功能没有 Log4j 强大,而且使用范围也没有 ...

2019-08-02 16:50:12 462

原创 BATJ常考的21条Linux命令

一、文件和目录1. cd命令它用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径cd /home 进入 '/ home' 目录cd .. 返回上一级目录cd ../.. 返回上两级目录cd 进入个人的主目录cd ~user1 进入个人的主目录cd - ...

2019-08-02 15:56:54 132

原创 轻松理解DI 、IoC、DIP ?

摘要面向对象设计(OOD)有助于我们开发出高性能、易扩展以及易复用的程序。其中,OOD有一个重要的思想那就是依赖倒置原则(DIP),并由此引申出IoC、DI以及Ioc容器等概念。本文我们将一起学习这些概念,并理清他们之间微妙的关系。在学习之前,大家可以把自己的理解发表在留言区,共同探讨。目录 前言 依赖倒置原则(DIP) 控制反转(IoC) 依赖注入(D...

2019-08-01 17:17:36 444

原创 初识Maven

前言在如今的互联网项目开发当中,特别是Java领域,可以说Maven随处可见。Maven的仓库管理、依赖管理、继承和聚合等特性为项目的构建提供了一整套完善的解决方案,可以说如果你搞不懂Maven,那么一个多模块的项目足以让你头疼,依赖冲突就会让你不知所措,甚至搞不清楚项目是如何运行起来的,专题的目的就是:彻底搞定Maven!Thinking in MavenMaven的使用方式回想...

2019-08-01 14:43:58 126

原创 java中的垃圾如何分类?

之前上学的时候有这个一个梗,说在食堂里吃饭,吃完把餐盘端走清理的,是 C++ 程序员,吃完直接就走的,是 Java 程序员。确实,在 Java 的世界里,似乎我们不用对垃圾回收那么的专注,很多初学者不懂 GC,也依然能写出一个能用甚至还不错的程序或系统。但其实这并不代表 Java 的 GC 就不重要。相反,它是那么的重要和复杂,以至于出了问题,那些初学者除了打开 GC 日志,看着一堆0101的...

2019-08-01 14:33:24 1387

原创 Lombok使用教程

Lombok 是一个非常神奇的 java 类库,会利用注解自动生成 java Bean 中烦人的 Getter、Setter,还能自动生成 logger、ToString、HashCode、Builder 等 java特色的函数或是符合设计模式的函数,能够让你 java Bean 更简洁,更美观。lombok 的思想非常先进,它让我们省略繁琐的样板代码,不要在重复的代码上花费太长时间,它也是J...

2019-07-31 10:17:21 2274

原创 程序员常用的15款开发者工具

从人工到自动化,从重复到创新,技术演进的历程中,伴随着开发者工具类产品的发展。阿里巴巴将自身在各类业务场景下的技术积淀,通过开源、云上实现或工具等形式对外开放,本文将精选了一些阿里巴巴的开发者工具,希望能帮助开发者们提高开发效率、更优雅的写代码。由于开发者涉及的技术领域众多,笔者仅从自己熟悉的领域,以后端开发者的视角盘点平时可能用得到的工具。每个工具按照以下几点进行介绍:1. 工具...

2019-07-30 12:44:50 2027

原创 Java并发编程:Synchronized及其实现原理

一. 同步的基本使用同步是爪哇中解决并发问题的一种最常用的方法,也是最简单的一种方法.Synchronized的作用主要有三个:(1)确保线程互斥的访问同步代码(2)保证共享变量的修改能够及时可见(3)有效解决重排序问题从语法上讲,花样总共有三种用法: 修饰普通方法 修饰静态方法 修饰代码块 接下来我就通过几个例子程序来说明一下这三种使用方式(为了便于比较,三段代...

2019-07-30 11:22:26 142

原创 IDEA远程部署SpringBoot到Docker

IDEA是Java开发利器,springboot是Java生态中最流行的微服务框架,docker是时下最火的容器技术,那么它们结合在一起会产生什么化学反应呢?一、开发前准备1.Docker安装可以参考:https://docs.docker.com/install/2.配置docker远程连接端口vi/usr/lib/systemd/system/docker....

2019-07-30 10:14:33 443

原创 为什么我的网站加载速度那么慢

前言:Web 性能优化当今数字世界,存在着无数的网站,每天都需要处理各种不同的原因的访问。然而,这些网站中有很大一部分显得笨重,加载慢,使用起来也很麻烦。没怎么优化的网站会被各种各样的问题困扰,包括加载时间、不支持移动设备、浏览器兼容性问题,等等。这篇文章提出 8 个技巧,针对Web性能差这一问题提出解决方案,提高网站的性能,让你的网站快起来。网站加载速度慢有很多原因,代码繁杂、资源处理不...

2019-07-30 09:58:07 1676

原创 Arrays.asList存在的坑

引语:阿里巴巴java开发规范说到使用工具类Arrays.asList()方法把数组转换成集合时,不能使用其修改集合相关的方法,它的add/remove/clear方法会抛出UnsupportedOperationException(),我们来看一下为什么会出现这种情况。问题分析:我们做个测试publicstaticvoidmain(String[]args){...

2019-07-29 18:02:54 358

原创 分布式 Session 解决方案

分布式Session一致性?说白了就是服务器集群Session共享的问题Session的作用?Session 是客户端与服务器通讯会话跟踪技术,服务器与客户端保持整个通讯的会话基本信息。客户端在第一次访问服务端的时候,服务端会响应一个sessionId并且将它存入到本地cookie中,在之后的访问会将cookie中的sessionId放入到请求头中去访问服务器,如果通过这个sess...

2019-07-29 17:28:37 188

原创 JS 开发常用工具函数

1、isStatic:检测数据是不是除了symbol外的原始数据functionisStatic(value){return(typeofvalue==='string'||typeofvalue==='number'||typeofvalue==='boolean'||typeof...

2019-07-29 09:40:22 206

原创 IntelliJ IDEA 常用快捷键

前言:常用快捷键IntelliJ IDEA编辑器大受欢迎的原因之一是它的智能提示和丰富的快捷键,在日常开发中熟练的使用快捷键会大大提升开发的效率,本篇文章就笔者日常开发中的总结,把常用的、好用的快捷键做一个列表,方便查阅。喜欢本文的朋友可以转发朋友圈,方便翻阅。1. 自动代码常用的有fori/sout/psvm+Tab即可生成循环、System.out、main方法等boilerpla...

2019-07-26 17:34:27 230

原创 springboot如何设置首页

前言在SpringBoot中,是没有配置工程的xml文件,这也是SpringBoot的一大优势所在。SpringBoot的是推荐使用Thymeleaf模板,这个我就不吐槽了。SpringBoot中的HTML静态资源通常是放在resource下的static文件夹先,放在这个文件夹下的HTML文件,可以直接通过端口号后直接加html名称就可以直接访问。但是需要我们...

2019-07-26 14:37:31 1046

原创 十分钟学会SSH+SFTP操作终端,告别XShell

1.前言在Mac下登陆远程服务器并没有Windows那么方便的使用XShell,相比较而言,在Mac下更多的是依赖终端输入SSH命令登陆远程服务器。使用SSH命令行的好处就是可以近距离接触底层,用的越多,用的越溜,对SSH的原理就越了解。相反,使用现成的SSH工具(PuTTY、XShell),我们其实并不会有涉及使用ssh命令的机会,对大多数人而言,怕是只知道最基本的ssh root@ip...

2019-07-24 17:02:12 2633

原创 如何提高SQL查询效率(Oracle)

提高SQL查询效率选择最优效率的表名顺序 1.Oracle的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表driving table)将被最先处理 2.在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表最为基础表。 3.如果有三个以上的表连接查询,那就需要选择交叉表(intersection table)作为基础表,交...

2019-07-24 16:30:28 1267

原创 Java中的注解是怎么工作的

做Java开发过程中,我们常常用到注解,如@Service、@Overrided、@Autowired、@Param等,但这些注解的工作原理是怎么样的恐怕不是每个人都说的清楚,在没了解注解的工作原理之前倒是可以大致推断一下:当注解标注到某个类或者方法或者某个成员变量或者某个输入参数上的时候,一定有一个对应的机制来对注解标注的类、方法、成员变量和参数进行某些处理。比如Bean扫描、编译检查、注入值、...

2019-07-24 16:16:21 319

原创 Java异常简介、异常捕获还是上抛

Java异常简介Java异常是Java提供的一种识别及响应错误的一致性机制。Java异常机制可以使程序中异常处理代码和正常业务代码分离,保证程序代码更加优雅,并提高程序健壮性。在有效使用异常的情况下,异常能清晰的回答what, where, why这3个问题:异常类型回答了“什么”被抛出,异常堆栈跟踪回答了“在哪“抛出,异常信息回答了“为什么“会抛出。Java异常机制用到的几个关键字:...

2019-07-17 15:55:09 1135

原创 MyBatis 面试题

1、什么是Mybatis?Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。程序员直接编写原生态sql,可以严格控制sql执行性能,灵活度高。MyBatis 可以使用 XML 或注解来配置和映射原生信息,将 POJO映射成数据库中的记录,避免了几乎所有的 JDB...

2019-07-16 11:05:01 1165

原创 实战与面试常用 Shell 脚本

注意事项1)开头加解释器:#!/bin/bash2)语法缩进,使用四个空格;多加注释说明。3)命名建议规则:变量名大写、局部变量小写,函数名小写,名字体现出实际作用。4)默认变量是全局的,在函数中变量local指定为局部变量,避免污染其他作用域。5)有两个命令能帮助我调试脚本:set -e 遇到执行非0时退出脚本,set-x 打印执行过程。6)写脚本一定先测试再到生产上。1 获取随机...

2019-07-12 15:19:07 170

原创 谈谈你对MySQL索引的理解

看了很多关于索引的博客,讲的大同小异。但是始终没有让我明白关于索引的一些概念,如B-Tree索引,Hash索引,唯一索引....或许有很多人和我一样,没搞清楚概念就开始研究B-Tree,B+Tree等结构,导致在面试的时候答非所问!一、索引是什么?索引是帮助MySQL高效获取数据的数据结构。二、索引能干什么?索引非常关键,尤其是当表中的数据量越来越大时,索引对于性能的影响愈发...

2019-07-12 14:56:29 223

影视类网站前台模板.zip

影视类网站前台html模板,全套模板哦,适合一些想要做视频类网站的小伙伴,我也是新手入门,一起学习吧,谢谢了。

2019-11-29

在线教育类网站后台整站模板.zip

一款在线教育类网站后台整站模板,自己使用的一套网站模板,非常不错,分享给大家。

2019-10-29

在线教育平台响应式整站HTML模板

在线教育平台响应式整站HTML模板,有需要的人可以直接下载,做一个在线教育类的网站。

2019-04-17

mui手机商城源码

一套很不错的商城源码,使用mui进行开发,可以随意嵌套app中。

2019-02-28

空空如也

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

TA关注的人

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