个人笔记
文章平均质量分 86
窝在角落里学习
世界很精彩,热爱学习的同时,也要记得享受生活。
展开
-
项目_前后端分离认证解决方案_JWT认证
文章目录前后端分离认证解决方案——JWT认证0、前言1、何为 JWT2、JWT 能做什么?3、JWT 认证3.1、基于传统的 Session 认证3.1.1、认证方式3.1.2、认证流程3.1.3、存在的问题3.2、基于 JWT 认证3.2.1、认证流程3.2.2、JWT 优势4、JWT 的结构4.1、Header4.2、Payload4.3、Signature5、JWT 的使用5.1、引入依赖5.2、生成Token5.3、解析数据5.4、常见的异常信息6、封装工具类7、Spring Boot整合 JWT7原创 2022-05-07 18:39:57 · 21829 阅读 · 0 评论 -
前端_快速入门Vue.js框架
文章目录快速入门Vue.js框架0、前言1、Vue.js框架1.1、Vue简介1.2、第一个Vue程序1.3、el:挂载点2、Vue指令2.2、v-html2.3、v-on2.4、案例--计数器2.5、v-show2.6、v-bind2.7、v-for2.8、v-model3、axios3.1、axios和ajax的区别3.2、ajax的使用3.3、axios的使用3.4、案例--获取笑话快速入门Vue.js框架0、前言前后端分离是现在很火的一个词,而实现前后端分离架构的技术栈之一呢就是“Spring原创 2022-05-07 14:48:15 · 10764 阅读 · 0 评论 -
C语言_数组、指针和函数
C语言_数组、指针和函数原创 2022-05-03 22:31:45 · 11840 阅读 · 0 评论 -
C语言_地址与指针类型不兼容造成的影响
C语言_地址与指针类型不兼容造成的影响原创 2022-05-03 22:15:46 · 12099 阅读 · 0 评论 -
项目_MySQL比较字符大小的小坑
MySQL比较字符大小的小坑原创 2022-04-12 17:47:00 · 15044 阅读 · 0 评论 -
安装jar包到本地的Maven仓库
安装jar包到本地的Maven仓库有时我们在开发过程中需要引用一些第三方jar包依赖,这些依赖在不能直接从Maven仓库进行下载,此时需要我们进行手动安装。例如,我现在有一个jar包,详情如下:E:\Develop\code\Java\lib\SSDK-Release-4.0.2.0.jar我需要把这个jar手动添加到我的本地Maven仓库中<!-- 本地jar包的存放路径(如上)--><!-- (参数一):下载到本地的jar包的真实存放路径 --><depen原创 2021-08-03 21:53:57 · 17842 阅读 · 17 评论 -
Spring Boot框架 -- 邮件发送
Spring Boot – 邮件发送1、前期准备以QQ邮箱为例子,首先需要申请开通POP3/STMP服务或者IMAP/SMTP服务。SMTP(Simple Mail Transfer Protocol),即简单邮件传输协议,定义了邮件客户与STMP服务器之间,以及SMTP服务器与SMTP服务器之间的通信规则。POP3(Post Office Protocol3),即邮局协议,定义了邮件客户端与POP3服务器之间的通信规则。IMAP(Internet Message Access Protocol)原创 2021-08-10 17:25:57 · 19390 阅读 · 0 评论 -
Spring框架(2) -- Spring中的Bean
文章目录Spring框架中的Bean1、Bean的配置2、Bean的作用域2.1、singleton作用域2.2、prototype作用域3、Bean的装配方式3.1、基于XML的装配3.1.1、构造器注入3.1.2、setter注入3.1.3、拓展注入3.2、基于Annotation的装配3.3、自动装配3.3.1、byType3.3.2、byNameSpring框架中的Bean1、Bean的配置Spring类似于一个工厂,生产和管理Spring容器中的Bean。开发中,最常使用XML文件来注册和管原创 2021-08-07 15:43:59 · 16702 阅读 · 0 评论 -
Spring框架(1) -- Spring中的IoC和DI
文章目录Spring中的IoC和DI0、前言1、Spring概述2、IoC 与 DI2.1、什么是控制反转(IoC)2.2、什么是依赖注入(DI)3、Spring核心容器Spring中的IoC和DI0、前言此文章大概说了一下Spring的控制反转IoC以及依赖注入DI这两个在Spring中还是比较重要的思想,面试也会经常问(我猜的,毕竟我还没面试过哈哈),其实我也是初学者,最近在查漏补缺之前学习的SSM框架,这篇文章是结合之前学习Spring的笔记加上自己的一些理解写的,所以有错误的地方,请各位大原创 2021-08-06 23:38:28 · 19367 阅读 · 0 评论 -
static关键字与代码块
文章目录static关键字与代码块一、static关键字1、静态属性2、静态方法二、代码块1、普通代码块2、构造代码块3、静态代码块static关键字与代码块一、static关键字static是一个用于声明程序结构的关键字,意为“静态的”,此关键字可以用于全局属性和全局方法,主要特点是可以避免对象实例化的限制,在没有实例化对象的时候直接进行此类结构的访问。1、静态属性在一个类中,主要的组成就是属性和方法,而每一个对象都分别拥有各自的属性内容(不同对象的属性保存在堆内存的不同地址中)。如果想要类中原创 2021-05-15 18:11:06 · 16674 阅读 · 0 评论 -
循循渐进详解内部类和Lambda表达式
文章目录内部类 与 Lambda表达式一、内部类2、实例化内部类3、内部类私有化4、内部接口5、静态内部类6、局部内部类7、匿名内部类二、Lambda表达式1、函数式编程思想概述2、Lambda表达式初体验3、Lambda表达式的标准格式4、Lambda表达式的使用前提5、Lambda表达式的练习5.1、无参无返回值的抽象方法5.2、有参无返回值的抽象方法5.3、有参有返回值的抽象方法6、Lambda表达式的省略模式7、Lambda表达式和匿名内部类的区别内部类 与 Lambda表达式一、内部类程序在原创 2021-05-13 22:35:05 · 19277 阅读 · 0 评论 -
详解Java编码与解码以及常见的编码表,灵活处理乱码问题
编码与解码文章目录编码与解码前言一、什么是编码与解码二、常见的编码表1、ASCII2、ISO-8859-13、windows-12524、GB23125、GBK6、GB180307、Big58、编码表汇总9、乱码和兼容9.1、兼容9.2、乱码10、Unicode10.1、UTF-3210.2、UTF-1610.3、UTF-810.4、BOM11、乱码的原因和可逆性11.1、乱码原因11.2、乱码可逆情况11.3、乱码不可逆情况三、Java的char字符四、String类1、编码的方法1.1、getByte原创 2021-05-09 16:59:35 · 29590 阅读 · 0 评论 -
异常的捕获与处理
异常的捕获与处理1、认识异常在程序开发中,程序的编译与运行是两个不同的阶段,编译主要针对的是语法检测,而在程序运行时却有可能出现各种各样的错误,导致程序中断执行,那么这些错误在Java中统一称为异常。在Java中对异常的处理提供了非常方便的操作。那么何为异常呢?异常是指在程序执行时由于程序处理逻辑上的错误导致程序中断的一种指令流。范例:初始异常package edu.blog.test19.exception01;public class ExceptionDemo01 { publi原创 2021-05-03 13:09:10 · 19981 阅读 · 0 评论 -
请别再使用SimpleDateFormat了,用DateTimeFormatter吧!
DateTimeFormatter类之前我们在《听说你还在用Date类表示时间?》)这篇文章中已经有接触过这个类了,使用旧的Date对象时,我们用SimpleDateFormat进行格式化显示。使用新的LocalDateTime或ZonedLocalDateTim时,我们要进行格式化显示,就要使用DateTimeFormatter。我们先来看看SImpleDateFormat类的部分源码,如图 1所示。图 1接着再来看看DateTimeFormatter类的部分源码,如 图2所示。图 2由上原创 2021-05-02 20:56:52 · 16911 阅读 · 0 评论 -
ZonedDateTime类
ZonedDateTime类我们之前在文章《听说你还在用Date类表示时间?》中提到过**“LocalDateTime无法与时间戳进行转换,因为LocalDateTime没有时区,无法确定某一时刻”**。其实LocalDateTime和ZonedDateTime很相似,区别只是LocalDateTime总是表示本地日期和时间,而ZonedDateTime要表示一个带时区的日期和时间。我们可以简单地把ZonedDateTime理解成LocalDateTime加ZoneId。ZoneId是java.time原创 2021-05-02 20:52:52 · 27379 阅读 · 0 评论 -
听说你还在用Date类表示时间?
LocalDateTime类1、Date类与LocalDateTime类之前我们《日期处理类Date类》这篇文章已经聊过了Date类,但是Date类却遭“嫌弃”了,这是为啥呢?我们先来看几个例子。范例1:创建一个表示“此刻”的日期,打印出来:package edu.blog.test07;import java.util.Date;public class DateTestDemo01 { public static void main(String[] args) {原创 2021-04-30 21:05:17 · 15164 阅读 · 1 评论 -
Java I/O流详解
Java I/O流1、Java I/O流概述IO就是输入、输出。Java IO类库基于抽象基础类InputStream和OutputStream构建了一套I/O体系,主要解决从数据源读入数据和将数据写入到目的端的问题。我们可以将数据源和目的地理解为IO流的两端。从一种数据源中通过InputStream流对象读入数据到程序内存中流程如图 1-1所示;从程序内存中通过OutputStream流对象写入到目的地的流程图如图 1-2所示。图 1-1图 1-2然后,除了面向字节流的InputSt原创 2021-04-10 20:58:30 · 19631 阅读 · 0 评论 -
日期处理类
日期处理类1、Date 日期处理类日期时重要的程序单元,在Java中如果先获得到当前的日期时间可以直接通过java.lang.Date类来实现,此类的常用操作方法如表1-1所示。表 1-1方法类型描述public Date()构造实例化Date类对象public Date(long date)构造将数字变为Date类对象,long为日期时间数据public long getTime()普通获取日期对象从1970.1.1 00:00:00到现在的毫秒值,类原创 2021-04-01 23:46:23 · 16566 阅读 · 0 评论 -
CharSequence接口
CharSequence接口为了进行字符串操作标准的统一,JDK提供有CharSequence接口标准。从JDK 1.4喀什提供的一个描述字符串标准的接口,常见的子类有3个:String、StringBuffer、StringBuilder,其继承关系如图 1所示。图 1tips:开发中优先考虑String类StringBuffer类与StringBuilder类在日后主要用于频繁修改字符串的操作上,但是在任何开发中,面对字符串的操作,大部分情况下都先考虑String类。只有在频繁修改这一操作中,原创 2021-03-31 19:22:10 · 19744 阅读 · 0 评论 -
还搞不清楚浅拷贝和深拷贝??那就点进来
浅拷贝&深拷贝在我们的日常的学习或者开发中基本上必须进行的一个操作就是对象拷贝,但是其中也存在着一些小细节,今天我们就来梳理一下。1、值类型与引用类型这两个概念的区分,对于理解深、浅拷贝的理解而言是十分重要的。引用Java圣经的一句话:《Java编程思想》:Java中一切都可以视为对象。所以在学习Java的过程中,我们要习惯用引用去操作对象。接着我们来说一下引用类型和值类型引用类型:基本的数据类型(四类八种)四类:整型、浮点型、字符型、布尔型八种:整型4种——b原创 2021-03-30 15:34:06 · 19020 阅读 · 0 评论 -
创建对象的方式
获得对象的方式先定义一个Programmer类:package com.zrt.pojo;public class Programmer { private int id; private String name; private int age = 18; public Programmer(){ } public Programmer(int id, String name) { this.id = i原创 2021-03-30 15:29:56 · 12281 阅读 · 6 评论 -
正则表达式(含范例)
正则表达式正则表达式是一个应用广泛的程序类库。在项目开发中,String是一个重要的程序 类,String除了可以实现数据的接受、各类数据类型的转型外,其本身也支持正则表达式(Regular Expression),利用正则表达式可以方便地实现疏忽的拆分、替换、验证的操作。正则表达式最早是从UINX系统的工具组件中发展而来的,在JDK 1.4以前如果需要使用到正则表达式的相关定义则需单独引入其他的.jar文件,而从JDK 1.4后,正则已经默认被JDK所支持,并且提供有java.util.regex开发原创 2021-03-28 20:14:58 · 15951 阅读 · 0 评论 -
AutoCloseable接口
AutoCloseable接口随机互联网的不断发展,资源的使用也越发频繁,同时资源也很紧张,为了合理地保护资源必须进行资源释放处理。而在项目开发中,网络服务器和数据库的资源也是相当宝贵的,在每次操作完后一一定要及时释放才能供更多的用户使用。在最初的JDK版本都是在各个程序中提供相应的资源释放操作,直到JDK 1.7版本开始提供AutoCloseable接口,该接口的主要功能是结合异常处理结构在资源操作完成后实现自动释放功能,接口定义如下。public interface AutoCloseable {原创 2021-03-24 13:23:18 · 16281 阅读 · 0 评论 -
序列化&反序列化
对象序列化1、对象序列化概述序列化是一种对象的传输手段,Java有自己的序列化管理机制。对象序列化,就是把一个对象变为二进制的数据流的一种方法,通过对象的序列化可以方便地实现对象的传输或存储,如图 1-1所示。图 1-1一个类的实例化对象想被序列化,则对象所在的类必须实现java.io.Serializable接口。然而此接口并没有提供任何的抽象方法,所以该接口只是一个标识接口(只是表示一种对象可以被序列化的能力)。范例1:定义序列化对象类Student//实现Serializable接口p原创 2021-03-22 22:10:30 · 15103 阅读 · 0 评论 -
Java虚拟机加载Java类的过程
JVM加载Java类的过程JVM加载Java类的过程可分为三步:加载、链接、初始化。1、加载加载的过程就是查找字节流,并根据找到的字节流来创建类的一个过程。Java语言的数据类型可以分为两大类:基本数据类型和引用数据类型。基本数据类型:由JVM预先定义好的,所以也就没有查找字节流这一说法引用数据类型:可分为四种,即类、接口、数组和泛型参数。因为泛型参数在编译过程中会被擦除,所以JVM中就只有前三种。而数组又是由JVM直接生成的,所以只有类和接口需要查找字节流那么JVM是怎么查找到字节流的原创 2021-03-21 16:41:25 · 18238 阅读 · 0 评论 -
我猜,你很少使用枚举
枚举1、定义枚举类 Java语言从设计之初并没有提供枚举的概念,所以开发者不得不使用多例模式来代替枚举的解决方案,直到JDK 1.5开始,Java支持了枚举结构的定义,提供了一个新的关键字:enum,利用此关键字可以实现枚举类型的定义,并且通过枚举可以简化多例模式设计的实现。public enum UserRole { // 系统管理员 ROLE_ROOT_ADMIN, // 订单管理员 ROLE_ORDER_ADMIN, // 普通用户 ROLE_原创 2021-03-20 16:30:59 · 18025 阅读 · 0 评论 -
大数类
大数类1.大数类基本概述Java在设计的时候就考虑到了一些特殊的应用环境,当一个数字非常大的时候,是无法用基本数据类型接收的,所以专门设计了大数字处理类。在早期开发中如果遇到大数字的时候往往会使用String类进行接收,之后使用拆分的方式进行计算。但是,这一系列的操作过于繁琐,所以为了解决这样的难题,在java.lang.Math包中提供了大数字的操作类:BigInteger(整数)、BigDecimal(浮点数),这两个类都是Number子类。其继承图如下:2.BigInteger类的常用方法原创 2021-03-19 22:09:11 · 17864 阅读 · 0 评论 -
String类的常见问题
String类的常见面试题1.判定定义为String类型的两个对象是否相等(1)public class StringDemo01 { public static void main(String[] args) { String string01 = "zrt"; String string02 = "zrt"; System.out.println(string01 == string02); //true System.ou原创 2021-03-17 22:29:59 · 18236 阅读 · 0 评论 -
位运算
位运算位运算是计算机中的基础运算单元,Java为了提高程序的运行性能,便可直接通过位运算符进行计算操作。Java中提供的位运算符由擦欧总书和位运算符所组成,可以实现对数值类型的二进制数进行运算(在Java中所有数据都是以二进制数据的形式进行运算的),在位运算中提供有两类运算符:逻辑运算符(~、&、|、^)和移位运算符(>>、<<、>>>),如下所示:逻辑运算符描述&按位“与”|按位”或“^异或(相同为0,不原创 2021-03-13 11:31:11 · 18230 阅读 · 0 评论