自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 mybatis if

<!-- 4.1.1 在WHERE条件中使用if 需求: 实现一个用户管理高级查询功能,根据输入的条件去检索用户信息。这个功能 还需要支持以下三种情况:当只有输入用户名时,需要根据用户名进行模糊查 询;当只有输入邮箱时,根据邮箱进行完全匹配;当同时输入用...

2020-04-21 16:10:11 307 1

原创 mybatis中使用LocalDateTime报错:SQLFeatureNotSupportedException

mybatis-plus 3.1.1版本更新了mybatis的版本,由原先的3.5.0更新到了3.5.1,但是因为mybatis 3.5.1版本对于java.time包下LocalDateTime,LocalDate,LocalTime类型的转换交由了JDBC,若JDBC组件不支持对于LocalDateTime类型的处理则会报错。现在项目中运用的是alibaba druid数据库连接池,在drui...

2020-03-18 20:28:06 1962

转载 layui内置loading等待加载

点击功能按钮之后var loading = layer.load(0, {shade: false,time: 2*1000});参数:  icon:0,1,2   loading风格shade:false  是否有遮罩,true表示有遮罩time : 2*1000  设定最长等待时间,设置时间之后,loading会在时间到之后自动关闭关闭"loading" (在ajax成功或失败...

2020-03-18 16:57:49 2885

原创 单例模式

package com.designpattern.singleinstance;/** * 单例模式有八种方式: * 1) 饿汉式(静态常量)--->可用,可能造成内存浪费 * * 2) 饿汉式(静态代码块)--->可用,可能造成内存浪费 * * 3) 懒汉式(线程不安全)-->在实际开发中,不要使用这种方式 * * 4) 懒汉式(线程安全,同步方法)--&...

2020-03-07 23:42:15 152

原创 java设计模式七大原则

七大设计原则:1、单一职责原则【SINGLE RESPONSIBILITY PRINCIPLE】:一个类负责一项职责.2、里氏替换原则【LISKOV SUBSTITUTION PRINCIPLE】:继承与派生的规则.3、依赖倒置原则【DEPENDENCE INVERSION PRINCIPLE】:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。即针对接...

2020-03-07 12:43:49 134

原创 手写简易线程池完整代码

package com.thread.threadpool;import java.util.ArrayList;import java.util.Iterator;import java.util.LinkedList;import java.util.List;/** * 线程池 */public class ThreadPool extends Thread{ ...

2020-03-05 19:27:05 249

原创 捕获线程运行期间的异常

package com.thread.threadexception;/** * 捕获线程运行期间的异常 * * * 线程无法抛出异常,因为run()方法无法抛出异常 */public class ThreadException { private final static Integer A=10; private final static Integer B=0...

2020-03-05 10:38:43 163

原创 给应用程序注入钩子程序

package com.thread.hook;/** * 给应用程序注入钩子程序 */public class ExitCapture { public static void main(String[] args) { Runtime.getRuntime().addShutdownHook(new Thread(()->{ S...

2020-03-05 10:02:47 439

原创 哈夫曼树代码实现

package com.datastructure.tree.binaryTree;import java.util.*;/** * 哈夫曼树 */public class HuffmanTree { //测试一把 public static void main(String[] args) { int[] arr={13,7,8,3,29,6,1}...

2020-03-04 11:43:03 510

原创 堆排序

package com.datastructure.sortingalgorithm;import java.text.SimpleDateFormat;import java.util.Date;/** * 堆排序 * 非常快 */public class HeapSort { //测试一把 public static void main(String[] a...

2020-03-03 23:15:19 158

原创 顺序存储二叉树

package com.datastructure.tree.binaryTree;/** * 顺序存储二叉树 * * 1。顺序存储二叉树通常只考虑完全二叉树 * 2。第n个元素的左子节点为2*n+1 * 3。第n个元素的右子节点为2*n+2 * 4。第n个元素的父亲节点为(n-1)/2 */public class SequentialStorageBinaryTree {...

2020-03-03 18:16:32 105

原创 中序线索二叉树

package com.datastructure.tree.binaryTree.cluebinarytree;/** * 线索二叉树 */public class ClueBinaryTree { public static void main(String[] args) { ClueBinaryTre clueBinaryTre = new ClueB...

2020-03-03 18:13:15 284

原创 实现一个自己的显示锁Lock

接口package com.thread.createmyselflock;import java.util.Collection;public interface Lock { class TimeOutException extends Exception{ public TimeOutException(String messgae){ ...

2020-03-03 15:32:03 137

原创 Java lock 能被中断, synchronized 不能被中断

1、lock是可中断锁,而synchronized 不是可中断锁 线程A和B都要获取对象O的锁定,假设A获取了对象O锁,B将等待A释放对O的锁定, 如果使用 synchronized ,如果A不释放,B将一直等下去,不能被中断 如果 使用ReentrantLock,如果A不释放,可以使B在等待了足够长的时间以后,中断等待,而干别的事情ReentrantLock获取锁定与三种方式:a...

2020-03-03 12:27:25 842

原创 结束线程的方式三

package com.thread.killthread;/**使用守护线程的方式杀死线程*/public class EndOfViolenceToKillThread{private Thread executeThread;private boolean flag = false;public void execute(Runnable task){//执行线程exe...

2020-03-02 16:10:53 120

原创 结束线程的方式二

package com.thread.killthread;/** * 用中断的方式杀死线程 */public class InterruptToKillThread extends Thread{ @Override public void run() { //中断方式1// while (true){// Sys...

2020-03-02 16:09:48 164

原创 顺序存储二叉树的遍历

package com.datastructure.tree.binaryTree;/** * 顺序存储二叉树 * * 1。顺序存储二叉树通常只考虑完全二叉树 * 2。第n个元素的左子节点为2*n+1 * 3。第n个元素的右子节点为2*n+2 * 4。第n个元素的父亲节点为(n-1)/2 */public class SequentialStorageBinaryTree {...

2020-03-02 16:08:39 526

原创 结束线程的方式一

package com.thread.killthread;/** * 设置标志杀死线程 */public class SetFlagForKill extends Thread{ private volatile boolean flag = false; @Override public void run() { while (!flag)...

2020-03-02 15:11:10 100

原创 二叉树

package com.datastructure.tree.binaryTree;/** * 二叉树 */public class BinaryTree { //测试一把 public static void main(String[] args) { //创建一棵树 BinaryTre binaryTre = new BinaryTr...

2020-03-01 15:59:52 116

原创 手写哈希表

情景: google公司上机题, 有一个公司,当有新员工来报到时,要求将该员工的信息加入(ID,姓名,年龄,地址),当输入员工的ID时,要求查找到该员工的所有信息要求: 不使用数据库,速度越快越好====》言外之意,用hash表来完成package com.datastructure.HashTableDemo;import java.util.Scanner;/** * googl...

2020-02-29 17:27:09 667

原创 斐波那契查找算法(黄金分割查找算法)

package com.datastructure.searchalgorithm;import java.util.ArrayList;import java.util.Arrays;import java.util.List;/** * 斐波那契查找算法(黄金分割查找算法) */public class Fibonacci { public static void ...

2020-02-28 23:03:06 340

原创 插值查找算法

package com.datastructure.searchalgorithm;import java.util.ArrayList;import java.util.List;/** * 插值查找算法 * * 对于数据量较大,关键字分布比较均匀的查找表来说,采用插值查找,速度较快 * * 但是在关键字分布不均匀的情况下,该方法不一定比二分查找要好 */public c...

2020-02-28 18:45:42 106

原创 二分查找

package com.datastructure.lookupalgorithm;import java.util.ArrayList;import java.util.List;/** * 二分查找 * 数组必须是有序的 */public class BinarySearch { public static void main(String[] args) {//...

2020-02-28 16:23:07 169

原创 希尔排序

package com.datastructure.sortingalgorithm;import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Date;/** * 希尔排序 * 非常快 */public class ShellSort { public static void...

2020-02-28 14:41:55 75

原创 选择排序

package com.datastructure.sortingalgorithm;import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Date;/** * 选择排序 * 排序速度快于冒泡排序 */public class SelectionSort { public ...

2020-02-28 14:41:28 87

原创 快速排序

package com.datastructure.sortingalgorithm;import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Date;/** *快速排序 * 比希尔还快 */public class QuickSort { public static voi...

2020-02-28 14:40:53 69

原创 归并排序

package com.datastructure.sortingalgorithm;import java.util.Arrays;/** * 归并排序 */public class MergeSort { public static void main(String[] args) { int[] a = {90,-2,0,1,2,90,5,-2,4,3...

2020-02-28 14:40:14 111

原创 插入排序

package com.datastructure.sortingalgorithm;import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Date;/** * 插入排序 */public class InsertSort { public static void main(S...

2020-02-28 14:39:44 53

原创 冒泡排序及其优化

package com.datastructure.sortingalgorithm;import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Date;/**冒泡排序及其优化排序速度不是很快*/public class BubbleSort {public static voi...

2020-02-28 14:38:53 124

原创 基数排序

package com.datastructure.sortingalgorithm;import java.util.Arrays;/**基数排序稳定的排序速度非常快,比快速,归并都快但是占用内存空间巨大,是典型的空间换时间*/public class RadixSort {public static void main(String[] args) { in...

2020-02-28 14:37:15 69

原创 $().click()和$().on('click',function(){})的区别

().click()和().click()和().click()和().on(‘click’,function(){})的区别1. $(选择器).click(fn)当选中的选择器被点击时触发回调函数fn。只针对与页面已存在的选择器。 1 2 3 4 后面动态创建的5和6,没法进行点击事件触发。...

2019-10-23 23:02:23 402 1

原创 Long.valueOf(“String”), longValue()和Long.parseLong(“String”)各自的功能

longValue()longValue()是Long类的一个方法,用来得到Long类中的数值,是将包装类中的数据拆箱成基本数据类型.Long.valueOf(“String”)Long.valueOf(这里有参数),是将参数转换成long的包装类——Long。Long.ParseLong(String)Long.ParseLong(String)方法,将 string 参数解析为有符号...

2019-10-21 17:31:07 2062

原创 JDBC连接数据库时警告:Establishing SSL connection without server's identity verification is not recommended.

警告信息为:Sat Aug 31 12:13:53 CST 2019 WARN: Establishing SSL connection without server’s identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connect...

2019-08-31 12:29:14 532

原创 异常的抛出和处理

自定义输出异常package error;import java.util.ArrayList;public class Exception { public static void main(String[] args) { // TODO Auto-generated method stub try { //list目前为空,因为还没有new,是不能使用的 A...

2019-08-29 16:55:54 958 1

原创 每天一条Linux命令---nl

nl(添加行号打印)[root@www~]# nl [-bnw] 文件参数:-b : 指定行号指定的方式, 主要有两种:-b a : 表示不论是否为空行,也同样列出行号(类似 cat -n);**-b t : ** 如果有空行,空的那一行不要列出行号(默认值).-n : 列出行号的表示方法,主要有三种:-n ln : 行号在屏幕的最左方显示;-n rn : 行号在自己字段的最...

2019-08-27 01:19:46 156

原创 为什么要使用Maven

Maven是什么?Maven是Apache下的项目管理工具,它由纯Java语言开发,可以帮助我们更方便的管理和构建Java项目。为什么要使用Maven?jar包管理:a) 从Maven中央仓库获取标准的规范的jar包以及相关依赖的jar包,避免自己下载到错误的jar包;b) 本地仓库统一管理jar包,使jar包与项目分离,减轻项目体积。maven是跨平台的可以在window、lin...

2019-08-26 11:14:37 259

原创 安装Mysql8后,mysql workbench连接数据库报错:Authentication plugin 'caching_sha2_password' cannot be loaded

安装Mysql8后,mysql workbench连接数据库报错:这是因为 : 8.0加密方式是(caching_sha2_password)有些 mysql workbench 客户端还不支持. 因此需要修改 mysql 用户密码的加密方式.查看加密方式: select user, host, plugin, authentication_string from user\G;修改密...

2019-08-26 00:38:57 940

转载 Java面试内容

Java基础知识java中==和equals和hashCode的区别int与integer的区别抽象类的意义接口和抽象类的区别能否创建一个包含可变对象的不可变对象?谈谈对java多态的理解String、StringBuffer、StringBuilder区别泛型中extends和super的区别进程和线程的区别final,finally,finalize的区别序列化的方式s...

2019-08-25 21:22:53 107

原创 Mysql学习笔记

1. 什么是数据库?Excel就是一个数据表,人操作MySQL是一个数据库,便于程序操作,便于存储百万以上级别的数据对于数据库的基本操作:增删改查如何对数据库操作 SQL语句 SQL命令 Structured Query Language(SQL)1) 每个命令后;2) 不区分大小写2. 数据库排行(2016.10)OracleMySQLSQL ServerMongoDBP...

2019-08-25 13:49:55 131

原创 每天一个Linux命令---cat与tac

开篇第一句,还是那句老话: 先学会走,再想着跑.直接查看文件内容直接查看一个文件的内容可以使用cat、tac、nl命令,今天我们主要讲: cat、tac, nl命令明天继续.cat(concatenate)-A : 相当于 -vET 的整合参数,可列出一些特殊字符,而不是空白而已;(不常用)-b : 列出行号,仅针对非空白做行号显示,空白行不标行号;(常用)-E : 将结尾的断行字符...

2019-08-25 12:27:52 227

空空如也

空空如也

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

TA关注的人

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