Java
程序小白-M
如果你真的愿意去努力,你人生最坏的结果,也不过是大器晚成。
展开
-
Java-The maximum number of Cell Styles was exceeded. You can define up to 64000 style in a .xlsx
java.lang.IllegalStateException: The maximum number of Cell Styles was exceeded. You can define up to 64000 style in a .xlsx Workbook原创 2022-07-06 15:50:54 · 4321 阅读 · 1 评论 -
Java-异常org.springframework.beans.factory.BeanCreationNotAllowedException
BeanCreationNotAllowedException原创 2022-05-24 09:42:52 · 8278 阅读 · 0 评论 -
Java-异常org.springframework.beans.factory.BeanDefinitionStoreException
BeanDefinitionStoreException原创 2022-05-20 10:59:16 · 9120 阅读 · 0 评论 -
Java8-Optional.ofNullable使用
Optional类是Java8为了解决null值判断问题,使用Optional类可以避免显式的null值判断(null的防御性检查),避免null导致的NPE(NullPointerException)。示例:public static void main(String[] args) { TestDemo testDemo = new TestDemo(); getCount(testDemo);}private static void getCount(TestDemo testDemo)原创 2020-08-03 17:42:29 · 51715 阅读 · 0 评论 -
Java-持久化的理解
一、什么是持久化在《精通 Hibernate:Java 对象持久化技术详解(第2版)》中看到过一个很好的解释狭义的理解,“持久化”仅指把域对象永久保存到数据库中;广义的理解,“持久化”包括和数据库相关的各种操作。保存:把域对象永久保存到数据库中。更新:更新数据库中域对象的状态。删除:从数据库中删除一个域对象。加载:根据特定的OID,把一个域对象从数据库加载到内存中。查询:根据特定的查询条件,把符合查询条件的一个或多个域对象从数据库加载到内存中。如图,截自《精通 Hibernate:Java原创 2020-08-01 11:12:59 · 2118 阅读 · 0 评论 -
Java-import机制、IDEA设置
一、Java导入机制1、单类型导入实例:import java.io.File;工作原理:仅导入一个public类或者接口优点:提高编译速度;避免命名冲突缺点:import语句看起来很长2、按需类型导入实例:import java.io.*;工作原理:仅导入当前类需要使用的类,不会降低代码执行效率,但会影响代码的编译速度优点:import语句简洁些缺点:影响编译速度;命名易冲突二、IDEA去除自动导入包时转变为星号Settings > Editor > Code Styl原创 2020-06-28 14:59:58 · 1105 阅读 · 0 评论 -
Java8-Map
Map新增的方法1、getOrDefault(Object key, V defaultValue)如果Map中存在该key,则返回键对应的值。如果不存在,则会返回设置的默认值。private static void getOrDefaultTest() { Map<String, String> map = new HashMap<>(); map.put("A", "1"); String value = map.getOrDefault("B", "2"); Sy原创 2020-06-19 20:36:23 · 285 阅读 · 1 评论 -
Java-各种类型的等于比较
Integer、Long、Float、Double、BigDecimal、String 等于的比较方式public static void main(String[] args) { intCompare(); longCompare(); floatCompare(); doubleCompare(); bigDecimalCompare(); stringCompare();}public static void intCompare() { int int1 = 1; int原创 2020-06-16 17:12:56 · 222 阅读 · 0 评论 -
Java8-Stream count anyMatch allMatch noneMatch
一、方法long count();返回这个集合流元素的长度boolean anyMatch(Predicate<? super T> predicate);返回判断条件里任意一个元素成功,即为trueboolean allMatch(Predicate<? super T> predicate);返回判断条件里所有元素成功,即为trueboolean noneMatch(Predicate<? super T> predicate);返回判断条件里原创 2020-06-06 17:32:30 · 216 阅读 · 0 评论 -
Java8-LocalDate、LocalTime、LocalDateTime、ZonedDateTime
java.util.Date,Date的功能很强大包含日期、时间,还有毫秒数,对于时间的一些操作还需配合Calendar写一些代码,月份从0开始,一月是0,十二月是11,java.util.Date和SimpleDateFormatter都不是线程安全的;java.time.LocalDate、LocalTime和LocalDateTime,java.time.LocalDate月份和星期都改成了enum,LocalDate和LocalTime,不但线程安全,而且不能修改。LocalDate只包含日期,L原创 2020-05-28 17:34:38 · 320 阅读 · 0 评论 -
Java8-java.time.LocalTime.parse
一、LocalTime.parse(CharSequence text)1、声明public static LocalTime parse(CharSequence text)2、参数text:要解析的文本,例如:13:14:20,不是null。3、返回值当地时间,不是null。4、异常DateTimeParseException:无法解析文本时抛该异常5、示例public static void main(String[] args) { LocalTime time = Local原创 2020-05-27 16:28:00 · 2559 阅读 · 0 评论 -
Java-java.lang.IllegalStateException: RequestHeader.value() was empty on parameter 0
spring cloud 项目本地无法启动,环境上可以正常启动,错误日志如下2020-05-26 15:13:23,275 WARN [main] impl.Jdk14Logger (Jdk14Logger.java:91) - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyEx原创 2020-05-26 15:38:05 · 2041 阅读 · 1 评论 -
Java-集合最大容量
一、List最大容量1、ArrayList:内部是数组,上限是Integer.MAX_VALUE-82、LinkedList:内部是链表,理论上无上限二、Set最大容量1、HashSet:上限是1 << 30三、Queue最大容量1、PriorityQueue:上限是Integer.MAX_VALUE - 8四、Map最大容量1、HashMap:上限是1 << 30但实际应用中都不会这么大,比如List存放的内容在内存中,而虚拟机的内存是有上限的,所以真正计算的应该原创 2020-05-12 11:11:53 · 9002 阅读 · 0 评论 -
Java-transient关键字
一、初识transient关键字1、概念将不需要序列化的属性前添加关键字transient,序列化对象的时候,这个属性就不会被序列化。2、实例public class Test { public static void main(String[] args) throws IOException, ClassNotFoundException { write();...原创 2020-03-27 15:26:43 · 155 阅读 · 0 评论 -
Java-final关键字
一、修饰类1、语法public final class 类名{}2、特点final修饰的类表示这个类不能被继承final类中的成员变量可以按需设计为finalfinal类中的成员方法都会被隐式的指定为final方法二、修饰方法1、语法public final void method(){}2、特点final修改的方法,子类不能去重写一个类中private方法会隐式的被指...原创 2020-03-24 13:55:50 · 144 阅读 · 0 评论 -
Java-static关键字
一、修饰变量、修饰方法1、语法修饰变量:static 数据类型 变量名修饰方法:【访问权限修饰符】 static 方法返回值 方法名(参数列表)2、特点static修饰的变量或者方法是独立于该类的任何对象,这些变量和方法不属于任何一个实例对象,而是被类的实例对象所共享。在类被加载的时候,就会去加载被static修饰的部分。被static修饰的变量或者方法是优先于对象存在的,也就是说当一...原创 2020-03-23 11:43:03 · 106 阅读 · 0 评论 -
Java-面向对象基础
一、继承二、抽象三、封装四、多态五、接口原创 2020-02-19 12:05:38 · 213 阅读 · 0 评论 -
Java-内存回收(选择题)
下列哪些语句关于内存回收的说明是正确的()A、程序员必须创建一个线程来释放内存。B、内存回收程序负责释放无用内存。C、内存回收程序允许程序员直接释放内存。D、内存回收程序可以在指定的时间释放内存对象答案选BA:垃圾回收程序是一般是在堆上分配空间不够的时候会自己进行一次GC,程序员不需要也不能主动释放内存。B:Java的内存释放由垃圾回收程序来进行释放C:在Java里,内存的释放由垃...原创 2019-12-24 14:04:26 · 5387 阅读 · 0 评论 -
Java-构造器|构造方法|构造函数
一、概念特殊的方法,作用就是用来为对象初始化对象信息,不是用来创建对象,在Java类文件中,至少要有一个以上的构造器,构造器=构造方法=构造函数,他们指的是一个东西二、定义 修饰符 类名([参数列表]){ .... }构造器名必须与类名相同,构造器没有返回值,不需要void,可以写return但是不必要三、使用构造器不能和static,fianl,abstract一起使用,只...原创 2019-12-17 15:55:53 · 313 阅读 · 0 评论 -
Java-反射
一、区别获取类的字段:getFields()和getDeclaredFields()getFields():获得某个类的所有的公共(public)的字段,包括父类中的字段。getDeclaredFields():获得某个类的所有声明的字段,即包括public、private和proteced,但是不包括父类的申明字段。获取类的方法:getMethods()和getDeclaredMetho...原创 2019-12-12 16:46:01 · 71 阅读 · 0 评论 -
Java-String.format()
String类的format()方法用于创建格式化的字符串以及连接多个字符串对象。两种重载形式:format(String format, Object… args) //新字符串使用本地语言环境,制定字符串格式和参数生成格式化的新字符串。format(Locale locale, String format, Object… args) //使用指定的语言环境,制定字符串格式和参数生成格式...原创 2019-10-29 15:54:37 · 385 阅读 · 0 评论 -
Java-多线程-创建线程
通过实现 Runnable 接口实例public class TestThread { public static void main(String[] args) { RunnableDemo r1 = new RunnableDemo("Thread-1"); r1.start(); RunnableDemo r2 = new Run...原创 2019-09-29 15:39:16 · 86 阅读 · 0 评论 -
Java-List转String、String转List
添加依赖<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.7</version></dependency>代码:public stati...原创 2019-07-26 17:41:00 · 512 阅读 · 0 评论 -
Java8 ArrayList之forEach
最近使用Java8、顺便整理自己学到的一些一、用法常用写法for (String str : list){ System.out.println(str);}Java8中list.forEach(str-> System.out.println(str));list.forEach(str-> {});//{}中可以写逻辑代码看上去更简洁二、效率public...原创 2019-06-04 11:04:42 · 7115 阅读 · 2 评论 -
Java8-Runnable、排序
public static void main(String[] args) { //1、用lambda表达式实现Runnable //Java 8之前实现Runnable new Thread(new Runnable() { @Override public void run() { System.out.println("Before Java8, new Thread!...原创 2019-09-24 11:27:26 · 1336 阅读 · 0 评论 -
Java8-List与String互转
一、StringToListpublic static void main(String[] args) { String string= "小学-初中-高中-大学-硕士-博士"; List<String> list = Arrays.asList(string.split("-")).stream().map(s -> String.format(s.trim())).c...原创 2019-09-23 11:21:30 · 2583 阅读 · 0 评论 -
Java-异常org.springframework.beans.factory.BeanCreationException
一、异常原因org.springframework.beans.factory.BeanCreationException: Error creating bean with name此异常为:注入bean失败异常。能够导致bean注入失败的原因包括以下几种但不限于这几种:1、对应的bean没有添加注解;2、对应的bean添加注解错误,引入错误包,必填项等;3、选择错误的自动注入方法等。...原创 2019-08-30 15:45:12 · 364 阅读 · 0 评论 -
Java-happen-before规则
程序次序规则:一个线程内,按照代码顺序,书写在前面的操作先行发生于书写在后面的操作;锁定规则:在监视器锁上的解锁操作必须在同一个监视器上的加锁操作之前执行。volatile变量规则:对一个变量的写操作先行发生于后面对这个变量的读操作;传递规则:如果操作A先行发生于操作B,而操作B又先行发生于操作C,则可以得出操作A先行发生于操作C;线程启动规则:Thread对象的start()方法先行发生...原创 2019-06-27 20:44:13 · 85 阅读 · 0 评论 -
Java-synchronized、volatile、lock
一、概念synchronized 可用来给对象和方法或者代码块加锁,当它锁定一个方法或者一个代码块的时候,同一时刻最多只有一个线程执行这段代码。当两个并发线程访问同一个对象object中的这个加锁同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块volatile 是一个类型修饰符,作用是作为指令关键字,确保本条指令不会因编译器的优化而...原创 2019-06-24 17:57:31 · 146 阅读 · 0 评论 -
Java-多进程与多线程
一、概念多进程:在同一个时间里,同一个计算机系统中如果允许两个或两个以上的进程处于运行状态,便是多进程,也称多任务。现代的操作系统几乎都是多任务操作系统,能够同时管理多个进程的运行。多线程:线程是一个轻量级的子进程,是最小的处理单元;多线程是一种执行模型,它允许多个线程存在于进程的上下文中,以便它们独立执行但共享其进程资源。二、区别数据共享、同步:多进程:数据是分开的,共享复杂,需要用I...原创 2019-06-23 22:10:18 · 167 阅读 · 0 评论 -
Java-进程与线程
一、概念进程:进程是正在运行的程序的实例,是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。线程:线程是操作系统能够进行运算调度的最小单位,一个进程可以有很多线程,是进程中的实际运作单位二、区别地址空间:进程之间是独立的地址空间;同一进程的线程共享该进程的地址空间执行过程:进程有独立程序运行的入口;线程不能独立执行需要依存在应用程序中资源开销:进程执行开销大,但是能很好的进行...原创 2019-06-22 20:09:57 · 69 阅读 · 0 评论 -
Java-设计模式-单例模式
看到一个面试题、java单例模式的实现,懒汉、饿汉?所以思考学习并整理了下单例模式、在运行期间,保证某个类只创建一个实例,保证一个类仅有一个实例,并提供一个访问它的全局访问点。一、举例public class SingleObject { private String name; //创建 SingleObject 的一个对象 private static Sing...原创 2019-06-21 17:40:40 · 72 阅读 · 0 评论 -
Java8 Stream Collectors
Collectors 类实现了很多归约操作,例如将流转换成集合和聚合元素。返回列表、字符串、或产生统计结果的收集器实例如下:static class Student { private String address; private String name; private Integer age; public Stude...原创 2019-06-11 19:05:38 · 233 阅读 · 0 评论 -
Collection之List---subList
Collection之List—subListJava中一些处理分隔的方法,例如subString—String;subList—List;subMap—Map;subSet—Set;这里学习并整理了一下关于subList的使用一、subList仅返回一个list的部分视图List subList(int fromIndex, int toIndex);实例:public static...原创 2019-06-03 19:46:45 · 783 阅读 · 0 评论 -
Java8 Stream
Java 8 添加了一个新的抽象称为流Stream,一个来自数据源的元素队列并支持聚合操作,不会存储元素,而是按需计算。简单使用Stream提供的新方法forEach、map、filter、limit、sorted、collectpublic static void main(String[] args) { forEachTest(); mapTest(); filterTest();...原创 2019-06-06 16:40:24 · 93 阅读 · 0 评论 -
为什么使用枚举?
为什么使用枚举?一、代码安全规范了参数的形式、调用时类型取值范围确定,不用考虑类型的不匹配、显式的替代了int型参数可能带来的模糊概念、减少程序中因为类型引发的问题二、耦合性低、扩展性高便于增加类别,与原代码的耦合性低;相比较于定义常量,扩展性更高三、编码专业性合理的情况使用合理的方法注:仅个人总结深入理解Java枚举类型(enum)可阅读https://blog.csdn.ne...原创 2019-05-29 14:04:54 · 1061 阅读 · 0 评论 -
ArrayList和LinkedList的区别
ArrayList和LinkedList的区别一、数据结构1、ArrayList是Array(动态数组)的数据结构;2、LinkedList是Link(链表)的数据结构;二、效率1、ArrayList对List随机访问(get和set操作)效率比LinkedList高,因为LinkedList是线性的数据存储方式,访问需要移动指针从前往后依次查找,越靠后效率越低。2、LinkedLis...原创 2019-05-31 23:24:32 · 59 阅读 · 0 评论 -
Java-字符串、日期、毫秒相互转换
简单写个方法方便自己以后取值字符串转日期、毫秒;毫秒转日期、字符串;public static void main(String[] args) { String dateStr = "2019-06-05 12:00:00"; Long time = 1559793600000L; System.out.println("字符串转日期:" + dateStr + " ...原创 2019-06-05 11:08:51 · 3122 阅读 · 0 评论 -
Java-基本数据类型各占多少字节
整数型:byte 1字节short 2字节int 4字节long 8字节浮点型:float 4字节double 8字节字符型:char 2字节布尔型:boolean 1字节一个字节等于8位 1byte = 8bit...原创 2019-07-10 09:46:10 · 248 阅读 · 0 评论 -
Java-Json字符串转List
List<T> list=JSONArray.parseArray("",T.class);其中T为要转为的list其中的对象public class Test { public static void main(String[] args) { String str = "[{\"name\":\"zym\"},{\"name\":\"sx\"}]";...原创 2019-08-29 20:17:13 · 1183 阅读 · 0 评论