java
菜丸
这个作者很懒,什么都没留下…
展开
-
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 · 2096 阅读 · 0 评论 -
MD5加密
MD5消息摘要算法,属Hash算法一类。MD5算法对输入任意长度的消息进行运行,产生一个128位的消息摘要(32位的数字字母混合码)。MD5的性质:1、压缩性:任意长度的数据,算出的MD5值长度都是固定的(相当于超损压缩)。2、容易计算:从原数据计算出MD5值很容易。3、抗修改性:对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别。4、弱抗碰撞:已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的。5、强抗碰撞:想找到两个不同的数据,使它们具有原创 2020-08-08 09:46:54 · 308 阅读 · 0 评论 -
值传递和引用传递有什么区别
值传递:指的是在方法调用时,传递的参数是按值的拷贝传递,传递的是值的拷贝,也就是说传递后就互不相关了。引用传递:指的是在方法调用时,传递的参数是按引用进行传递,其实传递的引用的地址,也就是变量所对应的内存空间的地址。传递的是值的引用,也就是说传递前和传递后都指向同一个引用(也就是同一个内存空间)。...原创 2020-05-17 20:26:36 · 432 阅读 · 0 评论 -
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 · 397 阅读 · 0 评论 -
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 · 1039 阅读 · 0 评论 -
使用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 · 300 阅读 · 0 评论 -
【面试】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 · 261 阅读 · 0 评论 -
【面试】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 · 359 阅读 · 0 评论 -
【验证码】 用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 · 743 阅读 · 0 评论 -
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 · 142 阅读 · 0 评论 -
【超详总结/理解:正则表达式】特点/元字符/正则表达式中的标志位-flag/RegExp/重复操作与后向引用/匹配模式/表达邮箱/正则表达式对象的方法/利用正则表达式限制网页表单里的文本框输入内容
文章目录正则表达式:正则表达式的用途正则表达式的组成-元字符正则表达式的特点正则表达式中的标志位-flagJavaScript中的正则表达式解析RegExp定义 RegExpRegExp 对象有 3 个方法:Regex类重复操作与后向引用正则表达式的匹配模式怎么用正则表达式表达邮箱正则表达式对象的方法正则表达式:正则表达式就是一些用来匹配和处理文本的字符串,其可以看作是内嵌在其他语言里的“迷你...原创 2020-04-02 16:02:33 · 1249 阅读 · 0 评论 -
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 · 211 阅读 · 0 评论 -
【面试高频!】数据库事务/事务的作用/数据库事务ACID属性 / 特性/事务的隔离性/数据库事务隔离级别/ 数据库的隔离级别导致问题/数据库事务的使用/mysql的事务死锁/ 快速解决mysql死锁问
数据库事务:针对数据库的某一组操作要么全部成功,要么全部失败。事务的作用1:保证数据的完整性,失败后可以恢复到原来状态2:事务与事务之间互不干扰,这样数据会更加安全数据库事务ACID属性 / 特性原子性(Atomicity):要么全部完成,要么全部不完成。一致性(Consistency):事务必须始终保持系统处于一致性。隔离性(Isolation):隔离执行事务,使它们好像是...原创 2020-03-31 22:43:38 · 477 阅读 · 0 评论 -
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 · 339 阅读 · 1 评论 -
java常用函数式接口 /Supplier供给型接口/Consumer消费者接口/Predicate断言型接口/Function函数接口
函数式接口在Java中是指:有且仅有一个抽象方法的接口。函数式接口,适用于函数式编程场景的接口。而Java中的函数式编程体现就是Lambda,所以函数式接口就是可以适用于Lambda使用的接口。只有确保接口中有且仅有一个抽象方法,Java中的Lambda才能顺利地进行推导。格式// 只要确保接口中有且仅有一个抽象方法即可:修饰符 interface 接口名称 {public abstr...原创 2020-03-26 21:16:39 · 1330 阅读 · 0 评论 -
【超详】Java中的元数据 / 元数据分类/为什么需要元数据?/元数据管理技术
一、元数据分类:1.业务元数据主要包括业务术语、信息分类、指标定义、业务规则等。2,技术元数据数据结构、数据处理细节方面的技术化描述,主要包括源系统接口规范、数据仓库结构的描述(接口信息、表信息、程序信息等)以及经营分析数据处理过程的描述等。3.管理元数据主要包括人员角色、岗位职责、管理流程等信息。4.安全元数据主要包括访问安全、权限控制、分级管理、隐私控制、流程约束...原创 2020-03-25 10:40:05 · 1273 阅读 · 0 评论 -
LeetCode:1.最大乘积
Leetcode :数组Diffculty:空间复杂度 / 数组 / long题目:给定一个无序数组,包含正数、负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度:O(n),空间复杂度:O(1)输入描述:输入共2行,第一行包括一个整数n,表示数组长度第二行为n个以空格隔开的整数,分别为A1,A2, … ,An输出描述:满足条件的最大乘积去最大乘数有两种可能...原创 2020-03-24 16:28:04 · 451 阅读 · 0 评论 -
【面试高频】MySQL数据库索引是什么? 数据库索引如何创建?数据库的三范式是什么?如何做 MySQL 的性能优化? MySQL 的行锁和表锁?为什么索引提高检索速度?数据库的事务隔离?数据库索引的种
首先我们来说一下MySQL数据库-数据库操作系统:数据库操作系统(DBMS)的组成数据库DB表 TABLE(列 Column)数据 dataSQL的分类(CRUD):DDL:数据库定义语言-DataBase Definition LanguageDML:数据库操作语言-DataBase Manipulation LanguageDQL:数据库查询语言-DataBase Quer...原创 2020-03-24 09:15:07 · 271 阅读 · 0 评论 -
【面试高频】TCP三次握手、四次挥手【为什么建立连接协议是三次握手,而关闭连接却是四次握手?/为什么TIME_WAIT状态还需要等2MSL后才能返回到CLOSED状态?/如果已经建立连接,但是客户端】
三次握手第一次握手:在建立连接时,客户端发送SYN包(SYN=1)到服务器, 并进入了SYN_SENT状态,等待服务端的确认;第二次握手:服务端接收到SYN包后,必须确认客户端的SYN, 同时自己也发送一个SYN包,即SYN+ACK包,此时服务端进入了SYN_RCVD状态;第三次握手:客户端收到服务端的SYN+ACK包,向服务端发送一个确认包ACK, 此包发送完毕后,...原创 2020-03-23 10:32:23 · 1031 阅读 · 0 评论 -
java中的反射!!!
反射:将类的各个组成部分封装为其他对象,这就是反射机制。被视为动态语言的关键,可以在运行时获取任意类的对象,操作任意对象的属性,可以调用任意对象的方法具有共同特征的称为一类事物。好处:可以在程序运行过程中,操作这些对象。可以解耦,提高程序的可扩展性。获取Class对象的方式:1. Class.forName(“全类名”):将字节码文件加载进内存,返回Class对象。多用于配置文...原创 2020-03-21 09:47:00 · 218 阅读 · 1 评论 -
java中的锁——自旋锁
【笔记】java中的所有锁自旋锁自旋锁(spinlock):是指当一个线程在获取锁的时候,如果锁已经被其它线程获取,那么该线程将循环等待,然后不断的判断锁是否能够被成功获取,直到获取到锁才会退出循环。如何实现自旋锁public class SpinLock { private AtomicReference<Thread> cas = new AtomicRefer...原创 2020-03-19 16:22:09 · 888 阅读 · 0 评论 -
java中的锁——偏向锁 / 轻量级锁 / 重量级锁
【笔记】java中的所有锁锁的状态总共有四种:无锁状态、偏向锁、轻量级锁和重量级锁。随着锁的竞争,锁可以从偏向锁升级到轻量级锁,再升级的重量级锁(但是锁的升级是单向的,也就是说只能从低到高升级,不会出现锁的降级)。锁的状态是通过对象监视器在对象头中的字段来表明的。JDK 1.6中默认是开启偏向锁和轻量级锁的。锁膨胀:从轻量锁膨胀到重量级锁是在轻量级锁解锁过程发生的。四种状态会随着竞争的情...原创 2020-03-19 16:21:42 · 725 阅读 · 0 评论 -
java中的锁——分段锁
【笔记】java中的所有锁ConcurrentHashMap是由Segment数组结构和HashEntry数组结构组成。Segment是一种可重入锁ReentrantLock,在ConcurrentHashMap里扮演锁的角色,HashEntry则用于存储键值对数据。一个ConcurrentHashMap里包含一个Segment数组,Segment的结构和HashMap类似,是一种数组和链表结...原创 2020-03-19 14:20:43 · 5715 阅读 · 0 评论 -
java中的锁——乐观锁 / 悲观锁
【笔记】java中的所有锁一、悲观锁总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁(共享资源每次只给一个线程使用,其它线程阻塞,用完后再把资源转让给其它线程)。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。Java中synchronized和Reentra...原创 2020-03-19 14:08:07 · 601 阅读 · 0 评论 -
IDEA是如何追源码?
首先我们再编译器上把我们要追源码的单词打出来。第二步 在前面打断点。第三步,光标在其单词上面,右击最后:我们要的源码就出来啦~...原创 2020-03-19 13:35:10 · 1030 阅读 · 1 评论 -
java中的锁——互斥锁 / 读写锁
【笔记】java中的所有锁一、互斥锁互斥锁:一次最多只能有一个线程持有的锁。如Java的Lock共享资源的使用是互斥的,即一个线程获得资源的使用权后就会将该资源加锁,使用完后会将其解锁,如果在使用过程中有其他线程想要获取该资源的锁,那么它就会被阻塞陷入睡眠状态,直到该资源被解锁才会被唤醒,如果被阻塞的资源不止一个,那么它们都会被唤醒,但是获得资源使用权的是第一个被唤醒的线程,其它线程又...原创 2020-03-19 12:52:52 · 1496 阅读 · 0 评论 -
java中的锁——独享锁 / 共享锁 / AQS
【笔记】java中的所有锁独享锁与共享锁也是通过AQS来实现的,通过实现不同的方法,来实现独享或者共享。对于Synchronized而言,是独享锁。一、独享锁独享锁:该锁每一次只能被一个线程所持有。【此处追ReentrantReadWriteLock源码】ReentrantReadWriteLock 有两把锁:ReadLock和WriteLock,可知,一个读锁****一个写锁,...原创 2020-03-19 12:35:23 · 1188 阅读 · 0 评论 -
java中的锁——可重入锁 / 不可重入锁
【笔记】java中的所有锁一、可重入锁可重入锁是指:可重复可递归调用的锁,在外层使用锁之后,在内层仍然可以使用,并且不发生死锁(前提得是同一个对象或者class)。优点:避免死锁synchronizedvoidsetA()throwsException{Thread.sleep(1000);setB();}synchronizedvoidsetB()throwsExceptio...原创 2020-03-19 11:21:24 · 1538 阅读 · 0 评论 -
java中的锁——公平锁 / 非公平锁
一、公平锁公平锁是指多个线程按照申请锁的顺序来获取锁。优点:等待锁的线程不会饿死。缺点:整体吞吐效率相对非公平锁要低,等待队列中除第一个线程以外的所有线程都会阻塞,CPU唤醒阻塞线程的开销比非公平锁大。作用:严格按照线程启动的顺序来执行的,不允许其他线程插队执行。非公平锁非公平锁是指多个线程获取锁的顺序并不是按照申请锁的顺序,有可能后申请的线程比先申请的线程优先获取锁。有可能,会造成优...原创 2020-03-19 11:02:41 · 1005 阅读 · 0 评论 -
超详 java中全部的锁
java种有15种锁:1.公平锁 / 非公平锁2.可重入锁 / 不可重入锁3.独享锁 / 共享锁4.互斥锁 / 读写锁5.乐观锁 / 悲观锁6.分段锁7.偏向锁 / 轻量级锁 / 重量级锁8.自旋锁...原创 2020-03-19 11:02:12 · 485 阅读 · 0 评论 -
Redis(一)
先建立一个 maven 工程,在工程的 pom.xml 文件中加入 Jedis 的依赖引用。为了方便测试,还加入了 Junit 依赖。文件内容如下。<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://w...原创 2020-03-16 00:37:50 · 131 阅读 · 0 评论 -
【复习】 java中的 IO流(一)
IO流基本概念:IO流用来处理设备之间的数据传输(内存和硬盘之间,相当于输入输出流在他们之间建立了一个管道,管道建立肯定要占用资源,所以我们使用输入输出流之后需要关闭流)Java对数据的操作是通过流的方式,流的分类按操作类型可以分为两种:字节流:字节流可以操作任何数据类型(文本,图片,音频,视频等),在计算机中任何数据都是以字节的形式存储(一般类以 Stream结尾)字符流:字符流只...原创 2020-03-15 12:27:31 · 232 阅读 · 0 评论 -
Java异常架构/ Throwable体系/Java异常关键字/Java常见异常信息
异常概念 :指的是程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止在Java等面向对象的编程语言中,异常本身是一个类,产生异常就是创建异常对象并抛出了一个异常对象。Java处理异常的方式是中断处理。Java异常架构Throwable体系: * Error:严重错误Error,无法通过处理的错误,表示运行应用程序中出现了严重的错误。 * 特点:此类错误一般表示代...原创 2020-03-12 12:20:32 · 224 阅读 · 0 评论 -
java —— 数组(二)【利用数组找出最大数,利用数组找出最小数, 冒泡排序,求Fibonacci数列前N个数】
数组的入门性学习 ( 点击 )接下来呢这篇写的就是关于数组的一些小demo用于理解。ArrayMaxDemo1 利用数组找出最大数ArrayMinDemo2 利用数组找出最小数MulArrayDemo03 冒泡排序求Fibonacci数列前N个数ArrayMaxDemo1 利用数组找出最大数:public class ArrayMaxDemo1 { public...原创 2020-02-20 12:04:12 · 440 阅读 · 0 评论 -
java —— 数组(一)
概念:数组是一些具有相同类型的数据的集合。(数组中数据按照一定的顺序排列存放,用不同的序号即下标来区分数组中各元素)声明数组有两种方式:(一维数组)数组元素类型 数组名[];数组元素类型[] 数组名;二维数组声明的方式和一维数组的类似,动态初始化:数据类型 数组名[ ] [ ];数组名 = new 数据类型 [行的个数] [列的个数];声明并初始化数组:数据类...原创 2020-02-20 11:15:21 · 187 阅读 · 0 评论 -
java流程控制【全】
java中有 条件语句,多分支语句,循环语句,跳转语句。1)for循环2)if else 的学习3)while - do while的学习4)switch的学习5)continue的学习6) break的学习7) return的学习...原创 2020-02-20 10:34:25 · 158 阅读 · 0 评论 -
java流程控制——【switch语句 / 根据用户的输入显示相依的信息完成 用switch/】
switch的语法格式: switch(表达式){ case 常量1: 语句块1; break; case 常量2; 语句块2; break; ... case 常量n; 语句块n; break; default: default语句块; ...原创 2020-02-19 19:48:58 · 869 阅读 · 0 评论 -
java流程控制——【if else 】【题:定义变量保存一个数,判断是否能被3整除或能被7整除 / 参加运动会根据时间和性别做出筛选 / 根据淡季旺季得出票价/手机号验证程序Java代码】
if:无论是否满足条件都会向下执行,直到程序结束else if 满足一个条件就会停止执行. * if else语句格式: * if else(关系表达式1) { * 语句体1; * }else if(关系表达式2) { * 语句体2; * }else if(关系表达式3) { * 语句体3; * } * ... * else {...原创 2020-02-19 19:02:57 · 978 阅读 · 0 评论 -
java流程控制——【return】
return使用在方法,表示跳出所在的方法class returnTest01 { public static void main(String[] args) { for (int i = 0; i < 5 ; i++) { if(i == 3){ return;//表示退出当前的方法,下面的代码不会执...原创 2020-02-18 15:03:04 · 193 阅读 · 0 评论 -
java中print、println、printf三者的区别
print ————> 输出不换行class printDemo { public static void main(String[] args) { System.out.print("你"); System.out.print("好"); }}控制台的输出:你好println ————> 结果输出换行class ...原创 2020-02-17 13:33:16 · 436 阅读 · 0 评论