自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (1)
  • 收藏
  • 关注

原创 HashMap源码分析

HashMap底层实现和原理HashMap介绍概述HashMap基于Map接口实现,以键值对方式存储,并且允许使用null,以为key是唯一的,因此只能有一个key为null,它是无序的。继承关系public class HashMap<K,V>extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable基本属性static final int DEFAULT_INITI

2020-12-24 11:23:58 162

原创 反射机制与动态代理

反射机制类加载类加载指的是将类的class文件读入内存,并为之创建一个java.lang.Class对象当一个变量被修饰成static final,并在编译器就能确定其值,也就是常量,那么通过类名.变量名访问该变量时不会加载该类(也就是访问常量并不会初始化这个类)类加载时机类从加载到虚拟机内存开始,到卸载出内存为止,真个生命周期包括:加载(Loading),验证(Verification),准备(Preparation),解析(Resolution),初始化(Initializati

2020-12-22 14:03:58 545

原创 SpringBoot启动原理解析一(@SpringBootApplication标签)

这是SpringBoot项目的启动类@MapperScan("com.gq.mapper")@SpringBootApplicationpublic class GqwpApplication { public static void main(String[] args) { SpringApplication.run(GqwpApplication.class, args); }}​ 从上述代码可以看出,核心代码只有Annotation定义(@SpringB

2020-12-22 13:52:18 512 1

原创 Spring框架整理

Spring的概念Spring是一个轻量级Java开发框架,最早有Rod Johnson创建,目的是为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题。是一个分层的JavaSE/JavaEE full-stack(一站式)轻量级开源框架,为开发Java应用程序提供全面的基础架构支持。Spring负责基础架构,因此Java开发者可以专注于应用程序的开发。Spring最根本的使命是解决企业级应用开发的复杂性,即简化java开发为了降低Java开发的复杂性,Spring采取了以下4种关键策略基于P

2020-11-04 18:33:39 391

原创 关于逆向工程text类型的问题

<div class="panel panel-primary"th:each="notice: ${list}"> <div class="panel-heading" th:text="${notice.title}"></div> <div class="panel-content" th:text="${notice.content}"></div></div>使用th标签循环内容,显示不出来,控制台也不报

2020-11-03 15:46:47 173

原创 Mybatis框架整理、

概念(Mybatis是什么)一个持久层框架,它支持自定义SQL、存储过程以及高级映射Mybatis消除了几乎所有的JDBC代码以及设置参数和获取结果集的工作Mybatis可以通过简单的XML或注解来配置和映射:原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式Java对象)为数据库中的记录。Mybatis的由来MyBatis 本是apache的一个开源项目iBatis。2010年这个项目由apache software foundation 迁移到

2020-11-03 15:44:57 405

原创 Java文件读写

Java文件读写java文件基本操作文件类File常用方法:方法名含义boolean creatNewFile创建文件boolean exists判断文件是否存在String getAbsolutePath获取文件的绝对路径String getName获取文件名String getParent返回此File对象的上一级目录,如果没有上一级目录,则返回nullString get

2020-08-08 10:06:26 183

原创 Java常用类

JAVA常用类一、JavaAPI(Application Programming Interface 应用编程接口)文档这些文档原先是程序中的注释。利用JavaDoc技术,将这些注释抽取出来,组织行程的以HTML为变现形式的API文档。API中,包名以java开始的包是java核心包(javaCore Package)​ 包名以javax开始的包是java扩展包(JavaExtension Package)常用包包名内容Java.applet.*提供了创建appl

2020-08-06 16:03:40 139

原创 集合框架和泛型

文章目录JCF(Java Collection Framework)容器框架容器:容器框架:容器框架包含三部分:容器框架的优点JCF集合框架介绍JCF的集合接口是CollectionJCF的迭代器接口IteratorJCF主要的数据结构实现类JCF主要的算法类列表ListList:列表**List 主要实现**ArrayListLinkedListVectorArrayList和LindkeList的比较小结:集合Set集合Set**Java中的集合接口Set**HashSetLinkedHashSetT

2020-08-06 16:01:58 210

原创 关键字Static和Final && 常量设计和常量池

关键字Static和Finalstatic关键字Java中static关键字(可作用在):方法、变量、类、匿名方法块。**static变量:**不管有多少个对象,static修饰的变量在内存(栈)中只有一个。**static方法:**可以用类名直接引用,无须new对象来引用,在同一类中可直接方法名调用**static 块:**static块会在类加载的时候执行并且只会执行一次,并且static块 > 匿名块 >构造函数匿名块和构造函数,每new出来一次,就执行一次。单例模式单例

2020-07-24 19:45:28 160

原创 二、选择排序

数组(Array)数组特点所谓数组,就是相同数据类型的元素按一定顺序排列的集合,数组的 存储区间是连续的,占用内存比较大,故空间复杂的很大。但数组的二分查找时间复杂度小,都是O(1);数组的特点是:查询简单,增加和删除困难。1.插入数据和删除数据效率低​ 插入数据时,待插入位置的元素和他后面的所有元素都需要向后移动​ 删除数据时,待删除位置后面的所有元素都需要向前移动2.随机访问效率很高,时间复杂度可以达到O(1);​ 因为数组的内存是连续的,想要访问那个元素,直接从数组的首地址向后偏移就可

2020-07-15 09:13:33 161

原创 三、递归(Recursion)

定义递归,就是在运行的过程中调用自己构成递归的条件:1.子问题必须与原问题为同样的事,且更为简单2.不能无限制的调用本身,必须有个出口,化简为非递归状况处理基线条件和递归条件由于递归函数调用自己,因此编写这样的函数时很容易出错,进而导致无限循环。编写程序时必须告诉它何时停止,因此每个递归函数都有两部分:基线条件(base case)和递归条件(recursive case)示例://简单递归函数 public static void cutDown(int down) { Syste

2020-07-15 09:08:23 177

原创 一丶二分算法

文章目录二分算法定义代码运算时间大O表示法一些常见的大O运行时间小结二分算法定义二分查找是一种算法,其输入是一个有序的元素列表(必须是有序列表)。如果要是查找的元素包含在列表中,二分查找返回其位置,否则返回null代码 /** * @author Ritter * 二分查找 * 给定已升序号的n个元素a[0:n-1],现要在这n个元素中照出一个特定元素x * 分析: 该问题可以分解为若干规模较小的相同问题 * 子问题的解可以合并为原问题解 * 各个子问题是相互独立

2020-07-10 17:05:16 288

原创 (LeetCode)删除排序数组中的重复项

给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出新长度后面的元素。static int getLength(int[] nums) { int temp=0;//不相等的次数,temp+1为移除相同数组

2020-06-30 10:48:56 152

原创 斐波那契数列由数字1 1 2 3 5 8 13 21 34等等组成,其中每一个数字(从第三个起) 都是由前两个数字的和。

/*斐波那契数列由数字1 1 2 3 5 8 13 21 34等等组成,其中每一个数字(从第三个起) 都是由前两个数字的和。创建一个方法,接受一个整数参数,并显示从第一个元素开始 由该参数指定的个数所构成的所有裴波那契数字, 例如 fibLoop 输入参数5 fibLoop是方法输出是 1 1 2 3 5*/ public static int fibLoop1(int num) { if (num<=1) { return 1 ; } int temp=0;//n-

2020-06-29 10:36:43 4827

原创 (暴力破解)计算数字 k 在 0 到 n 中的出现的次数,k 可能是 0~9 的一个值。

计算数字 k 在 0 到 n 中的出现的次数,k 可能是 0~9 的一个值。示例:输入:k = 1, n = 12输出:5解释:在 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] 中,我们发现 1 出现了 5 次 (1, 10, 11, 12)(注意11中有两个1)。public int digitCounts(int k, int n) { //定义次数 定义n+1长度的数组(如果n数值大于10)拆分n int num=

2020-06-26 09:54:02 586

原创 a输入一批整数,使用循环求出最大值与最小值,输入0时结束

/** * 解题思路:1.不确定循环次数 2.输入0结束 使用do-while循环 * 求最大最小值(作比较)if语句 */ int num=0,max = 0,min = 0,i=0; do { System.out.println("输入一批整数,(输入0时结束)"); Scanner input=new Scanner(System.in); num=input.nextInt(); if (i==0) { min=num;//将第一次输

2020-05-18 19:17:51 1530

Mybatis逆向工程自动生成

使用 以及常见问题 见 readME 和逆向工程.md 逆向工程maven依赖 jar包放在lib下

2020-11-04

空空如也

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

TA关注的人

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