自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

会写Bug的攻城狮

站在巨人的肩膀上,去看不一样的风景!

  • 博客(358)
  • 资源 (5)
  • 收藏
  • 关注

原创 mybatis中的运算符的转义

大于等于<![CDATA[ >= ]]>

2020-11-24 11:13:43 3

原创 Shiro的源码分析

Shiro的源码分析一、 Token相关类1)、接口类package org.apache.shiro.authc;import java.io.Serializable;//AuthenticationToken 用于收集用户提交的身份(如用户名)及凭据(如密码)public interface AuthenticationToken extends Serializable { //得到主体subject进行身份认证的标识,标识具有唯一性 Object getPrin

2020-11-17 18:42:31 9

原创 java~lombok里的Builder注解

lombok注解在java进行编译时进行代码的构建,对于Java的对象的创建工作他可以更优雅,不需要写重复的代码。创建对象通过builder方法。@Data@Builderpublic class TestBuilder { private String name; private String loc; public static void main(String[] args){ TestBuilder testBuilder = TestBuilde

2020-11-17 11:48:34 13

原创 springboot使用spring-boot-configuration-processor获取配置文件

springboot使用spring-boot-configuration-processor获取配置文件springboot中获取配置文件的方式,通常大家最常用的是@Value("${mail.username}")的形式,也可以用spring-boot-configuration-processor来更优雅得读取配置文件。下面讲下具体用法。引入pom文件 在使用idea创建springboot项目的时候,可以选择。 也可以直接引入pom文件<dependency> &

2020-11-16 19:21:28 75

原创 定时任务框架Quartz-(一)Quartz入门与Demo搭建

一、什么是Quartz什么是Quartz?Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,完全由Java开发,可以用来执行定时任务,类似于java.util.Timer。但是相较于Timer, Quartz增加了很多功能:持久性作业 - 就是保持调度定时的状态; 作业管理 - 对调度作业进行有效的管理;大部分公司都会用到定时任务这个功能。拿火车票购票来说,当你下单后,后台就会插入一条待支付的task(job),一般是30分钟,超过30m

2020-11-16 19:05:55 27

原创 Mybatis-Plus-Generator代码生成器

Mybatis-Plus-Generator代码生成器1、所需依赖<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId></dependency><dependency> <groupId>com.baomidou</groupId> <arti

2020-11-13 16:29:53 10

原创 Mybatis-plus的自动生成器

package com.womow.zyzd.common.generator;import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;import com.baomidou.mybatisplus.core.toolkit.StringPool;import com.baomidou.mybatisplus.core.toolkit.StringUtils;import com.baomidou.mybatis.

2020-11-13 15:52:14 13

原创 Java的自定义注解

Java的自定义注解一、Java的注解1、注解的作用1.生成文档这是最常见的,也是java 最早提供的注解。常用的有@see @param @return 等;2.跟踪代码依赖性实现替代配置文件功能。比较常见的是spring 2.5 开始的基于注解配置。作用就是减少配置。现在的框架基本都使用了这种配置来减少配置文件的数量;3.在编译时进行格式检查如@Override放在方法前,如果你这个方法并不是覆盖了超类方法,则编译时就能检查出;2、元注解meta-annotation注解:负责注解其

2020-11-13 15:37:37 8

原创 (2020)Java后端开发----(面试题和笔试题)

2020Java后端开发面试一、2020/11/05 公司:1、初试(过了)1)、笔试题笔试题:给了5个SQL的查询语句的题(基本上都写出来,就是稍微有点问题,主要是SQL语句写的比较少,以后还需要加强)2)、面试题Spring(IOC,AOP)、SpringMVC(MVC的执行流程)、SpringBoot(主要的用途)他们是做什么的?JVM的组成部分?New一个新的对象,在堆区是如何存储的(考虑多种情况)机器学习算法中的线性回归和逻辑回归是怎么做的?3)、总结

2020-11-12 10:22:29 150 4

原创 mysql数据库:varchar类型可以存储多少个汉字,多少个数字

在设计数据库的时候会考虑给字段设置什么类型,设置多少长度合适,之前一直认为varchar(2)可以存储一个汉字,或者一个数字,通过今天无意间的查询,发现了这个错误,来记下来其实varchar类型可以存储多少个汉字,多少个数字,是要具体看我们的mysql版本。如下:4.0版本以下,比如 varchar(100),指的是100字节,如果存放UTF8汉字时,只能存33个(每个汉字3字节)5.0版本以上,比如varchar(100),指的是100字符,无论存放的是数字、字母还是UTF8汉字(每个汉字.

2020-11-10 18:17:49 79

原创 JAVA中的getBytes()方法(史上最能明白的总结)

在Java中,String的getBytes()方法是得到一个操作系统默认的编码格式的字节数组。这个表示在不同情况下,返回的东西不一样! String.getBytes(String decode)方法会根据指定的decode编码返回某字符串在该编码下的byte数组表示,如:byte[] b_gbk = "大大".getBytes("GBK"); byte[] b_utf8 = "大大".getBytes("UTF-8"); byte[] b_iso8859...

2020-11-08 17:14:29 145 1

原创 消息队列一---(为什么使用消息队列和优缺点区别)

应用场景为什么使用消息队列(面试官看你思不思考)其实就是问问你消息队列都有哪些使用场景,然后你项目里具体是什么场景,说说你在这个场景里用消息队列是什么?面试官问你这个问题,期望的一个回答是说,你们公司有个什么业务场景,这个业务场景有个什么技术挑战,如果不用 MQ 可能会很麻烦,但是你现在用了 MQ 之后带给了你很多的好处。先说一下消息队列常见的使用场景吧,其实场景有很多,但是比较核心的有 3 个:解耦、异步、削峰。解耦一个系统(模块)调用多个系统(模块)的场景多个系统的添加或减少

2020-11-08 15:26:45 33

原创 面试官 | JVM 为什么使用元空间替换了永久代?

在Java8和以后版本中JVM的内存结构慢慢发生了变化。作为面试官如果你还不知道,那么面试过程中是不是有些露怯?作为面试者,如果知晓这些变化,又将成为面试中的亮点。如果在网络上搜索JVM内存结构,90%的可能会搜到Java7及以前的内存图,本篇文章将会对JVM内存结构再次细化,深入理解Java8之后内部的变化。现在意识到关注公众号“程序新视界”的好处了吧。在这里可以不断的刷新你的知识和认知。JVM内存结构的细化再来看一下JVM内存结构图。为了更细化的讲解,我们将该图进行进一步的优化调整。

2020-11-04 20:53:38 19

原创 mybatis-plus的使用 ------ 进阶

前言:关于mybatis-plus的简介以及基本使用,我在《mybatis-plus的使用 ------ 入门》一文中已做介绍,此处不再赘述。本文主要对mybatis-plus的AR模式、插件、逆向工程、自定义全局操作、公共字段自动填充等知识点进行讲解。欢迎大家关注我的公众号 javawebkf,目前正在慢慢地将简书文章搬到公众号,以后简书和公众号文章将同步更新,且简书上的付费文章在公众号上将免费。一、ActiveRecord:Active Record(活动记录),是一种领域模型模式,特点

2020-11-04 20:45:05 58

原创 mybatis-plus的使用 ------ 入门

前言:mybatis在持久层框架中还是比较火的,一般项目都是基于ssm。虽然mybatis可以直接在xml中通过SQL语句操作数据库,很是灵活。但正其操作都要通过SQL语句进行,就必须写大量的xml文件,很是麻烦。mybatis-plus就很好的解决了这个问题。欢迎大家关注我的公众号 javawebkf,目前正在慢慢地将简书文章搬到公众号,以后简书和公众号文章将同步更新,且简书上的付费文章在公众号上将免费。一、mybatis-plus简介:Mybatis-Plus(简称MP)是一个 Myba

2020-11-04 20:43:31 64

原创 mysql中InnoDB引擎中页的概念

Innodb中页的概念基础结构Page是Innodb存储的最基本结构,也是Innodb磁盘管理的最小单位,与数据库相关的所有内容都存储在Page结构里。Page分为几种类型:数据页(B-Tree Node),Undo页(Undo Log Page),系统页(System Page),事务数据页(Transaction System Page)等;每个数据页的大小为16kb,每个Page使用一个32位(一位表示的就是0或1)的int值来表示,正好对应Innodb最大64TB的存储容量(16kb * 2

2020-11-04 14:49:20 18

原创 状态码的详细分析

(1)状态码既然Ajax涉及到前后端的数据交互,那么我们就先来简单的看一下几种类型的状态码,如下表:文章目录 一 4xx - 客户端错误 二 5xx - 服务器错误 三 3xx - 重定向 四 1xx - 临时响应 五 2xx - 成功 一 4xx - 客户端错误发生错误,客户端似乎有问题。例如,客户端请求不存在的页面,客户端未提供有效的身份验证信息。 400 Bad Request:请求出现语法错误。 401 Unauthorized:客户试图未.

2020-11-03 20:25:24 24

原创 (2020)SpringBoot(初级+中级级)

(2020)SpringBoot(初中高级)一、SpringBoot的概述SpringBoot是Spring的扩展,它里面有很多xxxxAutoConfiguration配置类,这样就简化了使用Spring开发应用Springboot的父项目<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</art

2020-11-03 20:14:38 24

原创 MySQL——SQL练习题目(部门员工表)

1、建表-- 部门表create table dept( deptno int primary key auto_increment, -- 部门编号 dname varchar(14) , -- 部门名字 loc varchar(13) -- 地址) ;-- 员工表create table emp( empno int primary key auto_increment,-- 员工编号 ename varchar(10), -- 员工姓名 - job

2020-11-03 12:52:29 95

原创 feign和ribbon区别

feign和ribbon是Spring Cloud的Netflix中提供的两个实现软负载均衡的组件,Ribbon和Feign都是用于调用其他服务的,方式不同。Feign则是在Ribbon的基础上进行了一次改进,采用接口的方式。feign和ribbon是Spring Cloud的Netflix中提供的两个实现软负载均衡的组件,Ribbon 和 Feign 都是用于调用其他服务的,方式不同。Feign 则是在 Ribbon 的基础上进行了一次改进,采用接口的方式,将需要调用的其他服务的方法定义...

2020-10-31 20:22:11 20

原创 (2020)SpringMVC的使用

(2020)SpringMVC的使用一、概述1、什么是Spring MVC?简单介绍下你对Spring MVC的理解?Spring MVC是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把模型-视图-控制器分离,将web层进行职责解耦,把复杂的web应用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人员之间的配合。2、SpringMVC 的优点支持各种视图技术,不仅仅局限于JSP与spring框架继承清晰的角色分配:前端控制器DispatchServle

2020-10-28 00:16:40 21

原创 (2020)Spring框架(基础和中级部分)

2020 Spring框架一、框架的概述1、spring是什么?为了解决什么提出的?Spring是一个轻量级Java开发框架,目的是为了解决企业级应用开发的业务逻辑和其它层的耦合问题(简化java开发)spring可以做很多东西,为企业级平台提供了丰富的功能,但是这些功能的都依赖与他的两个核心特性,控制反转和面向切面编程2、Spring的优点(减低耦合,增强服务,简化开发)减低程序之间的耦合简化开发流程通过切面编程以动态非侵入的方式增强服务声明式事务的支持方便测试方便集成各种优秀的框

2020-10-27 23:13:11 35

原创 Java 浅拷贝和深拷贝的理解和实现方式

总结:对象的拷贝,有浅拷贝和深拷贝之分,浅拷贝就是拷贝给另一个对象的是本对象存储的地址,而不是新开辟的存储区域去存放新的这个对象,这样不管是修改原对象还是新对象的内容,都会将原对象和新对象的内容修改掉。深拷贝就是新开辟一块存储区域去存储拷贝来的对象,这样修改原对象,也不会影响新对象的值。 浅拷贝的三种实现方式(除String类型外,他比较特殊,它是字符串常量,不能被修改,重新给他复制的话,他就会创建新的内存区域去存储新的值): 直接将引用对象赋值给另一个对象 通过拷贝构造方法实现浅拷贝 通过

2020-10-24 16:18:03 25

原创 浅谈java中类名.class, class.forName(), getClass()的区别

Class对象的生成方式如下:1、类名.class说明: JVM将使用类装载器, 将类装入内存(前提是:类还没有装入内存),不做类的初始化工作.返回Class的对象2、Class.forName("类名字符串")(注:类名字符串是包名+类名)说明:装入类,并做类的静态初始化,返回Class的对象3、实例对象.getClass()说明:对类进行静态初始化、非静态初始化;返回引用o运行时真正所指的对象(因为:子对象的引用可能会赋给父对象的引用变量中)所属的类的Class的对...

2020-10-24 00:02:29 16

原创 (2020)JAVA 高级篇(并发编程)

(2020)JAVA 并发编程一、基础知识1、并发编程的优缺点优点充分利用多核CPU的计算能力方便进行业务拆分,提升系统并发能力和性能缺点并不是总能提升程序的运行速度,也会造成内存泄漏,上写文切换,线程死锁等2、并发编程的三要素原子性:一个或者多个操作,要么全部成功要么全部失败可见性:一个线程对共享变量的修改,另一个线程能够立刻看到程序的执行按照先后顺序1)、出现线程安全问题的原因:线程切换带来的原子性问题缓存导致的可见性问题编译优化带来的有序性问题2

2020-10-23 23:46:26 27

原创 (2020)JAVA高级篇(JVM虚拟机)

(2020)JVM的知识归纳一、JVM的组成JVM包含两个子系统和两个组件,两个子系统为Class loader(类装载)、Execution engine(执行引擎);两个组件为Runtime data area(运行时数据区)、Native Interface(本地接口)。class loader:类加载器,根据全限定类名(例如java.lang.Object)将class文件加载到运行时数据区域execution engine:执行引擎,执行classes中的指令native inter

2020-10-23 23:43:16 11

转载 Java中synchroized关键字的使用

在Java中我们经常使用同步,最多使用的就是synchroized关键字,下面我们就看看这个关键字的用法。因为synchroized涉及到锁的概念,我们先来了解一下锁的知识。java的内置锁:每个java对象都可以用作一个实现同步的锁,这些锁成为内置锁。线程进入同步代码块或方法的时候会自动获取该锁,在退出同步代码块或者方法时会释放该锁。获得内置锁的唯一途径就是进入这个锁保护的代码块或者方法。java内置锁是互斥锁,这就意味着最多一个线程能获得该锁,当线程A尝试的去获得线程B持有的内置..

2020-10-23 23:01:38 11

原创 JAVA重写hashcode()和equals()方法

JAVA重写hashcode()和equals()方法一、Object类下的方法在Object类下的hashcode()方法生成的哈希值,大多数情况下都是不一样的,也有值不一样的,但是哈希值一样的。 在Object类下的equals()方法比较两个对象是否一样,默认是实现了“==”,也就是比较的是两个对象的地址是否一样,二、重写Object类下的方法 重写hashcode方法的原因是:要通过euqals方法比较两个对象是否一样,不能使用默认的方法,要重写equals方法。那怎么才能比较两个

2020-10-23 22:51:36 15

原创 Java中main方法启动的是一个进程还是一个线程

Java中main方法启动的是一个线程也是一个进程,一个java程序启动后它就是一个进程,进程相当于一个空盒,它只提供资源装载的空间,具体的调度并不是由进程来完成的,而是由线程来完成的。一个java程序从main开始之后,进程启动,为整个程序提供各种资源,而此时将启动一个线程,这个线程就是主线程,它将调度资源,进行具体的操作。Thread、Runnable的开启的线程是主线程下的子线程,是父子关系,此时该java程序即为多线程的,这些线程共同进行资源的调度和执行。...

2020-10-21 12:09:10 14

转载 JAVA的序列化和反序列化的详解

一、基本概念1、序列化和反序列化的定义: (1)Java序列化就是指把Java对象转换为字节序列的过程 Java反序列化就是指把字节序列恢复为Java对象的过程。 (2)序列化最重要的作用:在传递和保存对象时.保证对象的完整性和可传递性。对象转换为有序字节流,以便在网络上传输或者保存在本地文件中。 反序列化的最重要的作用:根据字节流中保存的对象状态及描述信息,通过反序列化重建对象。 总结:核心作用就是对象状态的保存和重建。(整个过程核心点就是字...

2020-10-21 00:51:19 9

原创 (2020)JAVA中级篇(集合类)

(2020)JAVA集合类面试复习一、集合容器概述1、集合的特点存储不同类型,不同格式,不同存储规则数据的容器2、集合和数组的区别数组的长度固定,集合的长度可变数据可以存储基本类型和引用类型,但是集合只能存储引用类型数组中的元素类型必须是一样的,集合中的元素类型可以不一样3、使用集合的好处容量的自增长提供了高性能的数据结构和算法,是编码更加的轻松,提高了程序速度和质量允许不同API之间的互操作,API可以来回的传递集合可以方便的不扩展或者改写集合,提高代码的复用性和可操作性、

2020-10-21 00:45:56 49 1

转载 Java transient关键字使用小记

1. transient的作用及使用方法我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,只要这个类实现了Serilizable接口,这个类的所有属性和方法都会自动序列化。 然而在实际开发过程中,我们常常会遇到这样的问题,这个类的有些属性需要序列化,而其他属性不需要被序列化,打个比方,如果一个用户有一些敏感信息(如密码,银行卡号等),为了安全起见,不希望在网络操作(主要涉及到序列...

2020-10-20 21:31:15 10

原创 (2020)JAVA基础篇(基础知识)

JAVA基础一、概述1、Java简述Java是一种面向对象编程的语言,有封装,继承,多态,没有多继承;有自带的垃圾回收机制。2、Java的优缺点2.1、优点JAVA是纯面向对象的语言平台无关性,可移植性强:一次编译,到处执行。.java程序经过编译器,编译成.class的字节码文件,只要不同的系统上面安装了JVM(java 虚拟机)就可以执行这个字节码文件JAVA提供了很多内置的类库:简化开发人员的设计工作,同时缩短了项目开发的时间。提供多线程,网络编程,以及垃圾回收的部分JAVA提供对

2020-10-20 00:30:45 68

转载 2万字长文包教包会 JVM 内存结构

JVM ≠ Japanese Video's Man写这篇的主要原因呢,就是为了能在简历上写个“熟悉JVM底层结构”,另一个原因就是能让读我文章的大家也写上这句话,真是个助人为乐的帅小伙。。。。嗯,不单单只是面向面试学习哈,更重要的是构建自己的JVM 知识体系,Javaer 们技术栈要有广度,但是 JVM 的掌握必须有深度直击面试反正我是带着这些问题往下读的 说一下 JVM 运行时数据区吧,都有哪些区?分别是干什么的? Java 8 的内存分代改进 举例...

2020-10-18 23:30:08 92 2

转载 2020后端开发面试总结(全网最全)

序号 内容 链接地址 1 Java基础知识面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104390612 2 Java集合容器面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104588551 3 Java异常面试题(2020最新版) https://thinkwon.blog.csdn.net/...

2020-10-18 23:26:22 53 1

原创 箭头函数和js里面的map函数用法

箭头函数s => s.length或者(a,b)=>{c=a+b*4},在map方法中写箭头函数,会将箭头函数处理的结果返回到一个新的数组或者其他的可遍历对象。var a = [ 'Hydrogen', 'Helium', 'Lithium', 'Beryl­lium' ];//获取每个元素的长度,组成一个数组,方法1var b = a.map(function(s){return s.length});//方法2var c = a.map(s => s.leng.

2020-10-18 00:43:44 68

原创 spring的javax.validation 注解式参数校验.

为什么要用validator javax.validation的一系列注解可以帮我们完成参数校验,免去繁琐的串行校验 不然我们的代码就像下面这样: // http://localhost:8080/api/user/save/serial /** * 走串行校验 * * @param userVO * @return */ @PostMapping("/save/serial") public Object.

2020-10-18 00:32:32 90

原创 data too long for column ‘name‘ at row 1的解决办法

产生这个问题的原因是:mysql乱码。产生乱码的根源在于编码解码使用不同的码表。把数据库或者表的字符编码集改为GBK即可

2020-10-17 19:23:10 101

原创 解决IDEA自动重置Language Level和JavaCompiler版本的问题

<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <!--<version></.

2020-10-16 15:24:57 11

转载 docker下修改mysql配置文件

由于需要修改mysql的sql_mode,在命令行修改每次重启都会失效,因为修改docker下mysql的配置文件。操作系统:centos7docker版本:Docker version 17.05.0-ce, build 89658bemysql版本:5.7.181.拉取镜像docker pull mysql:5.7.1812.列出镜像[root@zk01 ~]# docker imagesREPOSITORY

2020-10-14 19:41:38 63

chm文档.zip(jdk8,css,html,javascript,网页完全制作)|chm文档.zip

chm文档包含这些API文档(jdk8,css,html,javascript,网页完全制作),特别好用,可以查询,收藏之类的,特别好用,可以查询,收藏之类的特别好用,可以查询,收藏之类的

2020-09-09

苹果IOS风论文答辩PPT模板.pptx|苹果IOS风论文答辩PPT模板.pptx

特别好用的一个万能模板,可以用来做毕设,技术分享,年会总结等,都是非常的好用,走过路过,不要错过。

2020-09-09

基于协同过滤算法的电影个性化推荐系统设计与实现_贾忠涛.pdf|基于协同过滤算法的电影个性化推荐系统设计与实现_贾忠涛.pdf

机器学习是计算机科学与人工智能的重要分支领域. 本书作为该领域的入门教材,在内容上尽可能涵盖机器学习基础知识的各方面。 为了使尽可能多的读者通过本书对机器学习有所了解, 作者试图尽可能少地使用数学知识. 然而, 少量的概率、统计、代数、优化、逻辑知识似乎不可避免. 因此, 本书更适合大学三年级以上的理工科本科生和研究生, 以及具有类似背景的对机器学 习感兴趣的人士. 为方便读者, 本书附录给出了一些相关数学基础知识简介. [1]

2019-09-10

c++实现的五子棋

一个内容全面,结构层次清晰,逻辑严密,简单易懂,很适合刚学完c++的实践。

2018-05-09

c++五子棋的实现五子棋的实现|wuziqi-master.zip

一个简单的五子棋游戏,代码简单易懂,层次清晰,希望刚兴趣的可以下载,一个简单的五子棋游戏,代码简单易懂,层次清晰,希望刚兴趣的可以下载,一个简单的五子棋游戏,代码简单易懂,层次清晰,希望刚兴趣的可以下载,

2018-05-09

空空如也

空空如也

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

TA关注的人 TA的粉丝

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