
Java 基础
文章平均质量分 55
Java 基础
Ability Liao
学习&总结&分享
展开
-
ArrayList的实现原理
1. ArrayList概述: ArrayList是List接口的可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。 每个ArrayList实例都有一个容量,该容量是指用来存储列表元素的数组的大小。它总是至少等于列表的大小。随着向ArrayList中不断添加元素,其容量转载 2017-03-12 11:59:05 · 308 阅读 · 0 评论 -
jdk1.8中使用aspectjweaver报错 Invalid byte tag in constant pool 18
背景(1)jdk 1.8(2)aspectjweaver 1.6.10<dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>1.6.10</version></dependency>(3)在方法中使用jdk1.8新特性lambda表达式后,执行方法报错,报原创 2021-08-26 20:48:00 · 1581 阅读 · 0 评论 -
list for 循环报错 ConcurrentModificationException
list for循环报错 ConcurrentModificationException1、案例一 背景:下面代码执行报错 ConcurrentModificationExceptionfor (String s : list) { list.remove(s);}分析:(1)foreach方式遍历元素的时候,生成iterator,然后使用iterator遍历。在生成iterator的时候,会设置expectedModCount参数,初始值为list的个数,此时modCou...原创 2021-03-16 20:34:51 · 1282 阅读 · 0 评论 -
java中的transient关键字
我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,只要这个类实现了Serilizable接口,这个的所有属性和方法都会自动序列化。 然而在实际开发过程中,我们常常会遇到这样的问题,这个类的有些属性需要序列化,而其他属性不需要被序列化,诚然,你可以让这个类来实现...转载 2018-05-13 13:00:34 · 330 阅读 · 0 评论 -
JAVA中的浅复制与深复制
JAVA中浅复制与深复制1.浅复制与深复制概念(1)浅复制(浅克隆)被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象。换言之,浅复制仅仅复制所考虑的对象,而不复制它所引用的对象。 (2)深复制(深克隆)被复制对象的所有变量都含有与原来的对象相同的值,那些引用其他对象的变量将指向被复制过的新对象,而不再是原有的那些被引用的对象。换言之,深复制把要复制的对象所...转载 2018-05-13 12:34:02 · 351 阅读 · 0 评论 -
BeanUtils中copyProperties的使用
BeanUtils中copyProperties的作用是将一个对象中的属性值赋值(拷贝)给另一个对象中对应的属性。其中赋值成功的属性对应的属性名和属性类型必须相同,否则对应的属性值不会从一个对象赋值给另一个对象,但是此时不影响其他属性值的拷贝。1、实体类public class Model01 { private String name; private int age;原创 2017-12-07 12:46:50 · 2780 阅读 · 2 评论 -
Java核心技术点之动态代理
Java核心技术点之动态代理 本篇博文会从代理的概念出发,介绍Java中动态代理技术的使用,并进一步探索它的实现原理。由于个人水平有限,叙述中难免出现不清晰或是不准确的地方,希望大家可以指正,谢谢大家:)一、概述1. 什么是代理 我们大家都知道微商代理,简单地说就是代替厂家卖商品,厂家“委托”代理为其销售商品。关于微商代理,首先我们从他们那里买东西时通常转载 2017-11-27 12:22:39 · 285 阅读 · 0 评论 -
使用数据库连接池的好处
对于一个简单的数据库应用,由于对于数据库的访问不是很频繁。这时可以简单地在需要访问数据库时,就新创建一个连接,用完后就关闭它,这样做也不会带来什么明显的性能上的开销。但是对于一个复杂的数据库应用,情况就完全不同了。频繁的建立、关闭连接,会极大的减低系统的性能,因为对于连接的使用成了系统性能的瓶颈。 连接复用。通过建立一个数据库连接池以及一套连接使用管理策略,使得一个数据库连接可以得到高转载 2017-11-25 16:26:59 · 3224 阅读 · 0 评论 -
DruidDataSource的参考配置
以下是Druid连接池的参考配置,可根据不同的应用场景进行相应的修改:原创 2017-11-25 15:43:10 · 1447 阅读 · 0 评论 -
Druid 介绍及配置
Druid 介绍及配置1. Druid是什么?Druid是Java语言中最好的数据库连接池。Druid能够提供强大的监控和扩展功能。2. 在哪里下载druid正式版本下载:maven中央仓库: http://central.maven.org/maven2/com/alibaba/druid/ 3. 怎么获取Druid的源码Druid是一个开转载 2017-11-25 15:31:12 · 809 阅读 · 0 评论 -
访问页面时后台报错: 对实体 "XX" 的引用必须以 ';' 分隔符结尾
访问页面时后台报错:对实体 "XX" 的引用必须以 ';' 分隔符结尾(1)解决方案在变量"XX" 前加上“amp;”即可。(2)举例页面中含有如下a标签:client=341343" class="btn btn-primary btn-block">登录访问该页面时后台报错:对实体 "client" 的引用必须以 ';' 分隔符结尾。此时则需原创 2017-09-25 17:11:17 · 5635 阅读 · 0 评论 -
java文件读写操作指定编码格式
java文件读写操作指定编码格式读文件:BufferedReader从字符输入流中读取文本,缓冲各个字符,从而提供字符、数组和行的高效读取。可以指定缓冲区的大小,或者可使用默认的大小。大多数情况下,默认值就足够大了。通常,Reader 所作的每个读取请求都会导致对基础字符或字节流进行相应的读取请求。因此,建议用 BufferedReader转载 2017-09-08 15:43:35 · 1403 阅读 · 0 评论 -
Calendar获取年、月、日、时间
参考文献:http://blog.youkuaiyun.com/vicky_fish/article/details/9112343Java Calendar获取年、月、日、时间 Calendar c = Calendar.getInstance(TimeZone.getTimeZone("GMT+08:00")); //获取东八区时间 int year = c.转载 2017-07-09 23:56:11 · 8949 阅读 · 0 评论