
JAVA
zhangxiong0301
这个作者很懒,什么都没留下…
展开
-
java远程调用linux shell命令或shell脚本
工具、jar包:ganymed-ssh2.jar编程方式: Connection conn = new Connection(ip); conn.connect(); conn.authenticateWithPassword(usrname,password); Session session = conn.openSession(); session...2013-12-12 19:25:02 · 590 阅读 · 0 评论 -
JAVA中的认证和授权开发(JAAS)
本文翻译自:http://java.sun.com/developer/technicalArticles/Security/jaasv2/ 传统的JAVA安全机制没有提供必要的架构支持传统的认证和授权;在J2SE里的安全是基于公钥密码体系和代码签名。也就是说,认证是基于在JVM里执行 代码的思想,并且没有对资源请求提供策略。而且授权也是基于这样的概念--代码试图去使用一个计算机资源。Java认...原创 2015-05-24 14:35:54 · 316 阅读 · 0 评论 -
zero-copy
Many Web applications serve a significant amount of static content, which amounts to reading data off of a disk and writing the exact same data back to the response socket. This activity might appear...原创 2015-06-09 11:06:12 · 181 阅读 · 0 评论 -
java内部类详解
说起内部类这个词,想必很多人都不陌生,但是又会觉得不熟悉。原因是平时编写代码时可能用到的场景不多,用得最多的是在有事件监听的情况下,并且即使用到也很少去总结内部类的用法。今天我们就来一探究竟。下面是本文的目录大纲: 一.内部类基础 二.深入理解内部类 三.内部类的使用场景和好处 四.常见的与内部类相关的笔试面试题 若有不正之处,请多谅解并欢迎批评指正。 请尊重...原创 2015-06-16 15:33:54 · 104 阅读 · 0 评论 -
JAVA中的ConcurrentHashMap实现
ConcurrentHashMapConcurrentHashMap是一个线程安全的Hash Table,它的主要功能是提供了一组和HashTable功能相同但是线程安全的方法。ConcurrentHashMap可以做到读取数据不加锁,并且其内部的结构可以让其在进行写操作的时候能够将锁的粒度保持地尽量地小,不用对整个ConcurrentHashMap加锁。ConcurrentHashMa...原创 2015-06-19 14:55:08 · 141 阅读 · 0 评论 -
java中priorityQueue的实现
PriorityQueue介绍 在平时的编程工作中似乎很少碰到PriorityQueue(优先队列) ,故很多人一开始看到优先队列的时候还会有点迷惑。优先队列本质上就是一个最小堆。前面一篇文章介绍了堆排序和堆的性质。而堆又是什么呢?它是一个数组,不过满足一个特殊的性质。我们以一种完全二叉树的视角去看这个数组,并用二叉树的上下级关系来映射到数组上面。如果是最大堆,则二叉树的顶点是保存的...原创 2015-06-25 10:43:16 · 400 阅读 · 0 评论 -
RuntimeException与CheckedException
Java的异常被分为两大类:Checked异常和Runtime异常(运行时异常)。所有RuntimeException类及其子类实例被称为Runtime异常;不是RuntimeException类及其子类的异常实例则称为Checked异常。 只有Java语言提供了Checked异常,其他语言都没有提供Checked异常。Java认为Checked异常都是可以...原创 2015-07-23 20:30:38 · 145 阅读 · 0 评论 -
JAVA内存泄露问题
[b]Java内存回收机制[/b][code="java"] 不论哪种语言的内存分配方式,都需要返回所分配内存的其实地址,也就是返回一个指针到内存块的首地址。Java中对象是采用new或者反射的方法创建的,这些对象的创建都是在堆(Heap)中分配的,所有对象的回收都是由Java虚拟机通过垃圾回收机制完成的。GC为了能够正确释放对象,会监控每个对象的运行状况,对他们的申请、引用、被引用、赋...原创 2014-11-27 17:23:47 · 98 阅读 · 0 评论 -
java垃圾收集器(转载)
垃圾收集GC(Garbage Collection)是Java语言的核心技术之一,之前我们曾专门探讨过Java 7新增的垃圾回收器G1的新特性,但在JVM的内部运行机制上看,Java的垃圾回收原理与机制并未改变。垃圾收集的目的在于清除不再使用的对象。GC通过确定对象是否被活动对象引用来确定是否收集该对象。GC首先要判断该对象是否是时候可以收集。两种常用的方法是引用计数和对象引用遍历。[b]...原创 2014-11-28 09:02:47 · 120 阅读 · 0 评论 -
JAVA中的认证和授权开发(JAAS)
本文翻译自:http://java.sun.com/developer/technicalArticles/Security/jaasv2/ 传统的JAVA安全机制没有提供必要的架构支持传统的认证和授权;在J2SE里的安全是基于公钥密码体系和代码签名。也就是说,认证是基于在JVM里执行 代码的思想,并且没有对资源请求提供策略。而且授权也是基于这样的概念--代码试图去使用一个计算机资源。Java认...原创 2015-05-24 14:35:33 · 456 阅读 · 0 评论 -
java内存结构
内存作为系统中重要的资源,对于系统稳定运行和高效运行起到了关键的作用,Java和C之类的语言不同,不需要开发人员来分配内存和回收内存,而是由JVM来管理对象内存的分配以及对象内存的回收(又称为垃圾回收、GC),这对于开发人员来说确实大大降低了编写程序的难度,但带来的一个副作用就是,当系统运行过程中出现JVM抛出的内存异常(例如OutOfMemoryError)的时候,很难知道原因是什么,另外一方...原创 2015-04-19 13:57:19 · 111 阅读 · 0 评论 -
tomcat dbcp 参数配置项(转载)
参数 描述username 传递给JDBC驱动的用于建立连接的用户名password 传递给JDBC驱动的用于建立连接的密码url 传递给JDBC驱动的用于建立连接的URLdriverClassName 使用的JDBC驱动的完整有效的java 类名connectionProperties ...原创 2014-01-06 09:52:29 · 184 阅读 · 0 评论 -
JAVA自动发送邮件
最近项目用到java自动发送邮件的功能,在网上找到一段完整的代码;经测试可以正常发送邮件。感谢各位分享了。下面记下代码:[code="java"]import java.util.*;import javax.activation.*;import javax.mail.*;import javax.mail.internet.*;public class MainClas...原创 2014-01-13 17:43:36 · 505 阅读 · 0 评论 -
【转载】hive中map和reduce个数控制
一、 控制hive任务中的map数: 1. 通常情况下,作业会通过input的目录产生一个或者多个map任务。 主要的决定因素有: input的文件总个数,input的文件大小,集群设置的文件块大小(目前为128M, 可在hive中通过set dfs.block.size;命令查看到,该参数不能自定义修改);2. 举例: a) 假设input目录下有...原创 2014-07-22 21:42:38 · 220 阅读 · 0 评论 -
tomcat APR连接调度方式
在线上环境中我们是采用了tomcat作为Web服务器,它的处理性能直接关系到用户体验,在平时的工作和学习中,归纳出以下七种调优经验。1. 服务器资源服务器所能提供CPU、内存、硬盘的性能对处理能力有决定性影响。(1) 对于高并发情况下会有大量的运算,那么CPU的速度会直接影响到处理速度。(2) 内存在大量数据处理的情况下,将会有较大的内存容量需求,可以用-Xmx -...原创 2014-03-06 12:52:12 · 207 阅读 · 0 评论 -
将博客搬至优快云
啊啊原创 2015-03-07 11:53:07 · 97 阅读 · 0 评论 -
Jstat详解
Jstat是JDK自带的一个轻量级小工具。全称“Java Virtual Machine statistics monitoring tool”,它位于java的bin目录下,主要利用JVM内建的指令对Java应用程序的资源和性能进行实时的命令行的监控,包括了对Heap size和垃圾回收状况的监控。可见,Jstat是轻量级的、专门针对JVM的工具,非常适用。jstat工具特别强大,有众多的...原创 2015-04-19 13:43:19 · 157 阅读 · 0 评论 -
Jstack详解
jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项"-J-d64",Windows的jstack使用方式只支持以下的这种方式:jstack [-l] pid如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stack和native stack的信息,从而可以轻松地知道j...原创 2015-04-19 13:49:42 · 172 阅读 · 0 评论 -
jmap详解
1、命令基本概述Jmap是一个可以输出所有内存中对象的工具,甚至可以将VM 中的heap,以二进制输出成文本。打印出某个java进程(使用pid)内存内的,所有‘对象’的情况(如:产生那些对象,及其数量)。使用方法 jmap -histo pid。如果使用SHELL ,可采用jmap -histo pid>a.log日志将其保存到文件中,在一段时间后,使用文本对比工具,可以对比出G...原创 2015-04-19 13:51:42 · 383 阅读 · 0 评论 -
java垃圾收集配置
[b]堆大小设置[/b]JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典型设置:java -Xmx3550m -X...原创 2014-12-11 16:59:15 · 177 阅读 · 0 评论