Java
文章平均质量分 95
hadixlin
这个作者很懒,什么都没留下…
展开
-
编写JSP自定义标签
可以使用JSP自定义标签来实现简单的代码模板.自定义标签可以通过传统的继承TagSupport或SimpleTagSupport并实现相关方法,然后声明使用tag描述符进行声明. 这里要说的是一种更加简单的方式,TagFiles.Tag File其实就是一个JSP页面,只是把扩展名由.jsp变成了.tag,并放置在指定的目录下.TagFile中不能使用page指令,作为替代可以原创 2013-11-23 12:43:17 · 834 阅读 · 0 评论 -
Java线程中断
Java是一门原生支持多线程的语言,要开启一个线程很容易,使用如下代码new Thread(new Runnable() { @Override public void run() { //do something }}).start(); 这是我能想到的启动线程的最简单的代码,语义明确.但是要优雅得关闭该线程通常却很难. API原创 2013-11-23 12:43:56 · 2848 阅读 · 0 评论 -
Java NIO基本使用
NIO是Java提供的非阻塞I/O API.非阻塞的意义在于可以使用一个线程对大量的数据连接进行处理,非常适用于"短数据长连接"的应用场景,例如即时通讯软件.在一个阻塞C/S系统中,服务器要为每一个客户连接开启一个线程阻塞等待客户端发送的消息.若使用非阻塞技术,服务器可以使用一个线程对连接进行轮询,无须阻塞等待.这大大减少了内存资源的浪费,也避免了服务器在客户线程中不断切换带来的CPU消耗原创 2013-11-23 12:43:33 · 655 阅读 · 0 评论 -
Java中文编码问题
1.不可避免的编码转换. 计算机只能保存和理解二进制字节,而文字实际上是一种图形,所以要使用一种编码方法将图形转换为对应的二进制字节.在Java中这种编码为Unicode,使用16个二进制位表示一个字符,包含基本所有语言的任何字符. 在中文Windows系统中默认使用GBK,而OSX中默认使用UTF-8. 各种环境中的文字编码可能是不同的,原创 2013-11-23 12:48:14 · 3121 阅读 · 0 评论 -
Netty4源码分析之内存管理
本文通过一段段源码注释,加上一些说明,简单的描述Netty4跟踪内存泄露的设计方法.Netty使用装饰器模式,为ByteBuf增加内存跟踪记录功能.利用虚引用跟踪资源被VM垃圾回收的情况,加上ByteBuf的引用计数特性,进而判断是否发生内存泄露.原创 2014-02-16 22:49:48 · 8774 阅读 · 0 评论 -
Jetty 类加载问题处理
本文涉及到的知识点1.Java虚拟机的类加载机制2.JavaServiceProvider 加载机制3.Java 类的初始化过程4.Jetty 服务器的配置方式原创 2014-10-24 15:41:33 · 17321 阅读 · 4 评论 -
Http客户端常规使用说明
Http客户端常规使用说明HttpClient出自Apache基金会,历史非常悠久,经过长足的发展,功能非常丰富,Api也越来越易用.经过大规模应用,表现非常稳定.被定制打包在Android SDK中,可以在Android客户端中非常方便地使用.Http客户端常规使用说明HTTP协议简单说明Apache HttpClient(AHC)基础连接缓存Session&Coo...原创 2018-08-07 14:01:27 · 3460 阅读 · 0 评论 -
安全问题总结
安全测试问题总结SQL注入问题mybatis的mapper.xml配置中使用了“$”做占位符,该占位符在运行时会使用变量原样替换.如果变量是一个用户输入的值,就可以被SQL注入,所以要慎用该占位符,尽量使用“#”XSS跨域脚本访问对于用户的输入和输出给用户web页面的内容应当进行安全过滤,否则可能会保存恶意用户输入的攻击脚本.用户访问这些内容的时候,会导致用户cookie和se...原创 2018-08-07 14:16:37 · 6367 阅读 · 0 评论