自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(202)
  • 资源 (7)
  • 收藏
  • 关注

原创 Step Out 和 Drop Frame辨析

比较全的idea 调试的博客可以参考这个,本文主要用于分辨Step Out 和 Drop Frame的用法实例代码:public class Main { public static void main(String[] args) { StringBuilder param = new StringBuilder("123"); String str = getString(param); System.out.println(str).

2021-07-05 21:13:25 686 1

原创 IDEA结合Maven的profile配置实现动态切换环境

server.port=8887之前的切换环境的方式 , 就是在application.properties中配置 spring.profiles.active=dev , 然后通过修改dev为test或prod来切换项目环境 , 这样做的话每次切换环境都要重新改一下配置 , 而且如果不小心把本地改动提交到中央仓库了 , 可能会影响到其他同事拉取代码。maven中提供了一个profile配置项,可以在打包时动态的指定环境配置.结合idea使用 , 我们可以实现不动任何代码来随意的切换我们的工作环..

2021-07-02 19:26:30 3823 5

原创 通过部署python项目 学习 docker 使用

安装1、Docker 要求 CentOS 系统的内核版本不低于 3.10,通过 uname -r 命令查看你当前的内核版本uname -r2、使用 root 权限登录 Centos。确保 yum 包更新到最新。(温馨提示:新环境或测试环境可随意操作,生产环境酌情慎重更新)sudo yum update3、卸载旧版本(如果安装过旧版本的话)sudo yum remove docker docker-common docker-selinux docker-engine4、安

2021-05-15 14:01:05 456 1

原创 面试笔记@Mybatis

mybatis原理前言MyBatis 是一个被广泛应用的持久化框架。一个简单的使用示例如下所示,先创建会话工厂,然后从会话工厂中打开会话,通过 class 类型和配置生成 Mapper 接口的代理实现,最后使用 Mapper 进行持久化操作。本文将从 MyBatis 中的 SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession 和 Mapper 几个方面入手简单分析 MyBatis 的实现原理。在后面的系列文章中会进一步具体分析核心类的细节实现

2021-04-05 13:40:20 143

原创 面试笔记@MySQL

手写sqlhttps://blog.csdn.net/u014209205/article/details/83051001有一张很大的表,如何设计能够提升查询效率分库分表https://blog.csdn.net/Iperishing/article/details/87552180构建索引索引底层原理https://www.jianshu.com/p/d90f6b028d0ehttps://blog.csdn.net/u010648555/article/details/81

2021-04-03 14:14:33 161

转载 面试笔记@Spring IOC AOP

IOC控制反转控制反转(IoC,Inversion of Control),是一个概念,是一种思想。指将传统上由程序代 码直接操控的对象调用权交给容器,通过容器来实现对象的装配和管理。控制反转就是对对象控制权的转移,从程序代码本身反转到了外部容器。通过容器实现对象的装配和管理。传统Java SE程序设计,我们直接在对象内部通过new进行创建对象,是程序主动去创建依赖对象;而IoC是有专门一个容器来创建这些对象,即由Ioc容器来控制对象的创建及注入依赖对象;依赖:classA 类中含有 class

2021-04-03 14:14:15 131

原创 面试笔记@设计模式

设计模式https://blog.csdn.net/jason0539/article/details/44956775工厂模式相关https://www.cnblogs.com/yssjun/p/11102162.html单例模式的双检查锁有bughttps://www.cnblogs.com/xz816111/p/8470048.html

2021-04-03 14:14:04 111

原创 面试笔记@分布式

RPCJava中常用的RPC框架目前常用的RPC框架如下:1.Thrift:thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发。它结合了功能强大的软件堆栈和代码生成引擎,以构建在 C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, and OCaml 这些编程语言间无缝结合的、高效的服务。2.Dubbo:Dubbo是一个分布式服务框架,以..

2021-04-03 14:13:50 105

转载 Mysql索引使用总结

一、索引概述1. 简介索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。举例说明索引:如果把数据库中的某一张看成一本书,那么索引就像是书的目录,可以通过目录快速查找书中指定内容的位置,对于数据库表来说,可以通过索引快速查找表中的数据。2. 索引的原理索引一般以文件形式存在磁盘中(也可以存于内存中),存储的索引的原理大致概括为以空间换时间,数据库在未添加索引的时候进行查询默认的是进行全量搜索,也就是进行全局扫描,有多少条数据就要进行多少次查询,然后

2021-04-02 17:11:46 656

原创 面试笔记@数据结构

排序 类别 排序方法 时间复杂度 空间复杂度 最好 平均 最差 插入排序 直接插入 O(N) O(N^2) O(N^2) O(1) 希尔排序 O(N^1.3) .

2021-04-02 15:56:56 140

原创 面试笔记@计算机网络

tcp握手和挥手https://blog.csdn.net/qq_38950316/article/details/81087809tcp粘包https://blog.csdn.net/weixin_41047704/article/details/85340311tcp长连接短连接TCP短连接我们模拟一下TCP短连接的情况,client向server发起连接请求,server接到请求,然后双方建立连接。client向server发送消息,server回应client,然后一次读写就

2021-04-02 15:51:15 96

转载 TCP握手和挥手

本文经过借鉴书籍资料、他人博客总结出的知识点,欢迎提问 序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序号,第一个字节的编号由本地随机产生;给字节编上序号后,就给每一个报文段指派一个序号;序列号seq就是这个报文段中的第一个字节的数据编号。确认号ack:占4个字节,期待收到对方下一个报文段的第一个数据字节的序号;序列号表示报文段携带数据的第一个字节的编号;而确认号指的是期望接收到下一个字节的编号;因此当前报文段最后一个字节的编号+1即为...

2021-04-02 15:50:34 197

原创 面试笔记@常见操作及经典题型模板

常见操作String转char数组char[] t1 = word1.toCharArray();前导零String formatted = String.format("%03d", num);创建二维动态数组List<List<Integer>> a=new ArrayList<>();排序public class PersonCompartor implements Comparator<Person>{ ..

2021-04-02 15:46:11 186

原创 面试笔记@多线程

并行是什么,和并发有什么区别并行:指两个或两个以上事件或活动在同一时刻发生。如多个任务在多个 CPU 或 CPU 的多个核上同时执行,不存在 CPU 资源的竞争、等待行为。并行与并发的区别并行指多个事件在同一个时刻发生;并发指在某时刻只有一个事件在发生,某个时间段内由于 CPU 交替执行,可以发生多个事件。 并行没有对 CPU 资源的抢占;并发执行的线程需要对CPU 资源进行抢占。 并行执行的线程之间不存在切换;并发操作系统会根据任务调度系统给线程分配线程的 CPU 执行时间,线程的执行会.

2021-04-02 15:45:21 129

原创 面试笔记@容器

两个类图Collection 和 Collections 有什么区别? java.util.Collection 是一个集合接口(集合类的一个顶级接口)。它提供了对集合对象进行基本操作的通用接口方法。Collection接口在Java 类库中有很多具体的实现。Collection接口的意义是为各种具体的集合提供了最大化的统一操作方式,其直接继承接口有List与Set。 Collections则是集合类的一个工具类/帮助类,其中提供了一系列静态方法,用于对集合中元素进行排序、搜索以及线

2021-04-02 15:34:51 108

原创 面试笔记@JVM

说一下 jvm 的主要组成部分?及其作用?类加载器(ClassLoader)运行时数据区(Runtime Data Area)执行引擎(Execution Engine)本地库接口(Native Interface)组件的作用: 首先通过类加载器(ClassLoader)会把 Java 代码转换成字节码,运行时数据区(Runtime Data Area)再把字节码加载到内存中,而字节码文件只是 JVM 的一套指令集规范,并不能直接交个底层操作系统去执行,因此需要特定的命令解析器执行引擎(Exe

2021-04-02 15:34:16 143

原创 面试笔记@笔试练习输入输出

通过A+B的题目练习输入输出例题1输入1 510 20输出630import java.util.*;public class Main{ public static void main(String[] args) { Scanner in =new Scanner(System.in); while(in.hasNextInt()) { int a=in.nextInt();

2021-04-02 15:33:17 157

转载 Java动态代理

代理模式是设计模式中非常重要的一种类型,而设计模式又是编程中非常重要的知识点,特别是在业务系统的重构中,更是有举足轻重的地位。代理模式从类型上来说,可以分为静态代理和动态代理两种类型。在开始之前,我们先假设这样一个场景:有一个蛋糕店,它们卖的蛋糕都是用蛋糕机做的,而且不同种类的蛋糕由不同的蛋糕机来做,这样就有:水果蛋糕机、巧克力蛋糕机等。它们卖的面包片也是用面包机做的,同样不同种类的面包片也是由不同的面包机来做,这样就有:葡萄干面包机、红豆面包机等。这个场景用 Java 语言描述就是下面这样://

2021-04-02 15:29:00 112

原创 Comparator 与Comparable排序

一、Comparable简介  Comparable是排序接口。若一个类实现了Comparable接口,就意味着该类支持排序。实现了Comparable接口的类的对象的列表或数组可以通过Collections.sort或Arrays.sort进行自动排序。  此外,实现此接口的对象可以用作有序映射中的键或有序集合中的集合,无需指定比较器。该接口定义如下:package java.lang;import java.util.*;public interface Comparable<T

2021-04-01 16:33:19 169

原创 Linux自学笔记

1.命令解析器shell---unix操作系统bash---Linux操作系统 (bash :Bourne Again shell) 这个人把shell改写适配到linux2.linux快捷键命令或路径补齐:tab键入一次,自动补齐如果不能自动补齐,即已输入部分不足以确定唯一的命令,这时候键入两次,即可输出所有相关命令主键盘快捷键:历史命令:history向上遍历:CTRL+P(或者↑)向下遍历:CTRL+N(或者↓)光标:向左:CTRL+B(或者←)向.

2021-04-01 16:15:27 142

转载 HashMap 的实现原理

一、初窥HashMapHashMap是应用更广泛的哈希表实现,而且大部分情况下,都能在常数时间性能的情况下进行put和get操作。要掌握HashMap,主要从如下几点来把握:jdk1.7中底层是由数组(也有叫做“位桶”的)+链表实现;jdk1.8中底层是由数组+链表/红黑树实现 可以存储null键和null值,线程不安全。在HashMap中,null可以作为键,这样的键只有一个,但可以有一个或多个键所对应的值为null。当get()方法返回null值时,即可以表示HashMap中没有该key,也可

2021-04-01 16:11:49 806

转载 hashCode与equals

最近去面试了几家公司,被问到hashCode的作用,虽然回答出来了,但是自己还是对hashCode和equals的作用一知半解的,所以决定把它们研究一下。以前写程序一直没有注意hashCode的作用,一般都是覆盖了equals,缺没有覆盖hashCode,现在发现这是埋下了很多潜在的Bug!今天就来说一说hashCode和equals的作用。 先来试想一个场景,如果你想查找一个集合中是否包含某个对象,那么程序应该怎么写呢?通常的做法是逐一取出每个元素与要查找的对象一一比较,当发现两者进...

2021-04-01 14:45:55 96

原创 == 和 equals 的区别是什么

== 解读对于基本类型和引用类型 == 的作用效果是不同的,如下所示:基本类型:比较的是值是否相同; 引用类型:比较的是引用是否相同;equals 解读equals 本质上就是 ==,只不过 String 和 Integer 等重写了 equals 方法,把它变成了值比较。看下面的代码就明白了。首先来看默认情况下 equals 比较一个有相同值的对象,代码如下:class Cat { public Cat(String name) { this.name =

2021-04-01 14:19:37 1381

原创 字符串常量池和String类的intern()方法

字符串常量池在Java的内存分配中,总共3种常量池,分别是Class常量池、运行时常量池、字符串常量池。字符串的分配和其他对象分配一样,是需要消耗高昂的时间和空间的,而且字符串使用的非常多。JVM为了提高性能和减少内存的开销,在实例化字符串的时候进行了一些优化:使用字符串常量池。每当创建字符串常量时,JVM会首先检查字符串常量池,如果该字符串已经存在常量池中,那么就直接返回常量池中的实例引用。如果字符串不存在常量池中,就会实例化该字符串并且将其放到常量池中。由于String字符串的不可变性,常量池中

2021-04-01 13:53:31 150

转载 泛化,实现,依赖,关联(聚合,组合)

UML 中类与类, 类与接口, 接口与接口这间的关系有: 泛化(generalization) 关系, 关联(association)关系( 关联, 聚合, 合成), 依赖(dependency)关系,实现(realization)关系.泛化(generalization)关系是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系;在Java中此类关系通过关键字extends明确标识,在设计时一般没有争议.

2021-04-01 10:54:51 1494

转载 String、StringBuffer和StringBuilder的区别

1 StringString:字符串常量,字符串长度不可变。Java中String是immutable(不可变)的。String类的包含如下定义:/** The value is used for character storage. */private final char value[];/** The offset is the first index of the storage that is used. */private final int offset;/*

2021-04-01 10:31:50 82

转载 Java中的自动拆装箱

目录1、基本数据类型基本数据类型有什么好处整型的取值范围超出范围怎么办2、包装类型为什么需要包装类3、拆箱与装箱4、自动拆箱与自动装箱5、自动装箱与自动拆箱的实现原理6、哪些地方会自动拆装箱场景一、将基本数据类型放入集合类场景二、包装类型和基本类型的大小比较场景三、包装类型的运算场景四、三目运算符的使用场景五、函数参数与返回值7、自动拆装箱与缓存8、自动拆装箱带来的问题1、基本数据类型基本类型,或者叫做内置类型,是Java中不同于类

2021-04-01 10:05:07 280

转载 自动装箱与缓存

目录发现问题看看源码扩展发现问题这个几乎是Java 5引入自动装箱和自动拆箱后,很多人都会遇到来个简单点的例子public static void main(String[] args) { for (int i = 0; i < 150; i++) { Integer a = i; Integer b = i; System.out.println(i + " " + (a == b)); }}i取

2021-04-01 10:04:14 101

原创 面试笔记@Java基础

拆箱装箱https://blog.csdn.net/wufaliang003/article/details/82347077有关自动装箱-128-127https://www.jianshu.com/p/5b2837e063fdString、StringBuffer、StringBuilder区别StringBuffer、StringBuilder和String一样,也用来代表字符串。String类是不可变类,任何对String的改变都 会引发新的String对象的生成;StringB..

2021-03-17 21:09:54 114

转载 Windows下用Git Bash安装tmux

我进行了一些研究,发现GIT Bash使用GING工具的MINGW编译。它仅使用选定的那些。您可以从https://www.msys2.org/安装工具的整个发行版,并运行命令来安装Tmux。然后将一些文件复制到Git的安装文件夹中。下边的操作是你需要做的:安装前面提到的msys2软件包并运行bash shell 使用以下命令安装tmux:pacman -S tmux 转到msys2目录,在我的情况下是C:\msys64\usr\bin 复制tmux.exe并msys-event-2-1-..

2021-01-11 11:34:19 972

转载 window安装gym中Atari游戏出现[WinError 126]问题的解决方法

当在Window环境下使用Gym模块的时候,基础环境都能使用,但是使用Atari游戏模型会报错OSError: [WinError 126] 找不到指定的模块。该问题出在Window10版本的Gym模块只做到了部分支持,要想解决该问题,应执行以下步骤:1.先卸载掉之前安装的gympip uninstall atari-pypip uninstall gym[atari]2.下载 VS build toolshttps://visualstudio.microsoft.com/thank-y

2021-01-11 11:19:51 457

原创 springboot 统一返回数据格式和统一异常处理

spring boot全局异常处理

2020-12-03 17:12:21 1074

原创 Mybatisplus条件构造器

一、wapper介绍Wrapper : 条件构造抽象类,最顶端父类 AbstractWrapper : 用于查询条件封装,生成 sql 的 where 条件 QueryWrapper : Entity 对象封装操作类,不是用lambda语法 UpdateWrapper : Update 条件封装,用于Entity对象更新操作 AbstractLambdaWrapper : Lambda 语法使用 Wrapper统一处理解析 lambda 获取...

2020-11-25 20:49:04 243

原创 spring boot自学笔记【五】整合mybatisplus

一、简介官网:http://mp.baomidou.com/参考教程:http://mp.baomidou.com/guide/MyBatis-Plus(简称 MP)是一个MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。二、特性无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑 损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作 强大的 CRUD 操作:内置通用 Mapper、通用 Se...

2020-11-25 20:32:07 302

原创 spring boot自学笔记【四】日志

1、日志框架产生背景小张 开发了一个大型系统;​ 1、System.out.println("");将关键数据打印在控制台;每次上线都要去掉,很麻烦,就想把输出写在一个文件里​ 2、框架来记录系统的一些运行时信息;开发了日志框架 ; zhanglogging.jar;​ 3、又想高大上的几个功能,例如:异步模式?自动归档?xxxx? 就开发了zhanglogging-good.jar​ 4、那就需要将以前框架卸下来,换上新的框架,重新修改之前相关的API;可以以后再开发zhanglog

2020-11-20 19:26:55 106

原创 windows下启动和中止springboot项目(打好的jar包)

由于项目部署需要在windows服务器上面,写成bat文件执行xxxx.jar文件,正常我们执行后台命令start%JAVA_HOME%\bin\javaw.exe -jar XXX.jar,是能启动程序,但是后台找到的进程是javaw.exe,如果出现多个jar启动,我们不知道停止那个应用,所以需要对进程起名。复制,起名我们使用拷贝javaw.exe重命名的方式:copy "%JAVA_HOME%\bin\javaw.exe" "%JAVA_HOME%\bin\XXX.exe",这样我们就可..

2020-11-18 16:29:14 2764 3

原创 Vue/cli 3.0设置环境变量和模式

设置环境变量的需求通过配置环境变量,可以使我们的开发更加高效。最常见的情景是我们的API请求接口,他常常是分为开发环境,测试环境和生产环境的。如果每一次打包我们都是修改请求接口的地址,那样就显得太愚蠢了。并且如果区分区分环境的地方很多,你可能会有很多疏漏。而通过设置环境变量,统一管理每个环境下的所有变量。在Vur cli 2.0的版本中我们是通过在config文件夹进行配置的,Vue/cli 3.0相对简单,只需要在项目根目录创建.env文件即可。设置环境变量你可以替换你的项目根目录中的下列

2020-11-15 09:42:35 705

原创 spring boot + vue3 前后端分离处理跨域问题

1、什么是跨域请求同域资源:在协议,域名 (或 ip 地址)相同,端口号相同下的请求资源,可以看做是同域资源请求跨域资源:请求的资源只要 是协议、域名(或 ip 地址)、端口号中任意一个不同的资源都可以认为是跨域资源如:端口号不同127.0.0.1:80与127.0.0.1:8888属于跨域域名 (或 ip 地址) 不同127.0.0.1:80与www.baidu.com:80属于跨域2、前后端分离项目中的跨域问题例如:前端 vue项目...

2020-11-13 01:03:40 2149

原创 axios 默认配置和实例配置

默认配置在axios配置中存在baseUrl,header等配置,每次做的axios时,不一定所有的配置都要自己写,这时候要做一个默认值,例如:axios.defaults.baseURL ="http://localhost:8080"之后调用如下post方法,请求的接口地址就是http://localhost:8080/useraxios.post('/user', { firstName: 'Fred', lastName: 'Flintstone' }) .

2020-11-12 16:37:33 5198 9

转载 IDEA下springboot+jpa连接oracle数据库

之前用Springboot连接的都是MySQL,这次要求换成Oracle,其实区别不是很大,主要就是改一下配置文件。下面写一个简单的例子,实现springboot对oracle数据库的查询操作。(springboot+jpa实现增删改查网上教程很多)新建Springboot项目新建Spring项目,目录结构如下:新建实体类CityTest:@Entitypublic class CityTest { @Id @GeneratedValue private Lon

2020-11-11 18:54:53 1259

黑马Linux笔记.zip

黑马学习linux 笔记

2021-02-21

lukeall-4.10.0.jar

Lucene是一套用于全文检索和搜寻的开源程序库,由Apache软件基金会支持和提供;Lucene提供了一个简单却强大的应用程序接口(API),能够做全文索引和搜寻,在Java开发环境里Lucene是一个成熟的免费开放源代码工具;Lucene并不是现成的搜索引擎产品,但可以用来制作搜索引擎产品 Lukeall是lucene的索引查看工具,是一个jar包

2020-09-17

组合优化算法.zip

1 [Lecture Notes] J. Lee - Combinatorial Optimization (2018, Springer) 2 Combinatorial Optimization - Theory and Algorithms - 5th 3 Combinatorial Optimization - Theory and Algorithms - 4th Edition - 2008 4 William J. Cook, William H. Cunningham, William R. Pulleyblank, Alexander Schrijver-Combinatorial Optimization-Wiley-Interscience (1997) 5 组合最优化算法和复杂性(普林斯顿大学的教材) 6 组合最优化 理论与算法_(德)科泰_PDF:PDF_2014.01_544_13456473 一共这六篇pdf

2019-07-22

qt qss主题样式

QUI皮肤生成器介绍: 1:极简设计,傻瓜式操作步骤:,只需简单几步即可设计出漂亮的皮肤。 2:所见即所得,想要什么好的皮肤,分分钟搞定。 3:自动生成样式中所需要的对应颜色的图片资源文件,比如单选框、复选框指示器图片。 4:集成自定义无边框标题栏样式、左边导航切换样式、顶部导航切换样式、设备面板样式。

2019-04-27

南京理工大学计算机考研复试资料

亲自考研发现,好多年前的题目和试卷借鉴性不高,近几年的真题和期末题多做才是正解! 但我还是把所有资料上传了,请自行取舍。

2019-04-02

数据库系统基础教程章节答案

《数据库系统基础教程》是2003年机械工业出版社出版的图书,作者是Jeffrey D.Ullman、Jennifer Widom。

2019-03-10

mysql-connector-java-5.1.41-bin.jar

mysql-connector-java-5.1.41-bin.jar JDBC 数据库连接必备

2018-01-02

空空如也

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

TA关注的人

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