
1、JAVA基础
文章平均质量分 53
guo_rui22
精于Java分布式高并发架构、Android客户端、Swing客户端技术。对MySQL数据库设计、开发、集群、调优有一点经验。5公里越野跑爱好者:)
展开
-
try...catch...finally中的return
1. 如果 finally 中没有 return,try和catch中第一个执行的 return作为返回值。 2. 如果 finally 中有 return,try和catch中的 return 只起到阻止后续代码执行的作用,返回值以 finally 中的 return 为准。 3. try 和 catch 中的 return 会阻止后续代码的执行,但不会阻止 finally 中代原创 2009-05-07 11:17:00 · 543 阅读 · 0 评论 -
检测文件编码类型
private static String geestFileEncoding(File file, nsDetector det) throws FileNotFoundException, IOException { // Set an observer... // The Notify() will be called when a matching charset is f原创 2009-03-27 13:49:00 · 2656 阅读 · 1 评论 -
本周日期推算
GregorianCalendar gd = new GregorianCalendar(); try { if (isFirst) { int subDays = -7;//-(gd.get(Calendar.DAY_OF_WEEK) - 1); gd.add(Calendar.DAY原创 2009-03-20 16:36:00 · 546 阅读 · 0 评论 -
观察者与被观察者模式实现模型
1. 被观察者(PropertyChangeListeners are fired on the event dispatching thread.) package org.jdesktop.application;import java.beans.PropertyChangeEvent;import java.beans.PropertyChangeListener;im原创 2009-03-13 10:57:00 · 1012 阅读 · 0 评论 -
jdesktop.layout布局管理器
jdesktop.layout布局管理器 1. 参数配置 GroupLayout layout = new GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setAutoCreateGaps(true); layout.setAut原创 2009-03-12 18:37:00 · 3023 阅读 · 1 评论 -
swing-app使用笔记
5.1 action的定义与引用 @Action public void setTitle() { appFrame.setTitle(textField.getText()); }ActionMap actionMap = getContext().getActionMap(); setTitleButton.setAction(actionMap.get("se原创 2009-03-09 11:14:00 · 653 阅读 · 0 评论 -
简单的日历输出代码
public static void main(String[] args) { // TODO 定义一个日历对象 GregorianCalendar d = new GregorianCalendar(); // TODO 获取当天信息 int md = d.get(Calendar.DAY_OF_MONTH);原创 2008-12-23 21:19:00 · 586 阅读 · 0 评论 -
严格的随机数生成器
/** * 在指定范围内长生随机数,包含min和max * * @param min 最小值 * @param max 最大值 * @return int 随机整数 */ public static int getRandom(int min,int max){ int mid = 0; if (max<min) { mid = max原创 2009-03-09 11:13:00 · 676 阅读 · 0 评论 -
MANIFEST.MF文件的格式
最简单的例子Manifest-Version: 1.0Class-Path: lib/swing-layout-1.0.3.jarMain-Class: marsroverviewer.MarsRoverViewerApp 1. 基本格式 属性名称+:+空格+属性值 2. 没行最多72个字符,换行继续必须以空格开头 3. 文件最后必须要有一个回车换原创 2009-03-07 19:21:00 · 2225 阅读 · 0 评论 -
log4j使用手册
Log4J使用完全手册 Log4J是Apache的一个开放源代码项目(http://logging.apache.org/log4j/docs/),它是一个日志操作包。通过使用Log4J,可以指定日志信息输出的目的地,控制每一条日志的输出格式,定义日志信息的级别。所有这些功能通过一个配置文件灵活进行配置。 一、LOG原创 2009-03-09 14:21:00 · 655 阅读 · 0 评论 -
Java提取字符串中的汉字
System.out.println("欢迎光临我的JAVA世纪网www.sina.net".replaceAll("[^/u4E00-/u9FA5]", "")); System.out.println("欢迎光临我的JAVA世纪网,$$www.java.net".replaceAll("[//w]", "").replaceAll("//p{Punct}", ""));原创 2009-03-05 23:27:00 · 8216 阅读 · 0 评论 -
swingworker笔记
swingworker使用说明1、创建swingworker实例,并在构造函数中引入任务执行的必要参数 PrimeNumbersTask task = new PrimeNumbersTask(textArea, otherParam); textArea 用来显示动态的处理结果 otherParam 其他参数,比如要获取一万个素数,就输入10000原创 2009-03-05 10:21:00 · 1393 阅读 · 0 评论 -
POI读写excel文件
package com.newbee.brooder;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.ut转载 2009-03-27 16:07:00 · 1378 阅读 · 0 评论 -
Java生成rtf格式文档
package com.newbee.brooder;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.text.SimpleDateFormat;import java.util.Date;import or原创 2009-04-03 11:49:00 · 3978 阅读 · 4 评论 -
正则表达式中捕获组的使用
String s1 = "//home//guo//Java//workspace//newbee//src//com//newbee//brooder//RtfMain.png"; String regExp = ".+////(.+//..+)$"; // 取文件名,注意()是捕获组 //String regExp = ".+////.+(//..+)原创 2009-04-03 15:27:00 · 749 阅读 · 0 评论 -
MyBatis Generator 笔记
1、Abator生成Java类文件时,根据注释区分属性和方法是系统生成或用户自定义,以此决定保留或者覆写. 2、Abator生成SQLMap的xml文件时,根据元素id是否包含前缀 ibatorgenerated_ 区分元素是系统 生成或用户自定义,以此决定保留或者覆写.。 3、注意ibatorConfig.xm 文件中节点的顺序 4、生成的数据对象 Pri原创 2009-03-03 19:24:00 · 3146 阅读 · 0 评论 -
计算周、月的开始与结束日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd , ww, E"); //sdf.format("2009-12-31"); Calendar cl = Calendar.getInstance(); cl.setFirstDayOfWeek(GregorianCalendar.原创 2010-04-13 12:56:00 · 839 阅读 · 0 评论 -
Java中File,byte[],Object间的转换
一、有两点需要注意: 1、Object 对象必须是可序列化对象 。 2、可序列化的 Object 对象都可以转换为一个磁盘文件;反过来则不一定成立,只有序列 化文件才可以转换为 Object 对象。二、相关的转换方法: import java.io.BufferedOutputStream;import java.原创 2007-08-13 11:49:00 · 18449 阅读 · 4 评论 -
多线程、高性能缓存服务实现代码
1、接口定义import java.util.concurrent.ExecutionException;public interface Computable {V compute(A arg) throws InterruptedException, Ex原创 2011-08-04 10:18:03 · 1394 阅读 · 0 评论 -
Java 跨年周数的计算
import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.GregorianCalendar;public class WeekOfYear { /** * @param args */原创 2010-03-21 14:55:00 · 5180 阅读 · 0 评论 -
命令行启动Java web start 执行 jnlp文件
java/bin/javaws xxx.jnlp原创 2010-02-02 22:50:00 · 8099 阅读 · 1 评论 -
多表关联对象组合算法
1. 表 AX1 X2 X31 11 1113 33 3332 22 222 BY1 AX1 Y320 2 F30 3 G10 1 E 2. 排序 AX1 X2 X31 11 1112 22 2223 33 333 BY1 AX1 Y310 1原创 2009-05-06 22:00:00 · 506 阅读 · 0 评论 -
二维数组顺序遍历技巧
二维数组顺序遍历技巧数组[x][y]for(int i=0;i 变量 = 数组[i/y][i%y]}i/y 基数递增函数i%y 0-y范围循环原创 2009-05-04 11:18:00 · 619 阅读 · 0 评论 -
J2ME概要
0. J2ME DEMO 0.1. KeyMapping.java 按键操作相关 0.2. ScratchPad.java 触摸屏(或鼠标)绘图,touch_screen=true 0.3. DrawShapes.java 圆弧绘制 0.4. FontVi原创 2009-04-24 23:08:00 · 708 阅读 · 0 评论 -
试题组合
试题组合算法说明 red green blue0 3 1 71 3 9 22 4 0 11. 最优算法 1.1 生成3个长度为10的数组(ArrayList) red [0001112222] green [0111111111] blue [0000000112] 1.2 随机原创 2009-04-28 10:56:00 · 411 阅读 · 0 评论 -
有状态的 socket 多线程服务器
1. Server package com.mengnew.server;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStream;原创 2009-04-22 11:43:00 · 710 阅读 · 0 评论 -
一个典型的swing弹出菜单和选中事件监听器
// isPopupTrigger()返回此鼠标事件是否为该平台的弹出菜单触发事件。 private static class PopupMenuListener extends MouseAdapter { private final JPopupMenu menu; PopupMenuListener(JPopupMenu menu) {原创 2009-03-05 17:05:00 · 3239 阅读 · 0 评论 -
swing模拟窗口关闭事件
1、窗口属性 xxx.setDefaultCloseOperation(EXIT_ON_CLOSE);2、模拟事件 WindowEvent we = new WindowEvent(xxx.this,WindowEvent.WINDOW_CLOSING);3、事件分发 xxx.this.dispatchEvent(we); 其他事件模拟 Toolkit.getEventQue原创 2009-03-02 11:25:00 · 2151 阅读 · 1 评论 -
sql脚本和js中使用字符串的处理
// 处理单引号 public static String getSQL(String s) { if (s != null) { s = s.replaceAll("", ""); } return s; } // 处理单引号和双引号,例如:"Test"问题 pub原创 2008-06-03 17:58:00 · 655 阅读 · 0 评论 -
java.lang.Integer.toHexString(b[n] & 0XFF)中0XFF使用的必要性
byte[] b = {1,2,20,108};String stmp = java.lang.Integer.toHexString(b[n] & 0XFF) 在32位的电脑中数字都是以32格式存放的,如果是一个byte(8位)类型的数字,他的高24位里面都是随机数字,低8位才是实际的数据。java.lang.Integer.toHexString() 方法的参数是int(32位原创 2008-08-25 11:40:00 · 6630 阅读 · 4 评论 -
Java模拟鼠标点击
try { Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Robot robot = new Robot(); robot.mouseMove(screenSize.width-10,10); robot.delay(2000); robot.mousePre原创 2008-06-03 18:24:00 · 6879 阅读 · 1 评论 -
Java访问保护域中的文件
private static Document loadBundle(final ClassLoader loader, final String bundleName) { // Next search for a Properties file. InputStream stream = (InputStream)java.security.AccessCont原创 2008-05-14 11:49:00 · 665 阅读 · 0 评论 -
在ant脚本中生成Java程序的EXE文件
============================================================= --> Create iReport.exe using jsmoothgen --> ===========================================================原创 2008-04-24 16:33:00 · 1329 阅读 · 0 评论 -
使用ant编译java文件时报非法字符(不可见的)问题
一般来说错误信息会提示非法字符的位置,可以在eclipse里面切换java文件的编码方式,比如:ISO-8859-1,等编码,可以观察到指定位置的非法字符。删除非法字符即可编译通过。原创 2008-04-23 17:26:00 · 1628 阅读 · 0 评论 -
Java排列组合算法
1、全排列算法import java.util.ArrayList;/** * 全排列算法 * */public class Arrange { private int total = 0; private ArrayList arrangeList = new ArrayList(); public Arrange() { } priva转载 2008-03-20 13:18:00 · 14788 阅读 · 4 评论 -
唯一ID发生器
public class IdentifierGenerator { private static long lastTimeMillis = System.currentTimeMillis(); private static int count = 0; private IdentifierGenerator() { } public synchron原创 2008-03-11 18:10:00 · 784 阅读 · 0 评论 -
Java加密算法(DES,MD5)
import java.security.Security;import javax.crypto.Cipher;import javax.crypto.KeyGenerator;import javax.crypto.SecretKey;public class DesEncode { private static String Algorithm="DES"; //定义 加密算法,可用原创 2008-03-06 18:38:00 · 1230 阅读 · 0 评论 -
Java读取不同字符集格式的文本文件
String sql = ""; BufferedReader reader = null; try ...{ File f = new File(filePath); reader = new BufferedR原创 2007-12-14 10:58:00 · 1470 阅读 · 0 评论 -
字节码与16进制字符串相互转换
//字节码转换成16进制字符串 public static String byte2hex(byte[] b) { String hs=""; String stmp=""; for (int n=0;nb.length;n++){ stmp=(java.lang.Integer.toHexString(b[n] & 0XFF)); if (stmp原创 2008-03-06 18:19:00 · 2801 阅读 · 0 评论 -
关于JDBC的使用
1、Connection conn = ConnectionUtil.getConnection(); setAutoCommit(boolean autoCommit) 将此连接的自动提交模式设置为给定状态。如果连接处于自动提交模式下,则将执行其所有 SQL 语句, 并将这些语句作为单独的事务提交。否则,其 SQL 语句将成组地进入通过调用 commit 方法或 rollback 方法终原创 2008-06-06 18:18:00 · 837 阅读 · 0 评论