![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
豆奶yujun
学习永无止境,好的学习方法和乐观的学习态度,会让我们爱上学习!
展开
-
Http之HttpURLConnection-POST发送请求(multipart/form-data)
Http之HttpURLConnection-POST发送文件请求概述常见的Content-Type类型POST请求POST请求(文件+参数)概述本文章只编写http使用HttpURLConnection发送post请求,包括两方面1、普通post请求()2、带有参数和文件的post请求常见的Content-Type类型1、application/x-www-form-urlencoded最常见的 POST 提交数据的方式,原生Form表单,默认为application/x-www-form-原创 2020-10-22 09:06:36 · 14651 阅读 · 3 评论 -
你会使用Gson实现序列化以及反序列化吗?
如何使用Gson,需要注意些什么?1、如何创建1、如何创建使用 new 关键字直接创建:Gson gson = new Gson()由 GsonBuilder 对象构建:Gson gson = new GsonBuilder().create()两种创建方式在进行序列化与反序列操作时行为都是一样的,但GsonBuilder创建的Gson允许进行额外的行为定制。GsonBuilder设置Column 1Column 2setVersion(double)指明版本号时有效,设置原创 2020-10-30 15:18:57 · 732 阅读 · 0 评论 -
什么是浅拷贝?如何使用深拷贝
浅拷贝、深拷贝讲述引用类型基本类型值传递引用传递讲述在学习浅拷贝和深拷贝前,我们需要先了解什么是引用类型和基本类型。引用类型理解:引用类型的变量保存引用值,所谓的引用值就是对象所在内存空间的“首地址值”,通过对这个引用值来操作对象。常见的引用类型:类类型,接口类型、数组(eg:char[])、String类基本类型理解:基本类型的变量保存原始值,所以变量就是数据本身。常见的基本类型:byte、short、int、long、char、float、double、Boolean。值传递在方法的原创 2020-10-20 15:12:02 · 220 阅读 · 0 评论 -
return在try-catch-finally不同位置,返回值影响
return在try-catch-finally不同位置,返回值影响return语句不在finally中finally中有return语句finally中有异常抛出return语句不在finally中在catch或try中有renturn语句,则return语句在finally语句执行结束之后才执行,但finally并不能改变返回值,如: public static Integer test1() { int ret = 1; try {原创 2020-06-19 11:36:50 · 276 阅读 · 0 评论 -
40秒百万级数据查询和导出(重写迭代器Iterator/并行写入Excel)
前提 最近研究了在40秒左右导出百万数据,并防止内存溢出,导出的大致步骤:1、查询出数据 2、写入excel 3、下载其中下载与带宽有关,程序上就不做优化,主要在1、2两点上下功夫测试环境:测试数据106万条左右,字段11个查询数据方案一:采用jpa方式查询(即Hibernate),查询时间大概50秒左右。 舍弃 耗时原因:Hibernat...原创 2019-12-10 17:43:47 · 904 阅读 · 0 评论 -
集合初始大小及扩容算法
在项目编码时,创建集合的时候,尽量在创建时给定大小,节约资源?你知道为什么吗?有啥好处呢?下面我会就ArrayList、LinkedList、HashMap、HashSet一一介绍。(注:1.8jdk)一、ArrayList创建ArrayList的构造函数:ArrayList(); 不指定大小,默认为0。 ArrayList(int); ArrayList(Collection&l...原创 2019-10-17 16:21:28 · 1036 阅读 · 1 评论 -
java语法糖你了解吗?
定义 语法糖(Syntactic Sugar),也称糖衣语法,指在计算机语言中添加的某种语法,这种语法对语言本身功能来说没有什么影响,只是为了方便程序员的开发,提高开发效率。说白了,语法糖就是对现有语法的一个封装。Java其实是一个低糖语言。 解语法糖:语法糖的存在主要是方便开发人员使用。但其实,Java虚拟机并不支持这些语法糖。这些语法糖在编译阶段就会被还原成简...原创 2019-08-28 09:42:52 · 114 阅读 · 0 评论 -
Swagger2-Api与Validated基本用法
一、Swagger2-Api搭建swagger网址:https://blog.csdn.net/u013985664/article/details/80009274常用注解-@Api()用于类;表示标识这个类是swagger的资源-@ApiOperation()用于方法;表示一个http请求的操作-@ApiParam()用于方法,参数,字段说明;表示对参数的添加元数据(...原创 2019-07-23 15:46:07 · 2095 阅读 · 0 评论 -
ArrayList和LinkedList源码分析
参考书籍:《java编程的逻辑》ArrayList基本用法和原理方法:add、remove、isEmpty、size、get、indexOf(查找元素,有则返回索引位置,否则返回-1)、contains、set... 原理:有一个内部类elementData和一个整数size;public的内部操作都是对这两个进行操作。ArrayList是怎样动态调整容量的呢?看看下面的add方法...翻译 2019-07-25 17:43:28 · 106 阅读 · 0 评论 -
spEL表达式使用
spEL表达式SpEL(Spring Expression Language)是一种表达式语言,是一种可以与一个基于spring的应用程序中的运行时对象交互的东西;一种简化开发的表达式,通过使用表达式来简化开发,减少一些逻辑、配置的编写。 用法 SpEL有三种用法,一种是在注解@Value中;一种是XML配置;最后一种是在代码块中使用Expression。1、注解@Valu...原创 2019-07-24 13:36:55 · 1642 阅读 · 0 评论 -
quartz随tomcat启动而启动之Demo
本章描述的是定时任务(quartz)随服务器(tomcat)启动而启动的例子。1、web.xml的配置<servlet> <servlet-name>QuartzInitializer</servlet-name> <servlet-class>org.quartz.ee.servlet.QuartzInitializerSer...原创 2019-07-23 15:49:50 · 387 阅读 · 0 评论 -
Java ConcurrentModificationException异常原因和解决方法
在Vector、ArrayList在迭代的时候如果同时对其进行修改就会抛出java.util.ConcurrentModificationException异常。Vector、ArrayList都是继承父类AbstractList,下面以ArrayList为例:一、出现ConcurrentModificationException异常实例先看下面这段代码:public sta...转载 2019-05-07 11:34:54 · 362 阅读 · 0 评论