Java
文章平均质量分 86
小强签名设计
真正牛逼的生活是既可以朝九晚五又可以浪迹天涯。
展开
-
Apache Commons 读写 CSV 文件
【代码】Apache Commons 读写 CSV 文件。原创 2024-07-01 10:36:32 · 616 阅读 · 0 评论 -
POI读取或导出Excel文件
maven依赖: <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> &a原创 2018-12-23 23:18:20 · 735 阅读 · 1 评论 -
Java代码常用功能实现总结(三)
上述是几种不同的方法来遍历目录下的文件,包括递归、栈和队列。通过递归的方法,可以在遇到子文件夹时自动进入子文件夹继续遍历;而栈和队列的方法通过维护一个待处理的文件集合,不断处理集合中的文件,可以实现相同的效果。确保在运行此代码之前,已经设置好Hadoop的相关配置,并且有权限对HDFS上的文件进行操作。此外,需要有一个编译Java的环境,并且确保已经添加了Hadoop的相关依赖库。方法之前,旧文件存在,并且没有其他进程正在使用该文件。同时,确保应用程序有足够的权限去更改文件名,并且目标路径存在。原创 2024-04-22 14:54:56 · 561 阅读 · 1 评论 -
MinIo 的操作与使用和避坑
尝试解决2:新建一个纯 Maven 项目。原创 2023-12-05 17:13:08 · 2250 阅读 · 1 评论 -
Java 操作阿里 OSS
【代码】读取阿里OSS的txt文件。原创 2023-11-15 16:02:12 · 854 阅读 · 0 评论 -
MyBatis简单例子快速入门
一、理解什么是MyBatis? MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架。 MyBatis 消除了几乎所有的 JDBC 代码和参数的手工设置以及对结果集的检索。 MyBatis 可以使用简单的XML 或注解用于配置和原始映射,将接口和 Java 的 POJO( Plain Old Java Objects,普通的Java 对象)映射成数据库中的记录。MyBATIS 目前提供了三种语言实现的版本,包括:Java、.NET以及Ruby。它提供的持久层框架包括SQL原创 2021-02-25 23:17:43 · 432 阅读 · 0 评论 -
Java面试总结二
1.arraylist和linkedlist的区别ArrayList是实现了基于动态数组的数据结构,而LinkedList是基于链表的数据结构;对于随机访问get和set,ArrayList要优于LinkedList,因为LinkedList要移动指针; 2.hashmap和hashtable的区别HashMap不是线程安全的,HashTable是线程安全的。HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许将null原创 2020-10-15 21:41:06 · 271 阅读 · 1 评论 -
Java执行Linux命令
API把要执行的命令作为exec方法的参数,返回一个Process对象代表命令执行的进程。由于执行完命令通常要获取输出显示出来,因此对执行命令并获取输出的过程封装为一个工具类:CommandUtilimport java.io.IOException;import java.io.InputStream;import java.util.Scanner;import java.uti...转载 2020-05-05 08:49:44 · 276 阅读 · 0 评论 -
Json解析1--Java构造和解析Json数据的两种方法详解
本文转载自http://www.cnblogs.com/lanxuezaipiao/archive/2013/05/23/3096001.html和https://www.cnblogs.com/lanxuezaipiao/archive/2013/05/24/3096437.html在http://www.json.org/上公布了很多JAVA下的json构造和解析工具,其中org.转载 2017-11-17 17:11:31 · 2782 阅读 · 1 评论 -
Java面试总结一
目录1.==和equals的区别2.同步与异步3.try catch finally 用法4.在void方法中使用return5.字符串异常:String index out of range: -1或-21.==和equals的区别(内容来自http://www.cnblogs.com/dolphin0520/p/3592500.html)在初学Java时,...原创 2017-10-24 09:29:53 · 503 阅读 · 0 评论 -
Json解析2--Gson解析详解
本文参考自:http://blog.csdn.net/axuanqq/article/details/51441590和http://blog.csdn.net/qxs965266509/article/details/42774691Gson是google解析Json的一个开源框架,同类的框架fastJson,JackJson等等,至于Gson与FastJson的对比,其实半斤八两的问题,不再赘...转载 2017-11-17 18:43:51 · 1038 阅读 · 0 评论 -
JAVA Socket编程学习9--Netty入门之Hello World!
内容来自(做了微小的改动):http://www.cnblogs.com/zou90512/p/3492878.htmlhttp://www.cnblogs.com/zou90512/p/3507729.html在中国程序界。我们都是学着Hello World !慢慢成长起来的。逐渐从一无所知到熟悉精通的。首先创建一个Java项目。引入一个Netty 框架的包。转载 2017-12-07 10:16:21 · 547 阅读 · 0 评论 -
JAVA Socket编程学习10--解决TCP粘包分包问题
前言: 根据我的第六篇文章http://blog.csdn.net/m0_37739193/article/details/78484577编写了NIO的Socket服务端代码后,接受UDP的数据正常,但是接收的TCP数据却出现了粘包分包/拆包/半包问题,查阅网上资料知道已经有开源的Netty提供了多种支持TCP粘包/拆包的解码器,用来满足用户的不同诉求。 可是原创 2017-12-07 11:53:32 · 9837 阅读 · 8 评论 -
JAVA Socket编程学习8--为什么使用Netty
转载自:http://blog.csdn.net/yinwenjie/article/details/48829419和http://blog.csdn.net/yinwenjie/article/details/489698531、Netty介绍 Netty是由JBOSS提供的一个java开源框架。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发转载 2017-12-07 13:45:56 · 1563 阅读 · 0 评论 -
Java切图或者判断是不是纯色图片
切图代码:import java.awt.Rectangle;import java.awt.image.BufferedImage;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.util.Iterator;import javax.imageio...原创 2018-06-25 17:47:25 · 1752 阅读 · 0 评论 -
Java判断是手机还是电脑访问
import java.io.IOException;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.web.bind.annotation.CrossOrigin;import org.spring...转载 2018-06-28 17:59:53 · 1107 阅读 · 0 评论 -
Java如何向线程传递参数
在传统的同步开发模式下,当我们调用一个函数时,通过这个函数的参数将数据传入,并通过这个函数的返回值来返回最终的计算结果。但在多线程的异步开发模式下,数据的传递和返回和同步开发模式有很大的区别。由于线程的运行和结束是不可预料的,因此,在传递和返回数据时就无法象函数一样通过函数参数和return语句来返回数据。本文就以上原因介绍了几种用于向线程传递数据的方法.欲先取之,必先予之。一般在使用线程时都...原创 2018-08-28 14:17:55 · 5881 阅读 · 0 评论 -
java命令后加绝对路径无法运行
前言:今天一个不会java的朋友也不知道从哪整了一个java文件让我帮忙运行一下,我就直接把这个.java文件复制到桌面然后打开cmd命令行工具,第一步(javac + java文件的绝对路径)编译好使,第二步(java + class文件的绝对路径)就不好使,如:一开始还真把我给整懵逼了,我以前记得都好使啊,还以为是我的java或者变量啥的有问题了,折腾了半天还是那样,后来发现以前都是切换...原创 2018-10-15 16:16:41 · 3281 阅读 · 1 评论 -
Java代码常用功能实现总结(二)
如何取得map里key得最大值:原创 2018-12-26 18:08:37 · 1651 阅读 · 1 评论 -
JAVA Socket编程学习1--系统间通信概述
内容来自:http://blog.csdn.net/yinwenjie/article/details/48274255http://blog.csdn.net/yinwenjie/article/details/48344989http://blog.csdn.net/yinwenjie/article/details/48472237http://blog.csdn.net/y转载 2017-12-04 15:50:32 · 923 阅读 · 0 评论 -
Java代码常用功能实现总结(一)
目录1.获取当前系统时间:2.获取当前时间戳:3.获取主机名和IP4.new String用法:5.ByteBuffer和String的互相转换:6.int和string相互转换:7.把多个json放到list中:8.List集合去除重复数据:9.判断数组中是否包含某个元素10.遍历Map的四种方法11.除去字符串(String)中的换行字符(\r \n...原创 2017-10-22 12:22:46 · 5436 阅读 · 3 评论 -
Java解析yaml
test.yaml文件内容:ip: '192.168.102.31'port: '7788'spring: application: name: cruncherserver: port2: 9000monitor_nic: nic: {name: 'ethA', slot: 0, cpu: 0}直接上代码:import java.io.F原创 2017-12-01 20:43:50 · 10406 阅读 · 0 评论 -
Java生成UUID
UUID含义是通用唯一识别码 (Universally Unique Identifier),这 是一个软件建构的标准,也是被开源软件基金会 (Open Software Foundation, OSF) 的组织在分布式计算环境 (Distributed Computing Environment, DCE) 领域的一部份。UUID 的目的,是让分布式系统中的所有元素,都能有唯一的辨识资讯,而不需转载 2017-11-20 16:48:05 · 2151 阅读 · 0 评论 -
Java线程池总结
一、前言:Sun在Java5中,对Java线程的类库做了大量的扩展,其中线程池就是Java5的新特征之一,除了线程池之外,还有很多多线程相关的内容,为多线程的编程带来了极大便利。为了编写高效稳定可靠的多线程程序,线程部分的新增内容显得尤为重要。 有关Java5线程新特征的内容全部在java.util.concurrent下面,里面包含数目众多的接口和类,熟悉这部分API特征是一项艰难的学习过程。目...转载 2017-10-30 10:54:27 · 330 阅读 · 0 评论 -
Caused by: com.google.gson.stream.MalformedJsonException: Expected name at line 1 column 2 path $.
今天用gson解析json数据的时候遇到一个奇怪的问题,虽然解决了但还是没明白是什么原因。。。起因:客户端发送的json字符串中包含二进制数据,我需要把这个json解析后将数据存到hbase中去,由于发来的json字符串中有转义字符,所以我想当然的想到了gson的JsonPrimitive,可是按以前的套路却发现报这个错Caused by: com.google.gson.stream原创 2017-11-28 17:17:56 · 17385 阅读 · 1 评论 -
Java JUnilt4单元测试
我们在编写大型程序的时候,需要写成千上万个方法或函数,这些函数的功能可能很强大,但我们在程序中只用到该函数的一小部分功能,并且经过调试可以确定,这一小部分功能是正确的。但是,我们同时应该确保每一个函数都完全正确,因为如果我们今后如果对程序进行扩展,用到了某个函数的其他功能,而这个功能有bug的话,那绝对是一件非常郁闷的事情。所以说,每编写完一个函数之后,都应该对这个函数的方方面面进行测试,这样的测转载 2017-11-09 22:59:59 · 498 阅读 · 1 评论 -
Java编写ASCII码转换
以下内容来自:https://jingyan.baidu.com/article/d8072ac45e1163ec94cefd78.html一、ASCII编码查看器直接上代码:import java.awt.BorderLayout;import java.awt.EventQueue;import java.awt.Font;import java.awt.GridLayo转载 2017-10-31 11:16:38 · 5457 阅读 · 0 评论 -
JAVA中String、StringBuffer、StringBuilder区别
String是不变类,用String修改字符串会新建一个String对象,如果频繁的修改,将会产生很多的String对象,开销很大.因此java提供了一个StringBuffer类,这个类在修改字符串方面的效率比String高了很多。在java中有3个类来负责字符的操作。 1.Character 是进行单个字符操作的, 2.String 对一串字符进行操作。不可变类。原创 2017-10-30 16:18:52 · 433 阅读 · 1 评论 -
java io流
写文本文件:import java.io.*;/* * 写入到D盘一个文本文件,并往里写入若干行文字。 *如果该次磁盘下有重复的内容,则删除重复的内容后再写入一个新的内容。 */public class TestWriteText{ public static void main(String[] args){ //创建一个File的实例对象 File file=n原创 2017-05-19 17:33:11 · 1152 阅读 · 1 评论 -
Json解析3--Gson解析多种json样式
1. 单个数据对象{ "dbopt":"insert", "probeid":"123456", "date":"Feb 1, 2000 12:00:00 AM", "size":"666"}代码:import java.util.Date;public class HeheBean { private String dbopt; private String原创 2017-11-22 10:08:49 · 510 阅读 · 0 评论 -
mr解析xml将数据(ipv4、ipv6)批量导入hbase
首先在hbase中建立相应的表:hbase(main):003:0> create 'messages','cf'[hadoop@h71 hui]$ vi messages3.javaimport java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;impor原创 2017-12-12 11:41:44 · 595 阅读 · 0 评论 -
Java中的byte和二进制梳理
java byte 和Byte(来自https://www.cnblogs.com/SevenwindMa/p/3671057.html)java的基本数据类型中有byte这种,byte存储整型数据,占据1个字节(8 bits),能够存储的数据范围是-128~+127。Byte是java.lang中的一个类,目的是为基本数据类型byte进行封装。封装有几种好处,比如:1. Byte可以将对转载 2017-11-24 16:07:21 · 25986 阅读 · 2 评论 -
Java处理图片
代码来自:http://blog.sina.com.cn/s/blog_65b630910100z7fv.htmlimport java.awt.image.BufferedImage; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File;原创 2017-11-23 23:26:25 · 16433 阅读 · 4 评论 -
JAVA Socket编程学习7--NIO同时接收TCP和UDP数据
NIOTCP客户端代码:package NIOtcpudp3;import java.net.InetSocketAddress; import java.net.SocketException; import java.nio.ByteBuffer; import java.nio.channels.SocketChannel; public class NIOTC原创 2017-11-08 23:17:49 · 1525 阅读 · 2 评论 -
JAVA Socket编程学习6--NIOTCP两个线程监听两个端口
本文代码来自:http://bbs.csdn.net/topics/390748964客户端代码:import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.net.InetSocketAddress;import java.n转载 2017-11-08 23:08:12 · 1569 阅读 · 0 评论 -
JAVA Socket编程学习5--IO模型
我们首先模拟一个比较糟糕的客户端:import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.InetSocketAddress;import java.net.Socket;i原创 2017-11-08 22:36:12 · 545 阅读 · 0 评论 -
JAVA Socket编程学习4--TCP和UDP多线程通信
本文转载自:http://www.cnblogs.com/zhaozihan/archive/2016/11/12/6057118.html一.通过Socket实现TCP编程java.net.ServerSocket是用来创建服务器端的套接字socket。java.net.Socket是用来创建客户端的套接字socket。InetAddress(java.net.InetA转载 2017-11-08 21:50:57 · 499 阅读 · 0 评论 -
JAVA Socket编程学习2
本文大部分内容来自http://elim.iteye.com/blog/1979837,其中部分内容做了添加和修改。前言:对于Java Socket编程而言,有两个概念,一个是ServerSocket,一个是Socket。服务端和客户端之间通过Socket建立连接,之后它们就可以进行通信了。首先ServerSocket将在服务端监听某个端口,当发现客户端有Socket来试图连接它时转载 2017-10-27 13:58:13 · 423 阅读 · 0 评论 -
JAVA Socket编程学习3
java tcp socket编程学习笔记原创 2017-05-23 16:01:14 · 592 阅读 · 0 评论 -
Java 小例子:通过 Socket 发送和接收文件
本文转载自:http://blog.csdn.net/YidingHe/article/details/3955055这是一个简单的包含发送端和接收端的例子。发送端向接收端发送文件名和文件内容,接收端将收到的文件保存在磁盘上。接收端可以同时接收多个发送端传来的文件,但没有处理文件同名的情况。这个例子中设计了一个简单的协议。发送的内容是这样的:文件名长度(4字节)—文转载 2017-11-01 18:47:33 · 1044 阅读 · 0 评论