自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

是袁同学呀

真理无穷,进一步有进一步的欢喜

  • 博客(47)
  • 收藏
  • 关注

原创 消息中间件相关笔记整理

个人闲暇时整理的消息队列相关被面试过的问题,偏向于个人理解,受工作经验局限,可能有不准确之处,敬请路过大佬指出~

2024-08-15 23:07:59 729

原创 Java虚拟机面试题汇总

个人闲暇时整理的Java虚拟机相关常见面试问题及答案,主要包含内存划分、对象创建、垃圾回收和GC调优四个部分。个人能力有限,不一定完整,如有遗漏模块欢迎补充。

2024-07-09 21:26:02 1031

原创 Java多线程相关面试题整理

个人闲暇时整理的Java并发编程相关问题,偏向于常见面试题总结,非系统的知识理解,不适合零基础。个人知识有限,如有遗漏欢迎补充。

2024-07-05 22:28:16 1228

原创 Java集合整理笔记

个人闲暇时整理的Java集合相关笔记,第一部分是简单理解一下基本概念,第二部分是总结十道常考面试题。个人能力有限,文字比较主观,如有描述不当敬请指正~

2024-07-02 11:24:24 695

原创 计算机网络知识整理笔记

个人闲暇时整理的计算机网络相关的学习笔记,偏向于常见面试题总结,非系统性的知识总结,不适合零基础。个人知识有限,有遗漏知识点感谢补充。

2024-06-28 16:43:41 4207 5

原创 Java基础知识整理笔记

个人闲暇整理的Java基础知识笔记,偏向对于常见面试问题的答案整理,能力有限,非系统性的知识总结。

2024-06-27 14:14:04 1069

原创 Elastic-Job | 由浅入深一篇理解分布式定时任务的基本用法及简单原理解析

目录一、定时任务的基础实现1.利用Thread及Sleep实现,通过while循环让其不停运行2.使用jdk的Timer和TimerTask3.ScheduledExecutorService4.Quartz实现附:Cron表达式5.Spring Task实现6. 分布式定时任务Elastic-Job1.概述2.调度模型3.功能4.适用场景5.分片策略6. ElasticJob 原理7.失效转移其次,定时任务大体分两种:指定间隔时间执行...

2022-04-03 22:13:52 2499

原创 使用@Autowire注解注入dao层时空指针异常:java.lang.NullPointerException: null

今天帮室友找bug的时候,她的一个消息监听类里用了@Autowired注解去注入DAO层接口,然后发现她注入的对象一直在报空指针异常:java.lang.NullPointerException,于是开始排查问题所在:1. 首先这种注入失败一般是因为该类上没有@Service注解,但是加了之后仍然注入失败空指针异常 ...2. 开始病急乱投医,@Autowired换成@Resource,类上注解从@Service换成@Repository又换成@Component,将它们排列组合全都试了一遍,依旧无

2021-06-06 18:04:51 2611

原创 Spring报错 | org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named ‘xxx‘

关于Sprinf项目启动时报错:org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'xxx'....我承认这个问题我大概遇到过3 4 5 6 7 8次了吧,每次都只能记得上次有这个问题我找到原因解决了,但是原因是啥来着?好像挺简单的一个点,但是具体哪里,就是想不起来(可能是个猪脑子)所以即使简单,也还是做个记录,免得下次猪脑子又想不起来Round 1:首先,是个可能不小心会遗漏的错误,

2021-04-09 16:46:21 4000

原创 vue+axios | 解决前后端交互时报错302的憨憨问题

前提:页面是用Element写的,文档https://element.eleme.cn/#/zh-CN/component/layout1. 关于入参的值绑定,一般是通过Form表单绑定在一个对象上,然后将对象作为入参传入,但是当页面入参不是通过from表单绑定的时候呢?...

2021-02-20 16:04:33 5816

原创 Spring Boot学习笔记-03 | SpringBoot如何整合SpringMVC之端口和静态资源、事务和连接池

目录Spring Boot整合SpringMVC端口和静态资源修改tomcat端口访问静态资源Spring Boot整合事务和连接池1)进行事务配置2)配置数据库连接池hikariSpring Boot整合SpringMVC端口和静态资源SpringBoot是内置tomcat的,所以整合SpringMVC我们就看一下修改tomcat端口和静态资源的过程首先...

2020-03-25 15:27:38 282 1

原创 使用Slf4j报错:javax.management.InstanceNotFoundException: org.springframework.boot:type=Admin

在使用Spring Boot整合SpringMVC拦截器时,初次使用日志出现报错:javax.management.InstanceNotFoundException: org.springframework.boot:type=Admin图忘记截了,但是解决办法为:然后去掉springboot下面选项的勾选框:然后在解决这个问题之后又遇到了:org.apache.tomc...

2020-03-25 13:38:44 2612

原创 Spring Boot学习笔记-02 | 关于SpringBoot的自动配置流程以及插件lombok的使用

在Spring Boot的定义中有这么一句:Spring Boot基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。所以今天了解一下Spring Boot的配置文件、自动配置原理以及流程。目录Spring Boot中的配置文件简介Spring Boot自动配置原理追踪源码Spring ...

2020-03-24 17:56:18 478

原创 Spring Boot学习笔记-01 | 如何优雅的使用Java代码成功配置Druid并使用

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。

2020-03-23 15:21:43 646

原创 MyBatis-04 | 关于MyBatis高级映射实现一对一、一对多、多对多查询和动态SQL的使用

数据库表的三种关系 一对一关系 一对一顾名思义,比如一个人只能有一个身份证号,一个身份证号只能对应一个人,这就是一对一关系。 一对多关系 一对多关系,比如一公司部门有多个职员,但一个职员只能属于一个公司部门,这是一对多关系。 多对多关系 多对多关系,比如一个学生可以选多个课程,一门课程也可以有多个学生上课,这种的属于多对多关系。实现多表查询的步骤创建两张表 ...

2020-03-22 16:24:11 466

原创 MyBatis-03 | 学习mybatis中连接池的使用及mybatis的事务管理机制

前面在学习JDBC的时候也已经提到过几种连接池,比如常见的c3p0、Druid的使用:https://blog.csdn.net/weixin_44187963/article/details/104877816在此基础上今天来看看MyBatis中关于连接池的使用~...

2020-03-22 14:44:21 240

原创 使用mybatis项目报错:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)

在mybatis中dao接口与mapper配置文件在做映射绑定的时候出现问题。简单说,就是接口与xml要么是找不到,要么是找到了却匹配不到。org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): edu.xatu.Dao.AccountImpl.findAll at org.ap...

2020-03-21 17:16:35 1026 1

原创 MyBatis-02 | 一篇了解MyBatis框架实现CRUD操作及MyBatis配置文件参数

回顾mybatis环境搭建首先创建一个maven项目,就一路next下去的那种即可; 然后在pom文件中引入几个依赖:<dependencies> <dependency> <groupId>org.mybatis</groupId> <artifactId>myb...

2020-03-19 22:51:32 131

原创 设计模式-01 | 23种设计模式概述

目录1. 设计模式概念:2.GOF(Gang of Four)3.设计模式的分类1)创建型模式(Creational Patterns)2)结构型模式(Structural Patterns)3)行为型模式(Behavioral Patterns)4.设计模式间的关系5.设计模式的六大原则1、开闭原则(Open Close Principle)2、里氏代换原...

2020-03-18 14:58:21 212 3

原创 Mybatis-01 | 通过一个mybatis的入门案例熟悉mybatis的开发步骤

目录1. MyBatis概述什么使ORM?2. Mybatis入门环境搭建:注意事项:3. Mybatis工作流程1. MyBatis概述mybatis是一个持久层框架,用Java编写,它封装了jdbc操作的很多细节,使开发者只需要关注SQL本身,无需关注注册驱动、创建连接等繁杂的JDBC原始操作,它使用ORM思想实现了结果集的封装。什么使ORM?Objec...

2020-03-15 16:10:56 177

原创 JDBC | 使用Connection对象管理事务及两种常见数据库连接池c3p0和Druid的使用

目录1. 事务1)操作步骤:2)使用Connection对象管理事务2. 数据库连接池概念:好处: 实现:3. 使用数据库连接池c3p0使用c3p0步骤:4. 了解数据库连接池Druid使用Druid步骤:5.简单了解JDBCTemplate1)什么是JDBCTemplate?2)步骤:1. 事务1)操作步骤: ...

2020-03-15 14:22:55 664

原创 JDBC | JDBC编码步骤及各个对象详解

目录1.JDBC的概念2.JDBC编码步骤3.详解各个对象1)DriverManager:驱动管理对象2)Connection:数据库连接对象3)Statement:执行sql的对象4)ResultSet:结果集对象,封装返回结果的5)reperPreparedStatement:也是执行sql对象,但比Statement功能强大1.JDBC的概念 ...

2020-03-15 13:34:07 334

原创 使用c3p0数据库连接池的各种报错警告: Having failed to acquire a resource, com.mchange.v2.resourcepool

在尝试使用c3p0数据库连接池的时候,首先先导入了三个jar包:c3p0-0.9.5.2.jar mchange-commons-java-0.2.3.4.jar mysql-connector-java-8.0.13.jar然后写了c3p0-config.xml配置文件如下:<c3p0-config> <!-- 默认配置,如果没有指定则使用这个配置 --...

2020-03-14 18:26:30 29614 13

原创 JDBC连接数据库时报错com.mysql.cj.exceptions.InvalidConnectionAttributeException

在JDBC连接数据库时,如下报错:Exception in thread "main" java.sql.SQLException: The server time zone value '???ú±ê×??±??' is unrecognized or represents more than one time zone. You must configure either the ser...

2020-03-10 18:08:15 1529

原创 JavaFX | 初识JavaFX的基础概念

目录JavaFX概念JavaFX组成结构JavaFX使用场景JavaFX常见类1. Application类2. Scene类3. Scene的根节点ParentJavaFX概念JavaFX是一个Java库,可以使用它开发富互联网应用程序。使用此库编写的应用程序可以跨多个平台一致运行。使用JavaFX开发的应用程序可以在各种设备上运行,如台式计算机,手机,电视...

2020-01-17 14:47:43 1530

原创 解决cmd或IDEA启动数据库时:发生系统错误5 拒绝访问的方案

在好久不使用数据库后,突然需要使用数据库发现在IDEA的Terminal直接输入命令net start mysql 或者直接打开cmd输入此命令都报错:发生系统错误5 拒绝访问然后折腾了一会发现解决方案如下:1. 在打开cmd的时候应该右键选择以管理员身份运行,这样打开cmd再输入net start mysql就可以成功打开数据库了呢!2. 此时再在IDEA端操作数据库就可以成...

2019-12-19 14:21:39 2137

原创 面经分享 | 小白菜的2020秋招经历分享记录(Java开发方向)

目录前言投递渠道面试准备及注意事项公司面经百度京东美团点评金山云58同城最后一点唠叨前言已经十二月份了,虽然我的秋招已经结束好久了,但今天的博客突然间就想分享一下自己作为一个小白菜心酸的秋招历程,包含一些面过的公司面经整理,主要目的是为了记录自己,当然如果能对一些没有经历过面试的学弟学妹们能有所帮助就更好了......作为一个数学系的妹子,大一大...

2019-12-11 20:37:35 554

原创 菜鸟教程 | IDEA创建一个spring boot项目的详细过程

目录1、新建项目2、选择项目所需依赖3、手动导入部分依赖创建spring项目的详细过程~1、新建项目file --> new --> projectgroupid 和 artifactId 被统称为坐标:groupid是项目组织唯一的标识符,实际对应JAVA的包的结构,是main目录里java的目录结构; artifactId 是项目的唯一的标识符...

2019-12-10 23:29:57 1744

原创 Java多线程 | 用多个线程模拟实现银行叫号系统

目录Java多线程(一)线程和进程概念区别线程的3种创建方式线程的启动模拟实现银行叫号系统Java多线程(一)线程和进程概念进程:进程是指在系统中独立运行的一段程序,是资源(内存、CPU)分配的最小单位,打开电脑上的任务管理器,比如QQ,IDEA等,一个应用就可以称之为一个进程。线程:线程是指进程中的某一个任务,线程是程序执行的最小单位,比如Q...

2019-12-09 18:11:18 3436 1

原创 浅析Java文件IO

前言:提到文件先了解一下编码在windows下,直接创建txt文本文件,我的默认是ANSI编码,但文本文件编码可任意修改;我使用的是IDEA,所以我的项目默认编码是UTF-8编码,UTF-8编码中,中文占3byte,英文占1byte;根据结构图理解IO流的三种分类方式:按照流的方向分为:输入流和输出流按照流的数据单位:字节流和字符流按照流的不同功能:节点流和处理流我是按照字...

2019-08-15 16:00:42 177

原创 设计模式-02 | 关于Java单例模式的七种实现方式

设计模式——单例模式单例模式:单例类只能有一个实例单例类必须自己创建自己的唯一实例单例类必须给其他所有对象提供这一实例单例模式的七种实现形式:1. 饿汉式过程特点:先进行类的初始化,在程序执行的时候变量已经是初始化之后的了;线程安全:饿汉式是线程安全的单例模式,因为从代码来看,进入程序后首先就初始化了static变量,之后调用getInstance()的时候,事实上s1是已经...

2019-08-13 22:17:20 104

原创 MySQL数据库 | 表的增加、删除、修改、查询等基础语句的使用

一、操作数据库在操作之前当然是先要登陆数据库:mysql -u root -p密码1、建立、删除数据库:建立一个名为Hello的数据库:create database Hello;显示数据库:(你可以建立删除操作时用show语句查看你建立的数据库)show databases;删除数据库:drop database test; //此处的test是要删除的...

2019-07-30 00:20:25 1345

原创 数据结构及算法 | Java数据结构——回溯算法之子集树

1、介绍一下子集树,什么是子集树?当所给问题是从n个元素的集合S中找出满足某些条件或者性质的子集时,解空间是子集树;比如典型的0-1背包问题-----and-----轮船装载问题:解空间 就是指满足问题要求的所有解组成的集合,一个问题的解往往包含了得到这个解的每一步,就是抽象的对应解空间树的从根节点到叶子节点的一条路径。时间复杂度为O(2的n次方)。下面现用我们老师给出的一个引入话题的例...

2019-07-25 23:17:33 674

原创 数据结构及算法 | Java数据结构——AVL平衡二叉搜索树

一、什么是(AVL)平衡二叉搜索树?平衡二叉搜索树在二叉树的概念基础上增加了平衡的概念,所谓平衡就是左右子树的高度差不能大于 1(小于或者等于1都可称作平衡的)。所以为了让二叉树达到平衡,又可以引入四种调节平衡的操作:左旋转、右旋转、左平衡、右平衡。二、四种旋转的具体过程及如何实现?1、左旋转:当右孩子的右子树太高的时候,用左旋转进行调整,如图:代码实现参考:/** * 以参数no...

2019-07-22 20:29:44 209

原创 集合 | Java集合的实际应用篇

我们需要明确的几个问题:1、什么是快速失败?快速失败和安全失败有什么区别?2、单列集合和双列集合的用法上作简单的归纳?3、怎么分别用单列集合和双列集合实现斗地主的发牌?4、部分底层源码的剖析?一、快速失败(fail-fast) and 安全失败(fail-safe)1、快速失败:在迭代器遍历一个集合对象时,如果在这期间对集合的对象进行更改,那么就会产生“快速失败”。但是其实,快速失败...

2019-07-16 16:53:12 1013 1

原创 数据结构及算法 | Java数据结构——BST二叉搜索树(下)

上次关于BST二叉搜索树的部分还遗留有一些扩展型的问题,以及增加、删除、查找元素的递归实现,此篇作为补充。一、必备基础操作的实现1、BST树的插入元素的递归实现/** * BST树的递归插入API接口 */private void insert(T data){ this.root = insert(data,root);}//递归实现的过程private BSTNod...

2019-07-09 18:44:36 187

原创 集合 | Collection的各子类小结

由前面的集合基础那篇博客中已经知道了collection类下有List和Set两个模块,此篇博客将List与Set中的所有方法都具体的举例实现。一、List:list中有:ArrayListArrayList的使用,LinkedListvector那么,这三者之间有甚么区别呢?...

2019-07-03 11:35:52 6948

原创 数据结构及算法 | Java数据结构——BST二叉搜索树(上)

一、BST相关概念BST(二叉搜索树)可以实现增加、删除、搜索的时间复杂度都为log2n(以2为底,并非2n)。关于树的基础概念根据图中数据解释以便理解:58是根节点root;23是58的左孩子;82是58的右孩子;23是12和35的父节点;12是23的左孩子;35是23的右孩子;而23作为父节点,它的左孩子以及孩子和孩子,即23、12、35、18、47这些叫做58的左子树;他的右孩子及孩...

2019-06-29 15:43:20 337

原创 数据结构及算法 | Java的堆排序及其他排序算法小结

常见算法或者工具1、朴素算法2、KMP算法3、哈希表4、形状树5、冒泡排序算法6、选择排序算法7、插入排序算法8、快速排序算法9、归并排序算法

2019-06-17 00:02:51 124

原创 数据结构及算法 | 递归和排序之递归函数、快速排序和归并排序

递归函数1、原理:递归的实质就是函数调用自身,过程分为递过去和归回来两个部分。递过去:缩小范围归回来:计算值递归函数需要注意的两个点:1、判断递归结束的条件2、判断n与n-1之间的关系更具体的解释看图理解,语言能力有限!用递归求6!的结果:2、代码如下:private boolean func3(int[] arr) { return func3(arr, 0, arr...

2019-06-06 00:42:45 580

空空如也

空空如也

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

TA关注的人

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