自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 SpringBoot集成AOP

一:首先导入依赖,集成SpringBoot只需要导入这一个依赖就够了<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId></dependency>二:创建一个类,将这个类变为切面@Aspect 将该类变为一个切面@Component --将该

2021-04-30 16:42:14 613 1

原创 RocketMq的创建Bean失败

RocketMq的创建Bean失败 请查看是否意外重启并查看是否有提示JSON版本问题请删除日志,然后进行重启

2021-04-25 10:21:48 327

原创 AOP和@Controller不能注入Bean空指针问题

首先: 了解一下AOP 在Spring中是如何加载的, 如果使用了AOP那么声称Bean的规则,就变为AOP的规则和Class字节码文件的规则,通过BeanFactory 生成最后的Bean 如果此时你使用private修饰接口/方法 那么该方法里面引用的注入对象,就会为null 因为该方法根本没有被加入到容器里面,就不会有注入的对象最后: 说一下,这个东西在Spring的文档里面就有讲 如果想了解更加详细的,可以去翻阅文档 -~~~~...

2021-04-20 22:32:41 468

原创 @ServerEndpoint 不能注入 @Autowired问题解析

都会报空指针错误的原因 本质原因:spring管理的都是单例(singleton)和 websocket (多对象)相冲突。​因为WebSocket 是一个多例,因为你需要多个对象来保存链接,所以就和单例无缘了,然而我们交给Spring管理的是单例的东西,那么我们可以从这里知道,WebSocket的对象是不能交给Spring管理的,此时我们有两种解决方案;方案1: 在上下文获取你需要的对象package cn.jiabao.util;import org.springframework.bea

2021-04-20 00:29:47 2878 3

原创 匿名内部类的final访问

老哥写的不错https://cuipengfei.me/blog/2013/06/22/why-does-it-have-to-be-final/如果还想了解:可以了解一下闭包概念,和其他语言编译之后匿名内部类的反编译,有对比很好懂总结:其实就是为了防止一个变量在内部类访问,和外部类进行修改,导致数据不一致的问题...

2021-02-24 14:56:50 97

原创 RedisTemplate和StringRedisTemplate

RedisTemplate和StringRedisTemplate首先说一下估计和我遇到了同样的问题了首先说一下估计和我遇到了同样的问题了接手别的代码,发现别人的Redis和我的Redis不太一样 emmmm当RedisTemplate 存入一个key和内容的时候,JdkSerializationRedisSerializer 进行序列化的这种方式,是将存入的东西转为字节数组,此时你打看查看数据是以不可读取的状态呈现的,并且如果你使用这个,不带序列fistjson 那么你也没办法使用可视化工具打开

2021-02-08 14:24:01 166

原创 shiro使用方法

先写一个大纲能做什么1.认证2.授权3.会话管理4.加密5.缓存6.与Web集成配置在最后边认证1:如何实现登陆我们先捋一下登陆历程,我们点击登陆, 1:前端数据发送到登陆控制器 2:在控制器里面创建令牌,然后我们通过shiro的subject的对象调用login方法 传入令牌 3:调用login,之后就交给安全管理器处理,安全管理器从realm拿到数据 4:之后安全管理器 再次委托到 authenticator 传入数据源取来的数据 和token判断账户密码是

2020-11-18 16:40:18 553

原创 软件设计和编码-随笔

开发环境-目前idea jdk部署项目:把我们写好的java代码开放,部署到服务器上,然后我们可以通过浏览器访问 (环境要一致)独立ip软件的生命周期:立项到停用的过程1:问题的定义和规划:开发方和需求方讨论目标和可行性2:需求分析:在确定软件开发可行之后,对软件需要实现的各功能进行可行性需求的分析3:软件设计:根据需求文档,把整个软件划分为模块,选择数据库框架以及各种技术,总体设计,详细设计4:程序编码:将软件转换为计算机可运行的程序代码.要有 可读性 易维护性 提高程序与逆行效率5:测试

2020-09-03 20:25:19 989

原创 XML语法特点

XML(一种文件的格式)可扩展的标记语言1:作用:可以交换数据(是一种通用的数据交换的格式) 配置文件 等2:XML语法只要在第一行打上<?xml version="1,0" encoding="utf-8" standalone="yes"?> 就可以了yes表示,不包含其他文档 no为包含其他文档,no可以不;< >表示XML文档中元素(Element)version 就是版本的意思 有只有一个版本encoding 就是输入的编码格式3:XML的书写要求(1)

2020-09-03 20:24:28 364 1

原创 JAVA中File和IO

File(文件夹/目录)作用:操作文件本身,如名字遍历删除,如果需要操作文件中的内容,我们必须使用Io来完成window一般用\分割文件 然后 但是java中用//这个或者\操作File常见方法:String getName():获取文件名称String getPath():获取文件路径String getAbsolutePath():获取绝对路径相对路径和绝对路径:假如一个学生是我们班级的,我们只需要说他的名字就好,但是要是其他班级的就需要说明,是哪个班级的谁谁谁File

2020-08-30 20:02:28 205

原创 JAVA数据结构集合框架泛型

我们在接收新的技术的时候怎么接受他的好 ?1:性能方面 改变比较大2:使用方面比较简单(如果新的性能高十分麻烦也会用新的数据)此时我们来恶心一下自己,来改一下数组实现和容器差不多的功能有多麻烦,然后我们在来接触集合,那么我们首先来模拟一下ArrayList的底层操作模拟ArrayList作用:计算机存储组织数据的方式,然后就是模拟数据进行增删改查模拟ArrayList的增删改查先初始化数组一下 然后对集合数组进行增删改查操作public class PlayerList{ //存储

2020-08-27 20:49:05 327

原创 JAVA多线程超多细节

多线程作用:1:发挥多核CPU的优势(充分利用cpu资源)如果是单线程的程序,那么在双核CPU上就浪费了50%,在4核CPU上就浪费了75%。单核CPU上所谓的”多线程”那是假的多线程,同一时间处理器只会处理一段逻辑,只不过线程之间切换得比较快,看着像多个线程”同时”运行罢了。多核CPU上的多线程才是真正的多线程,它能让你的多段逻辑同时工作,多线程,可以真正发挥出多核CPU的优势来,达到充分利用CPU的目的。多线程完成cpu内核的快速切换,提高CPU的利用率2:防止阻塞假如单线程执行的时候在返回数

2020-08-24 17:39:15 271

原创 JAVA异常的处理方法和体系

异常的体系他们之间的继承体系Throwable//抛出 能力-> Exception(编译)->Runnable(运行) //运行中出现逻辑问题可以处理->Error //虚拟机出现了问题我们需要处理的异常只有Exception和Runnable其他的异常(虚拟机异常)我们处理不了也不能处理如果程序中出现了异常或者可能出现的我们不处理,那么当异常出现的时候此时程序将不会继续运行,如果处理就可以继续运行了处理异常的方法当异常出现的时候我们有两种方法处理他1:try()ca

2020-08-22 16:36:54 370

原创 JAVA随机数-日期-正则

StringBurilder作用:可改变的字符串 AbstractStringBuider里面的char数组没有用final修饰String str1 = "积累"; String str2 = "务实"; //的到一个新的字符串 每次拼接都会得到一个新的字符串(对象) 占用内存空间 //如果再循环中拼接字符串 会产生大量的对象对内存的消耗十分的大 //在循环中完成字符串拼接不要使用String String st

2020-08-19 21:43:27 399

原创 JAVA-this-super关键字-static修饰符-final和代码块内部类和枚举

今日学习和总结1:this关键字详解作用:1:在构造器中this关键字有指向成员变量2:在方法中this关键字指向方法调用者3:在当前类中调用其他非static修饰的方法1:在构造器中指向当前类成员变量public class Animal{ private String name; private int age; //演示一下构造器互调 public Animal(){ this("name",128);//此时就代表找个构造器已经初始化了名字找个成员变量但是必须和本类其他构

2020-08-15 17:18:23 348

原创 JAVA接口JAVA多态JAVA引用类型的转换

接口1:接口作用:接口的作用就是把使用接口的人和实现接口的人分开,实现接口的人不必要关心谁去使用,而使用接口的人也不用关心实现的细节2:接口是什么:是多个抽象方法的集合3:接口体现了:体现了规范和实现相分离的思想以及低耦合(关联性很低)定义语法public interface 接口名{ //抽象方法1(); //抽象方法2(); //抽象方法3();//接口中的方法都是公共的抽象方法等价于抽象方法1(); == public abstract void 方法名();}类只可以单继承

2020-08-12 20:48:45 305

原创 JAVA数组拷贝JAVA冒泡排序JAVA二分法

数组拷贝原理分析:1:要知道有几个形式参数 返回值可以有也可以没有看情况 形式参数需要知道 从哪个数组的哪个索引 (2个值)拷贝到哪个数组哪个索引(2个值) 拷贝多少个元素(1个值) 加起来一共需要5个值2:怎么拷贝 :将数组索引元素 赋值给新数组索引元素 同时 原数组索引移动一位 新数组索引也就引动一位赋值 一共需要赋值多少长度就写多少,遍历的时候就遍历多少次public int[] arrayCopy(int[] src,int srcPos,int[] dest ,int dest Po

2020-08-11 17:36:05 225

原创 JAVA this关键字和JAVA构造器setter的选用以及JAVA的继承思想和方法覆盖JAVA的抽象方法和抽象类以及Object类的常用方法

this关键字的使用作用:其实就是访问当前类的成员变量 还有就是调用当前类的构造器this的第一个用法public class Cat(){ private String name; private int age; //此时定义有参数和无参数构造器 public Cat(){} public Cat(String name,int age){ this.name = name; this.age = age; }}此时直接上个图分析一下this的作用 this就是直接指向

2020-08-09 22:31:36 171

原创 JAVA面向对象的概述,JAVA成员变量和局部变量,Java类的定义,以及JAVA的封装思想和访问修饰符一

2020/8/7面向对象作用:面向对象的思想就是讲一件事情执行某个人去做,.就像把一个功能封在某个方法里面抽象和实例 抽象就是类 实例就是创建类的对象 publ成员变量和局部变量成员变量: 在类中,在方法外面,整个类中都可以使用的放啊 作用域 在整个类中一直都可以 内存分析: 存在于堆中,随着对象的销毁而销毁局部变量: 在方法中,在形式参数中,在一个代码块内 作用域:花括号的开始到结束 内存分析:在栈中,随着所定义的调用的方法销毁类作用:Class类可以帮助我们在程序运行

2020-08-07 21:41:53 195

原创 JAVA异常和JAVA多线程

异常--------------异常信息的查看​ 1:看控制台出现的 异常红色信息​ 2:根据信息得知是哪里的代码出问题了​ 带java的地方 就是异常类型 / by zero 对异常信息的描述 后面就是出问题的代码和 代码的位置​ 3:得到一个结论​ 1:什么异常ArithmethicException​ 2:异常信息 /by zero​ 3:哪一行代码出问题了异常类型的继承体系​ java.lang.Throwable -> java.lang.Error &

2020-08-04 23:24:24 178

原创 JAVA方法的定义,JAVA方法操作以及JAVA方法注意事项

预习和总结方法作用:在类中定义方法的语法 完成某一特定功能(如:求和,统计数量等)的**代码块方法的定义:语法格式[修饰符] 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2....){ 方法体; [return 返回值;] //如果返回值类型为void 则不用 return}//格式分析1:修饰符: private 缺省 protected public2:返回值类型: 可以是基本数据类型也可以数引用数据类型3:方法名称:和标识符一样4:形式参数: 可以有多个 然后可以

2020-08-04 20:13:04 324

原创 JAVA子类如何实现可以设置父类的private修饰得字段

//今日心得//这个问题我想了好久 可能也是对代码得不了解//代码奉上//定义一个Item类 演示多态得灵活使用/* * 步骤1 * 1:在这里面定义四个成员变量 并用private定义类型和价格 然后连个不定义private方法 * 2:创建构造器 * 3:提供getter 和seeter放啊 * */public class Item { String code; String name; private String type; priva

2020-08-03 22:36:22 832

原创 JVM内存模型,JAVA数组,JAVA二维数组的讲解

今日预习总结数组JVM内存模型1方法区 主方法存在的地方存储被JVM加载后的,类信息.常量.静态变量即时编译后的数据信息2;java虚拟机栈 每当局部变量被创建的时候创建一个栈帧用于存储该方法的局部变量,操作栈,动态链接,方法出口等3:java堆:当有对象创建的时候就在堆上开辟一块存储空间GC垃圾回收器 就是当局部变量的调用方法结束 或者成员变量的对象销毁 那么此时gc就自动运行了数组定义作用: 把相同类型的多个常量值有序的组织起来的一种数据形式 数组索引从0开始的语法: 数组元素类型

2020-08-03 00:26:54 418

原创 JAVA选择语句和循环语句的讲解

今日预习总结 选择语句和循环语句顺序结构作用:控制代码从上而写一行一行的执行选择结构作用:根据不同的逻辑选择不同的代码进行执行 ( if语句 和 swith语句)//if语法 语义:如果...那么...if(boolean表达式){ 语句体;}//if-else语法 语义: 如果...那么....否则if(boolean表达式){ 语句体;}else { 语句体2;}//if-else if - else语法 语义:如果..那么..如果..那么..否则if(

2020-08-01 22:33:49 306

原创 JAVA变量和JAVA基本数据类型转换JAVA运算符的讲解

今日预习和总结变量的定义和使用作用:开辟一块内存空间后可以,往该区域存储数据,修改数据,也可以获取数据特点:----1;占据一块空间----2;该区域又自己的名称(变量名)和类型(数据类型)----3;可以重复利用----4’该区域可以在同一个种类型范围变化语法方式一:先定义后赋值 数据类型 变量名 int age; 变量名 常量值 age = 17;方式二:在声明的同时赋值 数据类型 变量名 = 初始化值: int age = 17;变量的总结:--

2020-07-31 21:55:54 467

原创 JAVA语法,JAVA关键字保留字,JAVA分割字符以及数据类型

下面展示一些 内联代码片。遇到的问题和我的一些总结:1:不能用非静态的方法访问静态的成员变量,也不能用静态的方法去访问非静态的成员变量今天学习的内容java的编译和运行java源文件编译之后,编译为字节码文件,之后通过虚拟机运行文件 虚拟机是不跨平台的但是字节码文件时跨平台的java的基本语法1:大小写严格区分2:一个类中只能有一个public修饰的类 且这个类名字必须和文件名相同3:每个java文件编译后都会有一个字节码文件4:必须要有main方法因为main方法是一个类的入口标准代

2020-07-30 21:45:40 696 2

原创 JAVA的String中split的使用以及我的踩坑日常

拿一道题来做解释String[] strs = {“2+3+4”,“2+4”,“5+6”,“9+7”};1)请把strs中的所有数字加起来;2)请求出所有数字的平均数//这个题的解题思路1:遍历整个数组 然后将第一次遍历的数组分解 符号位",|\+" 并将他赋值给一个新的数组 这样新的数组就得到 2 3 4 2 4 5 6 9 72.将新的数组再次遍历 直接就可以求和了 可以在之前转换位IntegerOf();3.取余数就是在第一个遍历得时候 做一个计数器后边 减下去就可以代码pac

2020-05-13 10:26:50 1025

原创 JAVA代码块问题

在方法外面的代码块,每次创建一个对象就是执行一次,但是创建的对象需要是本类的对象在方法内部的代码块,就是普通的按照内部顺序执行一次静态代码块.static修饰在类开始执行,第一次执行的就是他,然后可以用来初始化...

2020-04-25 22:41:24 158

空空如也

空空如也

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

TA关注的人

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