
Lang. - Java
文章平均质量分 56
钟超
阿里巴巴集团总监/资深综合运营专家,连续创业者,关于 AI、电商、社交媒体领域,毕业于中国科学技术大学计算机系本科。
展开
-
导致 InvocationTargetException 的最常见原因
在某一个项目A中使用了某个jar包x.jar,而x.jar引入了一个类Y,应该包含y.jar才可以使用Y类。但是y.jar没有被包含到工程中,这时候就会在项目A中跑出InvocationTargetException。原创 2011-12-01 15:10:37 · 118610 阅读 · 7 评论 -
《深入JVM笔记》系列文章——驾驭你的Java虚拟机
目前该系列博文,我已经写作了三篇。接下来还有一些计划,先记录于此,会逐渐写作,然后分享给广大朋友们。希望能够对关注 JVM 技术领域的博友们有所帮助。(1)内存区域是如何划分的?(2)内存溢出场景模拟(3)垃圾标记算法(4)垃圾收集算法(5)如何监控JVM进程?(6)如何配置和优化JVM参数?(7)应该如何理解class文件?(8)J原创 2012-03-04 00:20:32 · 7533 阅读 · 8 评论 -
JVM 深入笔记(2)内存溢出场景模拟
JVM 深入笔记(2)各内存区溢出场景模拟作者:柳大 · Poechant电邮:zhongchao.ustc#gmail.com (#->@)博客:blog.youkuaiyun.com/poechant日期:Feb. 23st 2012《JVM 深入笔记(1)内存区域是如何划分的?》一文已经介绍了 JVM 对内存区域的划分与管理。在现实的编程过程中,会遇到一些 OutOfMe原创 2012-02-27 00:40:18 · 11814 阅读 · 8 评论 -
实现一个具有百度文库文档转换功能的工具类
转载请注明来自“柳大的优快云博客”,原文地址:http://blog.youkuaiyun.com/poechant/article/details/7238056 用过百度文库、豆丁的朋友,都知道,我们只要将文档上传到这些网站上,就可以实现分享。无论你上传的是pdf、ppt,还是doc、txt、pptx文件,都会在网页上显示给用户看。从技术上简单地说,可以分成三步:(1)原创 2012-02-07 00:15:51 · 10144 阅读 · 8 评论 -
Java实现的简单电话号码储存
package com.sinosuperman.example;import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.IOException;import java.util.StringTokenizer;import java.util.TreeMap原创 2011-11-11 00:48:16 · 4556 阅读 · 0 评论 -
Java从文件读入数据并打印到显示器
import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.IOException;import java.util.StringTokenizer;public class test { public static void main(String[] args原创 2011-11-10 23:02:45 · 4500 阅读 · 0 评论 -
Java之RMI设计模式基本原理与示例
1. NameRMI是Romote Method Invocation的缩写,就是远程方法调用。2. Intent具体的说,就是能够通过这种机制,实现在一个JVM上调用另一个JVM上的Java对象的方法。3. Structure(1)RMI Interface and Class第一步:继承了Remote的interface定义一个继承了Remote的i原创 2011-11-27 16:18:08 · 4606 阅读 · 0 评论 -
Java的特殊类用法:文件类、内部类、本地类、匿名类
1. 文件类Test 是一个文件类。class Test { static void method() { //... }}public class Driver { public static void main(String[] args) { Test.method(); }}2. 内部类class原创 2011-11-06 23:20:25 · 3959 阅读 · 0 评论 -
JVM 深入笔记(1)内存区域是如何划分的?
JVM 深入笔记(1)内存区域是如何划分的?作者:柳大 · Poechant电邮:zhongchao.ustc#gmail.com (#->@)博客:blog.youkuaiyun.com/poechant日期:Feb. 21st 2012一个超短的前言JVM 是一个从事 Java 开发的软件工程师的修炼之路上必然要翻阅的一座山。当你了解了 Java 的基本语言特性,当你熟悉了 Java SDK 中的常用 A原创 2012-02-24 00:07:08 · 21484 阅读 · 30 评论 -
Java知识拾遗:三大框架的技术起源
Java知识拾遗:三大框架的技术起源原文链接:http://developer.51cto.com/art/201003/191679.htmStruts、Hibernate和Spring是我们Java开发中的常用关键,他们分别针对不同的应用场景给出最合适的解决方案。但你是否知道,这些知名框架最初是怎样产生的?我们知道,传统的Java Web应用程序是采用JSP+Servlet+Javabean来转载 2012-12-25 12:52:03 · 10565 阅读 · 0 评论 -
Practical Netty (2) CS模式下的Echo及String与ChannelBuffer的转化
Practical Netty (2) CS模式下的Echo及String与ChannelBuffer的转化作者:柳大·Poechant(钟超)邮箱:zhongchao.ustc#gmail.com(# -> @)博客:Blog.youkuaiyun.com/Poechant微博:weibo.com/lauginhom日期:June 2nd, 20121. Echo TCP ServerNetty 服务器写多原创 2013-01-02 01:56:50 · 12428 阅读 · 1 评论 -
Practical Netty (3) 在Netty中使用Protobuf
Practical Netty (3) 在Netty中使用Protobuf作者:柳大·Poechant(钟超)邮箱:zhongchao.ustc#gmail.com(# -> @)博客:Blog.youkuaiyun.com/Poechant微博:weibo.com/lauginhom日期:June 8th, 20121. Netty 核心概念之一:Upstream 与 Downstream学过 OSI 的原创 2013-01-08 22:24:38 · 17700 阅读 · 1 评论 -
Java NIO框架Mina、Netty、Grizzly介绍与对比
Java NIO框架Mina、Netty、Grizzly介绍与对比原文链接:http://www.24xuexi.com/w/2011-11-14/98277.html原文日期:2011年11月14日MinaMina(Multipurpose Infrastructure for Network Applications) 是 Apache组织一个较新的项目,它为开发高性能和高可用性的网络应用程序转载 2012-12-26 17:10:42 · 24139 阅读 · 0 评论 -
利用JNA使Java访问本地C++
(1)C++代码typedef int (*CB_OnServiceUserMessage)(uint32_t cid, uint32_t uid, const std::string& data);extern "C"{ void init(CB_OnMsg原创 2011-08-29 17:30:45 · 5076 阅读 · 1 评论 -
JVM 深入笔记(3)垃圾标记算法
JVM深入笔记(3)垃圾标记算法Author: PoechantBlog: blog.youkuaiyun.com/PoechantEmail: zhongchao.ustc#gmail.com (#->@)Date: March 3rd, 2012Copyright © 柳大·Poechant如果您还不了解 JVM 的基本概念和内存划分,请先阅读《JVM 深入笔记(1)内存区域是如何划分的?》一文。然后再回原创 2012-03-03 16:13:18 · 7037 阅读 · 6 评论 -
Practical Netty (6) HTTP Server/Client
Practical Netty (6) HTTP Server/Client作者:柳大·Poechant(钟超)邮箱:zhongchao.ustc#gmail.com(# -> @)博客:Blog.youkuaiyun.com/Poechant微博:weibo.com/lauginhom日期:June 18th, 2012Netty 提供的 HTTP 功能,比较适合在 Netty 搭建的 TCP 或 UDP原创 2013-01-18 01:44:39 · 16006 阅读 · 0 评论 -
Practical Netty (5) TCP反向代理服务器
Practical Netty (5) TCP反向代理服务器作者:柳大·Poechant(钟超)邮箱:zhongchao.ustc#gmail.com(# -> @)博客:Blog.youkuaiyun.com/Poechant微博:weibo.com/lauginhom日期:June 11th, 2012以下针对 TCP 反向代理服务器。1. 前端连接被创建时,创建后端连接一个平凡的 ServerBoots原创 2013-01-11 13:46:08 · 19826 阅读 · 2 评论 -
Practical Netty (4) 父子频道关系,频道与管道的关系
Practical Netty (4) 父子频道关系,频道与管道的关系作者:柳大·Poechant(钟超)邮箱:zhongchao.ustc#gmail.com(# -> @)博客:Blog.youkuaiyun.com/Poechant微博:weibo.com/lauginhom日期:June 10th, 2012(下面这段话是完成本文后写的)我姑且将 Parent channel 称为父频道,Child原创 2013-01-10 15:20:36 · 12543 阅读 · 1 评论 -
Practical Netty (1) 基于Netty实现的一个rdate server实例
Practical Netty (1) 基于Netty实现的一个rdate server实例作者:钟超(Poechant)邮箱:zhongchao.ustc#gmail.com博客:blog.youkuaiyun.com/poechant微博:weibo.com/lauginhomNetty 是一个高效的 Java 网络框架,简单的介绍可参见《Java NIO框架Mina、Netty、Grizzly介绍与对比原创 2012-12-28 14:37:01 · 12179 阅读 · 1 评论 -
Java内部类入门示例
public class test { public static void main(String[] args) { OuterClass out = new OuterClass(); OuterClass.InnerClass1 inner1 = new OuterClass().new InnerClass1(); OuterClass.InnerClass2 inner2原创 2011-11-06 19:31:27 · 1891 阅读 · 0 评论 -
Java GUI之GraphicsEnvironment
package com.sinosuperman.driver;import java.awt.GraphicsEnvironment;import java.awt.Rectangle;public class MainBench { public static void main(String[] args) { GraphicsEnvironment env = Graphi原创 2011-11-26 22:15:17 · 7463 阅读 · 0 评论 -
Java编程思想之静态技术
静态技术包括静态数据、静态方法、静态初始化程序块等。静态数据是属于某个类的数据成员,而非属于某个具体的对象。也就是说这个类创造出来的对象,都共用同一个数据。class A { static int x; ...}静态方法也是属于整个类的,而且静态方法中不能调用非静态数据或方法。class B { public sta原创 2011-10-31 13:38:21 · 2130 阅读 · 0 评论 -
Java GUI之位置控制与尺寸控制
以下四个类都包含在java.awt包内。1. Toolkit类:Toolkit类是一个包含了本机系统属性和参数的抽象类,比如Clipboard内容、光标、桌面属性、字体族、颜色类型、屏幕参数和系统事件。2. Dimension类:Dimension类通常用来获取或设置组件的尺寸。与Toolkit类配合使用,则可以获取屏幕尺寸。3. GraphicsEnvironment原创 2011-11-20 19:04:39 · 4690 阅读 · 0 评论 -
Poechant 解读 Java API —— 借助货币格式化,初识 Locale 和 NumberFormat
Locale 属于 java.util.Locale 包NumberFormat 属于 java.text.NumberFormat 包 NumberFormat java.text.NumberFormat.getCurrencyInstance(); NumberFormat java.text.NumberFormat.getCurrencyInstance(java.util.L原创 2011-10-30 18:28:36 · 3149 阅读 · 0 评论 -
Poechant 练习 Java API - Y/N 输入验证
循环输入,直到控制台输入的内容为Y/y或N/n才结束,输入其他内容则提示错误。import java.util.Scanner;public class test { public static void main(String[] args) { Scanner sc = new Scanner(System.in); boolean isValid = false;原创 2011-10-31 00:57:24 · 2511 阅读 · 0 评论 -
Poechant 练习 Java API - 包装类
利用三个包装类编写一个计算三个整数平均值的程序。程序首先提示用户输入3个整数,然后将3个整数分别赋予3个Integer对象。利用适当的包装类方法将3个整数转换成整数值。将其平均值包装到一个Double对象。最后打印这三个整数值以及平均值。程序将继续运行直到用户打入“n”。import java.util.Scanner;public class test { public stati原创 2011-10-31 00:46:30 · 2580 阅读 · 0 评论 -
Java API 汇总(未完待续)
-java.lang.Mathstatic int Math.abs(int); the absolute valuestatic long Math.abs(long); the absolute valuestatic float Math.abs(float); the absolute valuestatic double Math.abs(double); t原创 2011-10-30 23:06:34 · 2716 阅读 · 0 评论 -
Java已知InputStream长度,将其转换为byte[]
/** * Transfer java.io.InpuStream to byte array. * @param inStream, input stream of the uploaded file. * @param fileLength, the length of the file. * @return the byte array transferred from ja原创 2011-11-18 10:20:57 · 5491 阅读 · 0 评论 -
Java实现从IP和端口列表List<String>获取分离的IP和端口值
List addrList = getFromSomeWhere();InetSocketAddress[] addrs = new InetSocketAddress[addrList.length()];for (int i = 0; i < addrList.length(); ++i) { String[] parts = addrList.get(i).split("\\:", 2原创 2011-11-17 18:25:42 · 2757 阅读 · 0 评论 -
Java GUI之创建一个长宽尺寸为屏幕尺寸一半的框架,并显示在屏幕的正中心
首先想到的主要用的方法,是:java.awt.JFrame.setSize(int width, int height);java.awt.JFrame.setLocation(int x, int y);而获取屏幕尺寸信息,一定要用到:static Toolkit.getDefaultToolkit();Toolkit.getScreenSize();而呈原创 2011-11-20 19:16:46 · 4850 阅读 · 0 评论 -
Java之线程协调
package com.sinosuperman;public class TestQuestion { static Shared shared = new Shared("michael", "guangzhou"); public static void main(String[] args) { A a = new A(); B b = new B(); System.原创 2011-11-19 06:22:57 · 2632 阅读 · 0 评论 -
Java之serialVersionUID
凡是实现了Serializable的类,都必须实现serialVersionUID。而serialVersionUID的目的是为了版本升级的兼容性,当程序版本升级后可以通过反序列化维护对象的唯一性。Eclipse可以为你自动生成serialVersionUID。原创 2011-11-20 21:25:55 · 2679 阅读 · 0 评论 -
Java IO之有缓冲的文本输入
输入,就是Input(I)。package com.sinosuperman.driver;import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.IOException;public class MainBench { public stati原创 2011-11-22 01:23:15 · 2150 阅读 · 0 评论 -
Java IO之有缓冲的文本输出
就是写入一个文件,即Output(O)。package com.sinosuperman.driver;import java.io.BufferedWriter;import java.io.File;import java.io.FileWriter;import java.io.IOException;import java.io.PrintWriter;publ原创 2011-11-22 01:18:10 · 2638 阅读 · 0 评论 -
Java GUI之事件监听与处理的匿名类实现方法
package com.sinosuperman.driver;import java.awt.Dimension;import java.awt.FlowLayout;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax原创 2011-11-21 00:51:37 · 2855 阅读 · 0 评论 -
Java GUI之FlowLayout.CENTER
package com.sinosuperman.driver;import java.awt.Dimension;import java.awt.FlowLayout;import java.awt.Toolkit;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.WindowConst原创 2011-11-21 00:25:19 · 3115 阅读 · 0 评论 -
Java各阶段学习书目
1. 入门:高永强的《Java编程艺术》2. 提高Bruce Eckel的《Thinking in Java》3. 进阶Joshua Bloch的《Effective Java》Joshua Bloch的《Java Puzzlers》4. 全面Cay S. Horstman的《Core Java: Volume I Fundamental原创 2011-11-21 01:42:23 · 3733 阅读 · 2 评论 -
Java GUI之事件监听与处理
事件监听和处理的根本技术,是回调。甲方提供接口,乙方实现接口并调用相应方法。package com.sinosuperman.driver;import java.awt.Dimension;import java.awt.FlowLayout;import java.awt.Toolkit;import java.awt.event.ActionEvent;import原创 2011-11-21 00:39:44 · 4418 阅读 · 0 评论 -
Java GUI之创建一个只有两个按钮的框架
package com.sinosuperman.driver;import java.awt.Dimension;import java.awt.Toolkit;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.WindowConsta原创 2011-11-20 23:43:28 · 5386 阅读 · 0 评论 -
Java GUI之JButton
1.构造器JButton();JButton(String name);JButton(Icon icon);JButton(String name, Icon icon);2.方法addActionListener(ActionListener listner);//将该按钮注册到事件处理接口String getText();//返回按钮上显示的字符串se原创 2011-11-20 22:11:34 · 3772 阅读 · 0 评论