作者:AlbertWen
添加时间:2018-10-18 10:36:14
修改时间:2025-04-03 05:12:02
分类:
08.Java基础
编辑
ReplayingDecoder 和ByteToMessageDecoder 最大的不同就是ReplayingDecoder 允许你实现decode()和decodeLast()就像所有的字节已经接收到一样,不需要判断可用的字节,举例,下面的ByteToMessageDecoder 实现:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | public class IntegerHeaderFrameDecoder extends ByteToMessageDecoder {
@Override
protected void decode(ChannelHandlerContext ctx,
ByteBuf buf, List<Object> out) throws Exception {
if (buf.readableBytes() < 4 ) {
return ;
}
buf.markReaderIndex();
int length = buf.readInt();
if (buf.readableBytes() < length) {
buf.resetReaderIndex();
return ;
}
out.add(buf.readBytes(length));
}
}
|
作者:AlbertWen
添加时间:2019-02-18 23:01:21
修改时间:2025-04-02 05:49:15
分类:
08.Java基础
编辑
首先来看一下List接口中的sort()
方法

从这个描述我们可以看到,我们可以根据具体的Comparator对List结合中的元素进行排序,如果传入的comparator是null的时候,那么集合中的元素必须实现Comparable接口实现自然排序。从上面的一段话我们知道List集合对元素排序的方法有以下两种:
- List中的元素自己实现一个Comparable接口实现一个自然排序
- 我们通过传入一个实现了Comparator接口实现一个排序
作者:AlbertWen
添加时间:2019-01-26 21:30:38
修改时间:2025-04-03 11:19:44
分类:
08.Java基础
编辑
Java正则表达式:
- (?i)abc 表示abc都忽略大小写
- a(?i)bc 表示bc忽略大小写
- a((?i)b)c 表示只有b忽略大小写
也可以用 Pattern.compile(rexp, Pattern.CASE_INSENSITIVE) 表示整体都忽略大小写
作者:AlbertWen
添加时间:2018-05-01 20:20:24
修改时间:2025-04-02 05:48:46
分类:
08.Java基础
编辑
作者:AlbertWen
添加时间:2018-06-13 16:08:38
修改时间:2025-03-29 17:53:12
分类:
08.Java基础
编辑
// 高效率访问方式
1 2 3 4 5 6 7 | Map map = new HashMap();
Iterator iter = map.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry entry = (Map.Entry) iter.next();
Object key = entry.getKey();
Object val = entry.getValue();
}
|
作者:AlbertWen
添加时间:2017-12-29 14:24:13
修改时间:2025-04-02 05:54:22
分类:
08.Java基础
编辑
File 类的介绍:/article/.html...
Java IO 流的分类介绍:/article/.html...
这篇讲的是字节输入输出流:InputStream、OutputSteam(下图红色长方形框内),红色椭圆框内是其典型实现(FileInputSteam、FileOutStream)

作者:AlbertWen
添加时间:2015-01-07 21:45:00
修改时间:2025-03-15 21:31:08
分类:
08.Java基础
编辑
作者:AlbertWen
添加时间:2014-05-19 21:12:00
修改时间:2025-03-29 03:43:49
分类:
08.Java基础
编辑
模拟表单html如下:
1 2 3 4 5 | < form action = "up_result.jsp" method = "post" enctype = "multipart/form-data" name = "form1" id = "form1" >
< input type = "text" name = "name" value = "" /> < br />
< input type = "file" name = "userfile" /> < br />
< input type = "submit" value = "上传" />
</ form >
|
作者:AlbertWen
添加时间:2018-06-05 10:11:05
修改时间:2025-04-02 05:48:29
分类:
08.Java基础
编辑
@PostConstruct
注解好多人以为是Spring提供的,其实是Java自己的注解。从Java EE5规范开始,Servlet中增加了两个影响Servlet生命周期的注解,@PostConstruct
和@PreDestroy
,这两个注解被用来修饰一个非静态的void()方法。
作者:AlbertWen
添加时间:2018-06-05 10:54:47
修改时间:2025-04-02 17:00:04
分类:
08.Java基础
编辑