自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 怎么减少if语句

原文链接:https://blog.csdn.net/qq_33591903/article/details/105240966怎么减少if语句项目初期,代码比较简单,脉络清晰。可随着bug或者新需求的出现,状态变得越来越多,只能不停的加else来区分,久而久之,判断的次数越来越多,嵌套的层数也越来越深,变得难以维护。那么有什么方法可以优化if else 结构呢?1.提前return,减少else判断优化前:private int handlePre1(boolean flag) { i

2022-02-25 10:50:07 618

原创 logback配置按时间分隔不成功问题的解决

以前的写法:<!-- 按照每天生成日志文件 --> <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!--日志文件输出的文件名-->

2022-02-24 11:01:51 729

原创 docker中的程序执行定时任务出错

问题描述本来定的时间是晚上7点,也就是19点,原本在云服务器上运行没有任何错误,但是运行在docker容器中时,变为每天早上3点。原因排查搜索之后发现是docker容器中没有crontab在宿主机上输入systemctl status crond结果为:而在docker容器中输入systemctl status crond解决办法有两种解决办法在容器内安装crondtab服务或者在创建镜像时,在dockerFile中添加RUN yum install -y crontabs使用

2021-12-10 13:59:25 1015

原创 Docker的学习

参考:CSDN博主「1024肥宅」原文链接:https://blog.csdn.net/lqpf199681/article/details/110518692Docker简介在没有Docker时,我们开发一个应用之后要在服务器配置各种软件。比如MySQL、Tomcat、Java等等,十分繁琐。传统上认为,软件编码完成后,还需要提供运行环境列表供运维团队进行部署。开发需要清楚的告诉运维团队所需的运行环境和全部配置文件,即便如此,仍然常常发生部署失败等问题。Docker镜像的设计,使得Docker

2021-11-19 19:56:24 574

原创 第一章了解Web及网络基础

1.1使用HTTP协议访问Web通过发送请求获取服务器资源的Web浏览器等,都可称为客户端(client);Web使用一种名为HTTP(HyperText Transfer Protocol,超文本传输协议)的协议作为规范,完成从客户端到服务器端等一系列运作流程。而协议是指规则的约定。Web是建立在HTTP协议上通信的。1.2HTTP的诞生最初的设想是:借助多文档之间相互关联形成的超文本(HyperText),连成可相互参阅的WWW(World Wide Web,万维网)。现在已提出3项WWW构

2021-10-28 19:03:57 1112

原创 21.9.9(1-25) 10(26-55) 11(56-85) 13(86-90) 14(91-120) 15(121-140) 16(141-174) 17(174-193)18(194-208)

JDK和JRE有什么区别JDK Java Development Kit,Java开发环境JRE Java Runtime Environment Java运行环境JDK包含JRE,还包括了编译Java源码的编译器Javac,还包括一系列Java程序调试和分析的工具。如果只是想运行Java程序,安装JRE就可以了,如果想开发Java代码,需要安装JDK==和equals的区别是什么?对于基本类型和引用类型==的作用效果是不同的,基本类型:比较的是值是否相同引用类型:比较的是引用是否相同..

2021-09-09 22:14:37 187

原创 在网站中集成markdown

首先去下载markdownhttps://github.com/pandao/editor.md/archive/master.zip然后复制相关文件到对应文件夹,css文件夹是原css文件夹加上style.cssfonts是原文件夹(没有这个就没有编辑框上的图标)js文件夹中也是对应的js文件lib文件夹为原文件夹然后编写一个HTML文件<!DOCTYPE html><html lang="zh"> <head> <meta charse

2021-09-06 19:55:18 307

原创 8.30 Bufferedxxx、对象流、标准输入输出流、Properties

节点流和处理流的区别和联系:节点流是底层流/低级流,直接和数据源相连处理流(包装流) 包装节点流,即可以消除不同节点流的实现差异,也可以提供更方便的方法来完成输入输出处理流(也叫包装流)对节点流进行包装,使用了修饰器设计模式,不会直接与数据源项链处理流的功能主要体现在以下两个方面:性能的提高:主要以增加缓冲的方式来提高输入输出的效率操作的便捷:处理流可能提供了一系列便捷的方法来一次输入输出大批量的数据,使用更加灵活方便修饰器设计模式:有一个超类,有多个子类,功能类中又有一个超类属性,

2021-08-30 23:15:08 76

原创 8.27 IO流

文件文件流:文件在程序中是以流的形式来操作的流:数据在数据源(文件)和程序(内存)之间经历的路径输入流:数据从数据源(文件)到程序(内存)的路径输出流:数据从程序(内存)到数据源(文件)的路径常用文件操作创建一个File对象后,此时只是在程序中创建了一个对象,只有File对象执行了createNewFile方法后才会真正地在磁盘中创建文件new File(String pathname) 根据路径构建一个File对象new File(File parent,String child

2021-08-27 22:27:48 83

原创 8.25 死锁

线程的死锁多个线程都占用了对方的锁资源,但不肯相让,导致所有线程的阻塞了。public class DeadLock_ { public static void main(String[] args) { final DeadLockDemo deadLockDemo1 = new DeadLockDemo(); final DeadLockDemo deadLockDemo2 = new DeadLockDemo(); deadLockDemo1

2021-08-26 14:19:35 71

原创 多线程的执行及锁

多线程执行public class Thread03 { public static void main(String[] args) { final T1 t1 = new T1(); final T2 t2 = new T2(); Thread thread1=new Thread(t1); Thread thread2=new Thread(t2); thread1.start(); thread

2021-08-24 22:01:54 118

原创 2021-08-23 多线程

线程基础:线程介绍线程使用线程方法线程生命周期Synchronized互斥锁死锁相关定义进程是程序的一次执行过程,是系统运行程序的基本单位。线程是进程的一个执行单元,是操作系统能够进行运算调度最小单位。并发:同一个时刻,多个任务交替执行,造成一种同时运行的假象。并行:同一个时刻,多个任务同时执行。线程基本使用创建线程的两种方式继承Thread类,重写run方法public class Thread01{ public static void main(Stri

2021-08-24 00:01:26 64

原创 8.17 Springboot整合Redis

SpringBoot整合Redis自动配置:在配置文件中配置了属性之后,SpringBoot的自动装配机制就会读取这些配置来生成有关Redis的操作对象,如RedisConnectionFactory,RedisTemplate,StringRedisTemplate等常用的Redis对象。默认使用的是lettuce客户端,可以换成jedis客户端。<!--导入jedis--><dependency> <groupId>redis.clients&lt

2021-08-18 14:49:58 233

原创 8.16 Redis的新数据结构、配置文件及使用

BitsMaps可以将它想象成一个由0和1构成的数组,数组下标为偏移量[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BCLFD2g7-1629171618227)(D:\Typora\记录\image-20210816194443742.png)]常用命令:**setbit < key>< offset>< value>**设置Bitmaps中某个偏移量的值(0或1),偏移量从0开始实例:​ 每个独立用户是否访问过网站存

2021-08-17 11:40:34 132

原创 8.15 Redis的数据类型

字符串StringString是Redis最基本的类型,它是二进制安全的,这意味着Redis的String可以包含任何数据。比如jpg图片或者序列化的对象。一个Redis字符串value最多可以说512M常用命令:get key 取键key对应的valueappend key xxxstrlen keysetnx key xxx 只有在key不存在时,才能设置key的值,若进行了设置返回1,否则返回0incr key 将key存储的数字值加1(只能对数字值进行操作),如果为空,

2021-08-16 02:00:04 90

原创 8.11 Redis的学习

技术的分类:解决功能性问题:Java、Jsp、RDBMS、Tomcat、HTML、Linux解决扩展性问题:Spring、SpringMVC、Mybatis解决性能的问题:NoSQL、Java线程、Hadoop、Nginx、MQNoSQL数据库简介NoSQL:not only SQL 意为不仅仅是SQL,泛指非关系型数据库(以key value形式存储数据)有下列特性:不遵循SQL标准不支持ACID远超SQL的性能应用场景:对数据高并发的读写海量数据的读写对数据高

2021-08-15 13:21:47 76

原创 8.11 springboot测试、配置、启动过程

SpringTest@Test 编写测试方法@SpringBootTest 加了之后就可以使用SpringBoot的自动测试功能@Transational 测试完成之后会自动回滚,撤销执行的所有操作@DisplayName 可以加在方法和类上,指定测试显示名称(不加的话显示方法名和类名)@BeforeEach 加在方法上,每一个测试执行前都会执行这个方法@AfterBeforeEach 加在方法上,每一个测试执行后都会执行这个方法@BeforeAll 加在静态方法上,所有测试执行之

2021-08-11 21:17:11 258

原创 8.10 数据源整合

配置数据源在配置文件中写好,username,password,url,Driver后,就可以直接连接数据库@AutowiredDateSource dataSource;SpringBoot中有很多xxxxTemplate,比如jdbcTemplate,redisTemplate等模板,可以直接拿来即用jdbctemplatejdbctemplate是spring自带的,功能比较简单导入依赖<dependency> <groupId>org.sprin

2021-08-11 00:34:06 82

原创 2021-08-09

2021.8.9拦截器拦截器实现步骤(3步)配置好拦截器要怎么拦截,拦截后做什么 (配置一个实现了HandlerInterceptor接口的类)将这些配置放在容器中,编写一个实现了WebMvcConfigurer的配置(所有定制web功能的配置类都必须实现WebMvcConfigurer接口)指定拦截规则(拦截哪些请求)HandlerInterceptor接口拦截器必须实现HandlerInterceptor接口,有三个方法preHandle 目标方法执行之前pos

2021-08-10 00:13:35 93

原创 2021-08-08

2021.8.8Thymeleaf使用:Thymeleaf语法:变量取值:...获取请求域如果一个内容没有在任何标签内,使用Thymeleaf的行内写法,[[{...} 获取请求域 如果一个内容没有在任何标签内,使用Thymeleaf的行内写法,[[...获取请求域如果一个内容没有在任何标签内,使用Thymeleaf的行内写法,[[{}]]选择变量:*{…} 获取上下文对象值消息:#{…} 获取国际化等值链接:@{…} 生成链接片段表达式:~{…}

2021-08-09 01:16:51 96

原创 SpringBoot的学习

2021.7.31Ioc容器是什么?Ioc是一种通过描述来生成或者获取对象的技术。为了描述对象关系,需要一个容器,这个容器就是springIoc容器Ioc至少具备什么样的功能?通过描述管理Bean,包括生成和发布Bean通过描述完成对象之间的依赖关系怎么装配Bean?在方法上添加@Bean注解,方法返回的对象就被添加到Ioc容器中@Bean(name=“xxx”)指定Bean的名称,不指定的话Bean名称就是方法名在类上添加@Component注解,并用@ComponentScan

2021-08-01 00:23:21 123

原创 2021-07-31

博客意义写博客相当于回答问题,将自己学到的东西讲给别人如果能够清晰地,不需要看笔记写出博客,那么就可以保证自己学会了这些知识同时,每天写一篇博客也是自律的体现,督促自己学习,防止自己沉浸在欲望的深渊里从今天起,每天都要写博客,直到8月20日为止博客计划8.1-8.3 springboot8.4-8.6 redis,并用springboot+redis做一个练习8.7-8.9 springcloud8.10-8.12 消息队列8.13-8.15 vue的学习8.16-8.18 前端框

2021-07-31 22:00:27 42

原创 SpringBoot自动加载原理

@SpringBootApplication注解点击这个注解里面有这样3个注解@SpringBootConfigration(重要)@EnableAutoConfigration(重要)@ComponentScan(excludeFilters = { @Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class), @Filter(type = FilterType.CUSTOM, classes = Auto.

2021-06-02 17:13:03 2099 1

原创 eclipse窗口设置

eclipse窗口设置:eclipse窗口设置:window->Perspective->Reset Perspective… 重置窗口设置,当窗口混乱的时候可以用来恢复window->show View 可以设置小窗口的显示第二个是java EE 窗口设置,点击后可以让eclipse窗口布局变为javaEE方式,是我们常用的布局方式...

2021-03-14 19:34:39 4668 1

原创 2021-01-21

跳石头问题C++#include<bits/stdc++.h>using namespace std;int l,n,m,stone[50005];int check(int mid)//check函数,判断mid是否满足条件{ int cnr=0,s=0; for(int i=1;i<=n+1;i++) { if(stone[i]-s<mid)cnr++; else s=stone[i]; }

2021-01-21 17:56:39 41

原创 位运算符与逻辑运算符的区别

位运算是将数据先转换为补码形式,再逐位(bit)按规则运算位运算包括“按位与”(运算符“&”)“按位或”(运算符“|”)“按位非”(运算符“~”)“按位异或”(运算符“^”)“按位与” 运算符“&” --全1为1,否则为0a 000000110b &000111111c 000000110“按位或” 运算符“ |” -- 规则“全为0则0,否则为...

2019-05-25 16:32:28 411

原创 详述Java基本数据类型

Java基本数据类型有数据类型 字节数 位数 使用说明 byte 1 8 -128~127 short 2 16 -2的15次方到2的15次方减1 int 4 32 -2的31次方到2的31次方-1 long 8 64 取值范围-2的63次方到2的63次方减1 float 4 ...

2019-05-24 00:16:29 192

原创 Java标识符详解

标识符是编程时使用的名字:Java对包、类、接口、方法、变量、常量(不包括项目名)等命名时使用的字符序列称为标识符。标识符可以用来代替这些量public class HelloWorld{ public static void main(String [] args){ int age=12; System.out.println(age); ...

2019-05-23 23:38:51 355

原创 Java语言的注释

Java语言的注释分为三种,如下其中// 单行注释不能换行,且不会出现在生成的帮助手册中(即使用Javadoc命令产生的帮助手册)而/。。。/是多行注释,可以换行,但换行时要在行首加空格且加号。/**。。。/与/。。。/功能类似,但这种类型的注释会出现在帮助手册中。三种注释方式如下图:完成代码后进行编译,之后执行语句Javadoc语句即"javadoc -d c:\help -au...

2019-05-21 00:05:10 1263

原创 Java的运行原理

Java 虚拟机 是一个可执行Java字节码的虚拟机进程。用Java编写的程序(存放在扩展名为Java的文件中)经过编译器(即JDK根目录bin文件夹中的javac.exe文件)编译成字节码文件(及扩展名为class的文件),这个字节码文件不是针对具体平台的,而是针对抽象的Java虚拟机的,在Java虚拟机上运行,在不同类型的平台上安装不同的Java虚拟机,这些不同的Java虚拟机屏蔽了各个不同...

2019-05-20 23:23:23 148

空空如也

空空如也

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

TA关注的人

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