java
会长大的菜鸟
在校学生一枚,马上面临求职
展开
-
最详细的java思维导图
最详细的java思维导图史及特点及开发环境数据类型类型转换运算与进制转换语法结构与修饰符数组面向对象类Object类工具类包装类(封装类)数学相关类日期相关类String类StringBuilder类其他工具类正则表达式集合错误与异常File类Swing流线程反射注解栈与队列设计模式(内功心法)...转载 2020-10-16 13:36:18 · 12982 阅读 · 11 评论 -
Java序列化和反序列化为什么要实现Serializable接口
最近公司的在做服务化, 需要把所有 model 包里的类都实现 Serializable 接口, 同时还要显示指定 serialVersionUID 的值. 听到这个需求, 我脑海里就突然出现了好几个问题, 比如说:序列化和反序列化是什么?实现序列化和反序列化为什么要实现 Serializable 接口?实现 Serializable 接口就算了, 为什么还要显示指定 serialVersionUID 的值?我要为 serialVersionUID 指定个什么值?下面我们来一一解答这几个问题.转载 2020-10-14 09:51:31 · 85 阅读 · 0 评论 -
代码生成器配置
//代码生成器public class AutoCode { public static void main(String[] args) { //构建代码生成器对象 AutoGenerator mg = new AutoGenerator(); //配置策略 //全局配置 GlobalConfig gc = new GlobalConfig(); // 此处为本项目src所在路径(代码生成器输原创 2020-10-13 13:13:29 · 400 阅读 · 0 评论 -
Java常量池理解与总结
1.什么是常量用final修饰的成员变量表示常量,值一旦给定就无法改变!final修饰的变量有三种:静态变量、实例变量和局部变量,分别表示三种类型的常量。2.Class文件中的常量池在Class文件结构中,最头的4个字节用于存储魔数Magic Number,用于确定一个文件是否能被JVM接受,再接着4个字节用于存储版本号,前2个字节存储次版本号,后2个存储主版本号,再接着是用于存放常量的常量池,由于常量的数量是不固定的,所以常量池的入口放置一个U2类型的数据(constant_pool_co.转载 2020-10-12 17:44:27 · 586 阅读 · 0 评论 -
java容器
本文主要介绍JAVA中常见容器间的关系和主要区别。JAVA中的容器种类很多,且各有特点。为此特意进行学习研究,写下此文,作为一点总结。若有错误,欢迎拍砖。上图是JAVA常见的各个容器的继承关系,我们就顺着继承关系说一下各个接口或者类的特点吧。Iterable 接口Iterable是一个超级接口,被Collection所继承。它只有一个方法: Iterator iterator() //即返回一个迭代器迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该转载 2020-10-09 12:50:05 · 118 阅读 · 0 评论 -
基本类型和包装类型的区别
简介Java 的每个基本类型都对应了一个包装类型,比如说 int 的包装类型为 Integer,double 的包装类型为 Double。基本类型和包装类型的区别主要有以下 4 点1.包装类型可以为 null,而基本类型不可以它使得包装类型可以应用于 POJO 中,而基本类型则不行POJO:简单无规则的 Java 对象,只有属性字段以及 setter 和 getter 方法,示例如下。class Writer { private Integer age; private Strin转载 2020-08-14 16:45:08 · 312 阅读 · 0 评论 -
Beanutils.copyProperties( )用法
Beanutils.copyProperties( )用法一、简介: BeanUtils提供对Java反射和自省API的包装。其主要目的是利用反射机制对JavaBean的属性进行处理。我们知道,一个JavaBean通常包含了大量的属性,很多情况下,对JavaBean的处理导致大量get/set代码堆积,增加了代码长度和阅读代码的难度。二、用法: 如果你有两个具有很多相同属性的JavaBean,一个很常见的情况就是PO对象(持久对象)和Dto对象(传输对象)。传统的方式是使用类似下面的语句转载 2020-08-02 20:32:19 · 626 阅读 · 0 评论 -
浅淡时间戳
信息的发展随着时间的推移,就像一个活的有机体。对你来说,今年还有价值的信息没准过几年就没有任何意义了。这就是为何要在信息内容中添加时间戳的原因。但是如果你没有按照正确的格式显示时间戳,那么就会给用户的使用带来麻烦。1、绝对 Vs 相对时间戳现在,大部分网站中使用的时间戳整体上分为两类。即相对时间和绝对时间。前者指距离信息发布时间点的的相对时长,如***年、***月、***周、***日、***分钟以前。后者则强调信息发布的具体精确时间点。这两种格式在不同的场合下都有各自的用处。但是针对特定的情景究竟该作转载 2020-07-26 16:48:40 · 709 阅读 · 0 评论 -
序列化浅谈
序列化和反序列化是Java中最基础的知识点,也是很容易被大家遗忘的,虽然天天使用它,但并不一定都能清楚的说明白。我相信很多小伙伴们掌握的也就几句概念、关键字(Serializable)而已,如果深究问一下序列化和反序列化是如何实现、使用场景等,就可能不知所措了。在每次我作为面试官,考察Java基础时,通常都会问到序列化、反序列化的知识点,用以衡量其Java基础如何。当被问及Java序列化是什么?反序列化是什么?什么场景下会用到?如果不用它,会出现什么问题等,一般大家回答也就是几句简单的概念而已,有的工作好转载 2020-07-25 16:25:23 · 90 阅读 · 0 评论 -
String、StringBuffer与StringBuilder之间区别
感谢大佬:https://blog.csdn.net/itchuxuezhe_yang/article/details/89966303String StringBuffer StringBuilderString的值是不可变的,这就导致每次对String的操作都会生成新的String对象,不仅效率低下,而且浪费大量优先的内存空间 StringBuffer是可变类,和线程安全的字符串操作类,任何对它指向的字符串的操作都不会产生新的对象。每个StringBuffer对象都有一定的缓冲区容转载 2020-07-14 18:38:08 · 150 阅读 · 0 评论 -
“+=”和append的区别
首先感谢大佬https://segmentfault.com/a/1190000018238445?utm_source=tag-newestjava发布于 2019-02-21“+=”和append的区别是面试中出现频率较高的一个题目了,下面我们就来分析一下这两者的区别吧。首先看一下这段代码的结果:String s1 = “a”;String s2 = s1 + “b”;System.out.println(s2 == “ab”); // false输出结果是false;javap将其反转载 2020-07-14 17:11:22 · 1392 阅读 · 0 评论 -
Shiro学习配置
Shiro学习配置简介:Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码和会话管理。使用Shiro的易于理解的API,您可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。shiro实现认证Shiro.ini#用户[users]#用户zhang的密码是123,此用户具有role1和role2两个角色zhangsan=123,role1,role2wangwu2=123,role1,role3wangwu3=123,rol原创 2020-06-15 19:21:07 · 163 阅读 · 0 评论 -
java数据库原始连接
java数据库原始连接几种样式方法一(今天自己闲下来时候写的)public class Test { static String dirver = "com.mysql.jdbc.Driver"; static String user = "root"; static String password = "root"; static String url = "jdbc:mysql://localhost:3306/ssh??useSSL=true"; stat原创 2020-06-14 22:55:33 · 331 阅读 · 0 评论