自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(72)
  • 资源 (2)
  • 收藏
  • 关注

原创 fastjson的JSONArray

1.fastjson的JSONArray 将List转换为JSONArray T为实体类List<T> list = new ArrayList<T>();JSONArray array= JSONArray.parseArray(JSON.toJSONString(list));2.fastjson的JSONArray JSONArray转List EventColAttr为实体类JSONArray array = new JSONArray();Li

2021-02-23 11:24:18 2031

原创 事务的属性可同通过注解方式或配置文件配置

注解方式:@Transactional只能被应用到public方法上,对于其它非public的方法,如果标记了@Transactional也不会报错,但方法没有事务功能。默认情况下,一个有事务方法, 遇到RuntimeException 时会回滚 . 遇到受检查的异常 是不会回滚 的. 要想所有异常都回滚,要加上 @Transactional( rollbackFor={Exception.class,其它异常})@Transactional( readOnly = false, //读写事务

2020-09-02 14:00:35 208

原创 Redis

执行安装命令:yum install redis连接redis:redis-cli重启redis:sudo redis-server /etc/redis.conf测试使用命令:set key "wanzi"get key提示端口被占用,那kil掉该进程,重新带上配置文件启动:$ ps -ef | grep redis | awk '{print $2}' | xargs kill -9如果更改了端口,使用redis-cli客户端连接时,也需要指定端口:redis-cli

2020-08-08 14:47:08 183

原创 MD5加密

MD5消息摘要算法,属Hash算法一类。MD5算法对输入任意长度的消息进行运行,产生一个128位的消息摘要(32位的数字字母混合码)。MD5的性质:1、压缩性:任意长度的数据,算出的MD5值长度都是固定的(相当于超损压缩)。2、容易计算:从原数据计算出MD5值很容易。3、抗修改性:对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别。4、弱抗碰撞:已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的。5、强抗碰撞:想找到两个不同的数据,使它们具有

2020-08-08 09:46:54 257

原创 Swagger中注解 — ApiOperation

首先@ApiOperation注解不是Spring自带的,它是是swagger里的注解@ApiOperation是用来构建Api文档的@ApiOperation(value = “接口说明”, httpMethod = “接口请求方式”, response =“接口返回参数类型”, notes = “接口发布说明”;其他参数可参考源码;

2020-08-05 09:08:52 3075

原创 密码学

文章目录凯撒位移加密凯撒加密和解密获取字符串消息摘要base64 编码中文对应的字节DES加密DES解密AES加密解密其他数字摘要算法生成公钥和私钥私钥加密公钥解密保存公钥和私钥读取私钥、公钥凯撒位移加密package com.caiwan.kaiser;public class KaiserDemo { public static void main(String[] args) { String input = "Hello world"; // 往右边移动

2020-07-15 12:03:30 276

原创 LeetCode 239. Sliding Window Maximum

题目描述:给一个数组 nums 和一个窗口大小 k 。假定你只能看到窗口内的数字,每次窗口移动,滑动一格。(k总是有效的, 1<= k <= nums.length )要求:返回每次窗口中的数字的最大值,组成的数组。举栗:Input:nums=[1,3,-1,-3,5,3,6,7], k=3OutPut: [3,3,5,5,6,7]Explanation:Window position Max---------------

2020-07-15 09:48:24 241

原创 每日一题:LeetCode.面试题 02.01. 移除重复节点

每日一题:LeetCode.面试题 02.01. 移除重复节点题目描述:编写代码,移除未排序链表中的重复节点。保留最开始出现的节点。示例1:输入:[1, 2, 3, 3, 2, 1] 输出:[1, 2, 3]示例2:输入:[1, 1, 1, 1, 2] 输出:[1, 2]提示:链表长度在[0, 20000]范围内。链表元素在[0, 20000]范围内。进阶:如果不得使用临时缓冲区,该怎么解决?解法一:两层while循环,双指针,也可以说是三指针(暴力解法)解题思路以时间换空间,空

2020-06-26 09:40:25 220

原创 那些年,菜丸被面试官逼疯的IO流

字节跳动就是我心中的耶路撒冷!

2020-05-30 09:49:33 279

原创 解决一下控制台的乱码

设置:-Dfile.encoding-UTF-8

2020-05-21 09:17:32 180

原创 spring-retry

springboot调用spring-retry:配置依赖Maven:<dependency> <groupId>org.springframework.retry</groupId> <artifactId>spring-retry</artifactId></dependency>启动类:@SpringBootApplication@EnableTransactionManagement // 启注解事

2020-05-21 07:27:34 180

原创 逆向工程

1. 首先我们需要知道什么是逆向工程mybatis逆向工程简称MBG。它是专门为MyBatis框架使用者定制的代码生成器。可以快速的根据表生成对应的映射文件,接口,以及Bean类对象。逆向工程只能对单表生成CRUD操作它可以帮我们对比数据库表之后,生成大量的这个基础代码。这些基础代码有:1、数据库表对应的javaBean对象2、这些javaBean对象对应的Mapper接口3、这些Mapper接口对应的配置文件 <!-- 去掉全部的注释 --> <commentGe

2020-05-20 07:59:00 1195 1

原创 值传递和引用传递有什么区别

值传递:指的是在方法调用时,传递的参数是按值的拷贝传递,传递的是值的拷贝,也就是说传递后就互不相关了。引用传递:指的是在方法调用时,传递的参数是按引用进行传递,其实传递的引用的地址,也就是变量所对应的内存空间的地址。传递的是值的引用,也就是说传递前和传递后都指向同一个引用(也就是同一个内存空间)。...

2020-05-17 20:26:36 415

原创 原生js使DIV滚动到最底部

var ele = document.getElementById('id');ele.scrollTop = ele.scrollHeight;只要获取到对应的元素设置元素的scrollTop为元素的scrollHeight

2020-05-17 20:15:00 1762

原创 Maven学习之pom.xml常用标签元素&&依赖冲突的解决&&继承 ( I )

pom.xml常用标签元素:modelVersion 指定了当前pom版本groupId 反写的公司网址+项目名artifactId 项目名+模块名version 版本号 第一个0表示大版本号,第二个0表示大版本号,第三个0表示大版本号 0.0.1snapshot快照packaging 打包方式 默认是jarname 项目的描述名url 项目的地址description 项目描述developers 开发人员信息licenses

2020-05-16 13:19:59 365

原创 Spring+Mybatis+SpringMVC 整合 XML

首先我们需要了解的是有几个配置文件?基础的web.xml1、spring-mybatis.xml:spring本身的配置,以及spring的数据库配置(即与mybatis的联合配置)2、spring-mvc.xml:springMVC的配置,例如定义了controller、service等3、mybatis-config.xml:mybatis本身的一些设置其次是如何调用的?第一个元素,调用了spring-mybatis.xml<!--全局范围内环境参数初始化--><c

2020-05-13 21:25:18 347

原创 Spring MVC中web.xml文件前端控制器的配置(一)

在web-app标签内部配置一个servlet。frontController是为前端控制器起的名字,可以不同;servlet-class是DispatcherServlet这个类的类全名;参数设置的是Spring配置文件的路径,Web项目需要添加classpath;url-pattern中的*.do表示所有以.do结尾的请求都会先到达前段控制器。这样Web项目的前端控制器就配置完毕了。<?xml version="1.0" encoding="UTF-8"?><web-ap

2020-05-13 20:29:33 941

原创 使用HashSet添加2个Music对象,并遍历。显示时将歌曲名长度>3的截取前三位后面追加...

题目:使用HashSet添加2个Music对象,并遍历。显示时将歌曲名长度>3的截取前三位后面追加…示例:歌曲名:纤夫的。显示为:纤夫的…其他不变package hashSet;import java.util.HashSet;public class HashSetTest { public static void main(String[] args) { HashSet<Music> hs = new HashSet<>(); hs.add(new

2020-05-13 17:13:41 267

原创 Kafka数据丢失解决方案

producer 数据不丢失:同步模式:配置=1 (只有Leader收到,-1 所有副本成功,0 不等待)Leader Partition挂了,数据就会丢失解决:设置 -1 保证produce 写入所有副本算成功 producer.type = sync request.required.acks=-1异步模式,当缓冲区满了,如果配置为0(没有收到确认,一满就丢弃),数据立刻丢弃解决:不限制阻塞超时时间。就是一满生产者就阻塞producer.type = asyncrequest.

2020-05-13 12:30:36 780

原创 springBoot (一)

springBoot框架流程:先创建Tomcat容器,然后加载class文件,加载过程中如果发现有java代码编写的SpringMVC初始化,就会创建SpringMVC容器。所有程序执行完毕后,项目就可以访问了。快速整合第三方依赖:maven子父依赖关系。springboot 通过引用spring-boot-starter-web依赖,整合SpingMVC框架。只需要引用一个jar包,就可以通过Maven继承的方式引用到Spring-aop,Spring-beans,Spring-core,Spr

2020-05-13 12:17:38 210

原创 IoC 如何实现/ Spring IOC 体系结构 / IoC 容器的初始化 /IoC容器高级特性/ lazy-init延迟加载/FactoryBean和BeanFactory BeanPostFac

文章目录IoC 如何实现Spring IOC 体系结构Spring IoC 容器的初始化Spring IoC容器高级特性lazy-init延迟加载FactoryBean和BeanFactoryBeanPostFactory后置处理器@Autowire注解实现Spring框架最核心的思想之一就是 控制反转(IOC - Inversion Of Control)IOC最常见的一种方式叫作 依赖注入(DI - Dependency Injection)控制了什么:我们一般会直接在程序内部通过new关键字

2020-05-12 20:32:56 315

原创 在Spring框架xml配置中共有5种自动装配 / 使用@Autowired注解自动装配的过程是怎样的?/ 自动装配的局限性

文章目录在Spring框架xml配置中共有5种自动装配使用@Autowired注解自动装配的过程是怎样的?自动装配有哪些局限性?自动装配的局限性是:在Spring框架xml配置中共有5种自动装配no:默认的方式是不进行自动装配的,通过手工设置ref属性来进行装配bean。byName:通过bean的名称进行自动装配,如果一个bean的 property 与另一bean 的name 相同,就...

2020-05-05 21:29:32 900

原创 Spring提供5种标准的事件 / Spring支持的几种bean的作用域 / @Autowired和@Resource之间的区别 / @Qualifier 注解有什么作用

Spring 提供5种标准的事件上下文更新事件(ContextRefreshedEvent):在调用ConfigurableApplicationContext接口中的refresh()方法时被触发。上下文开始事件(ContextStartedEvent):当容器调用ConfigurableApplicationContext的Start()方法开始/重新开始容器时触发该事件。...

2020-05-05 20:55:09 959

原创 LeetCode.max-points-on-a-line

转载自微信公众号题 目 :对于给定的n个位于同一二维平面上的点,求最多能有多少个点位于同一直线上Given n points on a 2D plane, find the maximum number of points that lie on the same straight line.分 析 :分为n、n-1、n-2……3等组(每组分别包含n个点、n-1个点……),找到每组...

2020-05-02 22:16:43 144

原创 Spring学习笔记整理(二)AnnotatedBeanDefinitionReader

文章目录AnnotatedBeanDefinitionReader是什么?AnnotatedBeanDefinitionReader源码解析入口代码:AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(Config.class);执行了AnnotationConfigApplicat...

2020-04-25 10:34:04 423

原创 【面试】Java集合框架的基础接口有哪些?/Iterator与ListIterator有什么区别?/在Hashtable上下文中同步是什么意思?怎样使Hashmap同步?/map的遍历方式/关于for

文章目录1、Java集合框架的基础接口有哪些?2、Iterator与ListIterator有什么区别?3、在Hashtable上下文中同步是什么意思?怎样使Hashmap同步?4、map的遍历方式5、ArrayList、Vector和LinkedList有什么区别?6、关于foreach和iterator7、什么是CopyOnWriteArrayList,它与ArrayList有何不同?1、...

2020-04-21 11:11:39 242

原创 【面试】hashCode与equals两者之间的关系 / == 和equals / 为什么要重写equals方法 / 重写equals /hashcode方法 / 为什么要重写hashCode方法

文章目录1、hashCode与equals两者之间的关系2、== 和equals的区别`3、为什么要重写equals()方法?4、重写equals()方法5、为什么要重写hashCode()方法?6、什么时候需要重写hashCode()方法?7、重写hashCode()方法:1、hashCode与equals两者之间的关系如果两个对象相同(即用equals比较返回true),那么它们的ha...

2020-04-20 21:10:33 281

原创 Request和Response的区别

Request 对象用于接收客户端浏览器提交的数据(浏览器向服务器发送请求。)Response 对象的功能则是将服务器端的数据发送到客户端浏览器(服务器向浏览器发送回应)Request对象的五个集合QueryString:用以获取客户端附在url地址后的查询字符串中的信息。例如:stra=Request.QueryString [“strUserld”]Form:用以获取...

2020-04-20 06:58:32 808 1

原创 centos6.8各个版本下载

① CentOS6.8下载地址② CentOS 6.8下载地址③ CentOS 6下载地址

2020-04-19 16:41:41 869

原创 【验证码】 用java写动态验证码 / 通过jsp生成验证码 / 在登录界面显示验证码 / js直接生成验证码并验证

文章目录用java写动态验证码通过jsp生成验证码在登录界面显示验证码用js直接生成验证码并验证用java写动态验证码@WebServlet("/checkCodeServlet")public class CheckCodeServlet extends HttpServlet { protected void doPost(HttpServletRequest request, ...

2020-04-15 10:50:32 676

原创 【linux的总结(一)】 Linux初步与环境安装/Linux优点/Linux目前有两种操作模式/安装Linux/安装步骤/linux常用命令介绍/文件的详细说明/常用命令/压缩解压缩命令/其他命令

文章目录1 Linux初步与环境安装。2 Linux优点:3 Linux目前有两种操作模式:4 安装Linux5 安装步骤:6 常用命令介绍。7 文件的详细说明8 常用命令8.4 压缩解压缩命令8.5 其他命令1 Linux初步与环境安装。Linux系统出现于1991年,由芬兰大学生李纳斯(Linus Torvalds)和后来陆续加入的众多爱好者共同开发完成。Linux是一个自由软件,是源代...

2020-04-15 08:34:52 1104

原创 LeetCode.4.max-points-on-a-line

题目:对于给定的n个位于同一二维平面上的点,求最多能有多少个点位于同一直线上Given n points on a 2D plane, find the maximum number of points that lie on the same straight line.解题思路分为n、n-1、n-2……3等组(每组分别包含n个点、n-1个点……),找到每组中包含第一个点的点数最多的...

2020-04-11 22:10:47 128

原创 LeetCode.4.longest-valid-parentheses

题目描述给出一个仅包含字符’(‘和’)'的字符串,计算最长的格式正确的括号子串的长度。对于字符串"(()“来说,最长的格式正确的子串是”()",长度为2.再举一个例子:对于字符串")()())",来说,最长的格式正确的子串是"()()",长度为4.Given a string containing just the characters’(‘and’)’, find the leng...

2020-04-11 09:13:36 226

原创 我们写好service代码,配置好xml以及tomcat为什么还是没有跳转到服务器上?

原 代码:class HelloServlet implements Servlet { public HelloServlet() { System.out.println("1 hello构造器"); } @Override public void service(ServletRequest servletRequest, ServletR...

2020-04-10 10:14:22 159

原创 【超详总结/理解:正则表达式】特点/元字符/正则表达式中的标志位-flag/RegExp/重复操作与后向引用/匹配模式/表达邮箱/正则表达式对象的方法/利用正则表达式限制网页表单里的文本框输入内容

文章目录正则表达式:正则表达式的用途正则表达式的组成-元字符正则表达式的特点正则表达式中的标志位-flagJavaScript中的正则表达式解析RegExp定义 RegExpRegExp 对象有 3 个方法:Regex类重复操作与后向引用正则表达式的匹配模式怎么用正则表达式表达邮箱正则表达式对象的方法正则表达式:正则表达式就是一些用来匹配和处理文本的字符串,其可以看作是内嵌在其他语言里的“迷你...

2020-04-02 16:02:33 957

原创 Linux基础操作/ Linux目录结构/linux进程/查看文件夹内容/网络设置/移动文件和文件夹/ linux内核/Linux 打包压缩命令/删除文件和文件夹/linux系统的进程查看与管理工具

Linux基础操作root 超级用户localhost(相当于ip地址127.0.0.1) 本地主机名Linux目录结构bin (binaries)存放二进制可执行文件sbin (super user binaries)存放二进制可执行文件,只有root才能访问etc (etcetera)存放系统配置文件usr (unix shared resources)用于存放共享的系统资...

2020-04-02 12:06:58 409

原创 LeetCode.3.minimum-depth-of-binary-tree

题目:求给定二叉树的最小深度。最小深度是指树的根结点到最近叶子结点的最短路径上结点的数量。Given a binary tree, find its minimum depth.The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf n...

2020-04-01 10:23:49 185

原创 【面试高频!】数据库事务/事务的作用/数据库事务ACID属性 / 特性/事务的隔离性/数据库事务隔离级别/ 数据库的隔离级别导致问题/数据库事务的使用/mysql的事务死锁/ 快速解决mysql死锁问

数据库事务:针对数据库的某一组操作要么全部成功,要么全部失败。事务的作用1:保证数据的完整性,失败后可以恢复到原来状态2:事务与事务之间互不干扰,这样数据会更加安全数据库事务ACID属性 / 特性原子性(Atomicity):要么全部完成,要么全部不完成。一致性(Consistency):事务必须始终保持系统处于一致性。隔离性(Isolation):隔离执行事务,使它们好像是...

2020-03-31 22:43:38 442

原创 Spring (一)

Spring 是一个开源框架,分层的 JavaEE 一站式框架。一站式框架是: Spring 有 JavaEE 开发的每一层解决方案。Spring简介Spring Boot 构建Spring Cloud 协调Spring Cloud Data Flow 连接WEB层:SpringMVCService层:Spring的Bean管理,声明式事务DAO层:Spring的...

2020-03-29 16:02:02 285 1

原创 java常用函数式接口 /Supplier供给型接口/Consumer消费者接口/Predicate断言型接口/Function函数接口

函数式接口在Java中是指:有且仅有一个抽象方法的接口。函数式接口,适用于函数式编程场景的接口。而Java中的函数式编程体现就是Lambda,所以函数式接口就是可以适用于Lambda使用的接口。只有确保接口中有且仅有一个抽象方法,Java中的Lambda才能顺利地进行推导。格式// 只要确保接口中有且仅有一个抽象方法即可:修饰符 interface 接口名称 {public abstr...

2020-03-26 21:16:39 1230

Git的安装.ppt

这是关于一篇关于git的安装,适合所有初学者。也是我本人安装的步骤,此篇详细。ppt中附带git的安装包,以及每篇ppt中含有解释

2020-04-15

MySQL安装流程.pptx

mysql的安装流程(私信给安装包,可远程),跟着PPT一步一步安装,即可安装成功,此PPT适合初学者~

2020-03-27

空空如也

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

TA关注的人

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