java
Wheat_Liu
戒骄戒躁,学无止境
展开
-
Socket编程
最近看了一下socket编程,写了两套客户端服务端的demo,原理后续会补上,先上代码:Bio Server:package com.lcy.jdk;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.ServerSocket;imp...原创 2019-10-30 15:41:07 · 198 阅读 · 0 评论 -
String字符串详解
String字符串1、字符串创建过程String s1 = "abc";String s2 = new String("abc");String s3 = s1.intern();String s4 = s2.intern();String s5 = s1+"def";System.out.println(s1 == s2);System.out.println(s1 == s3);System.out.println(s1 == s4);s1创建过程:jvm会在之前编译类文件时直接将原创 2020-05-12 15:07:23 · 581 阅读 · 0 评论 -
java线程池实现生产者消费者模式
本人并发小白,如果有可以优化的地方欢迎评论交流~题目如下: 15个生产者生产1000条数据(从1开始,每生产一条加1),并向消息队列中存放字符串(“第m个生产者生产数据n”),同时3个消费者消费数据,并将数据n累加最后输出代码如下:生产者:package com.lcy.thread.parta;import java.util.concurrent.LinkedBlocking...原创 2020-01-08 15:10:03 · 3703 阅读 · 5 评论 -
使用阿里jar包格式化json失败的解决办法
病灶可能不太一样,只记录一下自己的问题:前台给后台的json字符串中有中括号数组时,自动装配时抛出其中一条异常:com.alibaba.fastjson.jsonException:not match:-=Can not deserialize instance of out of START_ARRAY token解决办法:中括号数组的属性值改为使用ArrayList<数组...原创 2018-08-23 13:29:43 · 822 阅读 · 0 评论 -
浮点数运算出现误差的解决方案
直接上代码public static void main(String[] args){ Double a = 7.77; Double b = 3.33; System.out.println(a-b); System.out.println(new BigDecimal(a.toString()).subtract(new BigDecimal(b.toStrin...原创 2018-09-12 15:34:25 · 1774 阅读 · 0 评论 -
java.net.SocketTimeoutException: Read timed out的解决办法
产生问题的环境:ssm+mysql+gridFS+tomcat问题代码段:public void write(OutputStream os, InputStream is) { try (BufferedOutputStream bos = new BufferedOutputStream(os); BufferedInputStream bis = new BufferedInp...原创 2018-12-03 13:38:15 · 191050 阅读 · 12 评论 -
分片预览
原文:java处理苹果浏览器safari无法播放视频流(Accept-Ranges)根据自己的需求稍微改了一下private void sendVideo(HttpServletRequest request, HttpServletResponse response, File file) { long contentLength = randomFile.getLength();...原创 2019-01-23 15:28:08 · 323 阅读 · 0 评论 -
java.lang.NumberFormatException: multiple points解决办法
就跟错误提示一样,类型转换时,被转换的对象有多个小数点造成的错误代码如下:public static void main(String[] args) { Double.valueOf("1.1.1"); }解决方案:自己检查一下被转换的对象数据符不符合Double......原创 2019-04-18 10:28:23 · 17573 阅读 · 5 评论 -
Java并发编程——基础概念
1、内存模型JMM(Java Memory Model) 我们以一个最简单的例子开始int i = 5;i = i + 1; i=i+1这条语句,虽然看起来只有一步,但是从微观的角度可以将它分解为以下几步 (1)从内存中读取i=5,并复制到cpu缓存中 (2)将cpu缓存中i的值+1,现在cpu缓存中i=6,而内存中i...原创 2019-09-10 14:24:42 · 189 阅读 · 0 评论