Java与企业应用
iteye_20913
这个作者很懒,什么都没留下…
展开
-
像座山似的问题
因为原理知识或实践经验缺乏的缘故,编码过程中,常常会遇到这种问题;这问题像座大山似的,横亘在你面前,让你苦思不得其解,必欲除之而后快;而一旦解决,无论是自己解决还是别人帮你解决的,那种轻松与愉悦也是常人难以体会的。今天,就遇到了这样一个问题。一个IE7(包括IE6)下焦点的无法set的问题(Firefox下没有问题),试了一下午,拼命的试拼命的试拼命的试,就是不成功。基本流程是这样...原创 2008-01-11 20:39:08 · 95 阅读 · 0 评论 -
关于SWT,JFace,GEF,Draw2D等一些概念
首先看一下各个简写代表的含义。 SWT: Standard Widget ToolkitJava的GUI技术,与AWT/Swing互为竞争对手,Eclipse基于其上(相似的,NetBean基于Swing)。纯粹的面向对象设计,底层利用操作系统的图形资源,用其编写的程序跨平台(所依赖包不能跨平台,因此不能在Windows下打包SWT程序,然后在Unix下运行,只是源代码可跨...原创 2007-11-12 22:12:00 · 231 阅读 · 0 评论 -
Struts 2 + Spring 2 + JPA + AJAX示例
这个例子其实就是来自Struts 2的文档,但是原例子针对的是Struts 2.0版本。鉴于Struts2.1 版本不再推荐使用Dojo的plugin,这个例子要在Struts 2.16下跑起来颇费功夫,关于dojo plugin的部分许多都要改。原文见:[quote]http://struts.apache.org/2.1.6/docs/struts-2-spring-2-jpa-aja...2009-09-12 21:18:46 · 100 阅读 · 0 评论 -
Java循环内goto语句的替代方案
众所周知,Java虚拟机根本没有实现goto关键字。我的一个函数需要这样的算法,在一个循环里,如果某一次循环不满足条件,那么整个循环需要重新开始。比如下面的例子,我想连续3次打印出随机数[b]都[/b]是0的情况。[code] private void incorrectGotoSample() { int printNum = 3; Random r = new Random...2010-12-12 23:04:31 · 259 阅读 · 0 评论 -
统计项目中Java文件数和Java代码行数
其实就是使用递归遍历目录下所有文件[code]import java.io.BufferedReader;import java.io.File;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;public class JavaCo...2010-12-25 11:51:25 · 243 阅读 · 0 评论 -
关于Java的“浅拷贝”和“深拷贝” (clone method)
这是关于Java的clone, 一些知道的和不知道的。1. 调用Object类中clone()方法产生的效果是:先在内存中开辟一块和原始对象一样的空间,然后[b]原样拷贝原始对象中的内容(也就是对clone对象各字段以=号赋值)[/b]。对基本数据类型,这样的操作是没有问题的,但对非基本类型变量,我们知道它们保存的仅仅是对象的引用,这也导致clone后的非基本类型变量和原始对象中相应的变量...2012-07-24 14:31:55 · 178 阅读 · 0 评论 -
关于Java中的哈希表 HashMap,Hashtable 等
[b]首先来了解一下基本概念[/b]所谓哈希表(Hash Table,又叫散列表),是存储键值对(Key-value)的表,它有下面的特性:[b]它能把关键码(key)映射到表中的一个位置来直接访问,这样访问速度就非常快[/b]。其中的映射函数称为散列函数(Hash function)。1) 对于关键字key, f(key)是其存储位置,f则是散列函数2) 如果key1 !...2012-07-27 10:10:53 · 177 阅读 · 0 评论 -
关于Java的UUID
UUID或者UNID或者UID,是一个统一唯一标识,可以用来标记文档、数据或其它需要唯一标识的东西。Java 5.0内置UUID的实现,见java.util.UUID. 下面代码是找到的2种实现方式,随手测了一下,两者时间效率居然出奇的相似,在10000000次循环中,均在660秒左右。[code="java"]import java.math.BigInteger;import ja...2012-08-30 18:40:13 · 185 阅读 · 0 评论 -
统一批量修改照片名字
在给小宝拍的照片中,有我手机拍的,有媳妇手机拍的,还有相机拍的,于是每个月给小宝选的30张照片中,文件命名很乱。现在根据文件修改属性,统一按时间戳命名,精确到秒。程序如下:(程序规模小,因此未考虑潜在的重名问题)[code="java"]import java.io.File;import java.text.SimpleDateFormat;import java.u...2012-09-01 14:00:07 · 392 阅读 · 0 评论 -
从某网站下载MP3的例子
从某网站下载MP3的例子。为安全起见,将网站信息匿了。[code="java"]package tools.download;import java.io.BufferedInputStream;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;imp...2012-05-29 23:14:09 · 229 阅读 · 0 评论 -
Java 处理mail subject
对于mail subject 前面烦人的各种Re: 或Fw: 做一个有效的清除,代码如下:[code="java"]public class TestString { static String [] test = { "clean subject 0", "Re: clean subject 1", "Fw: clean subject 2", "RE...原创 2015-06-15 21:16:17 · 702 阅读 · 0 评论 -
随机密码生成
[code="java"]import java.util.Random;public class RandomPassword { private int length = 8; // password length private int numLen = 2; // count of numbers private int nonABN...原创 2015-09-10 10:19:40 · 132 阅读 · 0 评论 -
有趣的将一个十进制整数转换成二进制输出的算法
原题是将一个十进制整数转换成二进制输出。分析:任何数可以表达为: n = (n / div )* div + n % div这使用了Java中2个整数相除,结果仍是整数的特点。最先得到的余数是低位的,然后位数逐渐增加,直到n/div等于0为止,这里的div是2。代码实现如下:[code="java"]import java.util.Scanner;import jav...原创 2013-02-27 00:20:09 · 342 阅读 · 0 评论 -
有趣的统计英文字母频率的例子
统计的是英文版"悲惨世界",代码如下,使用ascii值做数组下标直接赋值:[code="java"]import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.IOException;import java.text.DecimalFormat;...原创 2013-03-01 01:13:07 · 214 阅读 · 0 评论 -
有趣的统计英文单词频率的例子
统计一篇英文文档或一本小说中单词出现的次数,下面代码使用的是英文版小说"悲惨世界"做例子。 有两个需要注意的地方,一个是如何使用正则式分割单词,一个是HashMap中对元素按值排序无法直接完成,中间做了一下转化:[code="java"]import java.io.BufferedReader;import java.io.File;import java.io.FileRe...原创 2013-03-02 00:22:20 · 641 阅读 · 0 评论 -
Java线程编程学习笔记(二)
这里是上一篇:[url=http://metaphy.iteye.com/blog/364187]Java线程编程学习笔记(一)[/url]Java线程编程学习笔记(二)26. Threads can also use thread-specific variables that keep a different value for different threads by usi...2009-06-11 17:23:16 · 90 阅读 · 0 评论 -
Java线程编程学习笔记(一)
"Java Thread Programming" by Paul Hyde(本书在Amazon.com 5星推荐,不幸的是成书较早,内容都是针对JDK1.2的,不知道有没有关于新版本的)2009.4.11.即使最简单的Java程序,比如打印“hello world”到Console,也运行在一个多线程的环境中(会有2个线程):main线程和垃圾收集线程。一个有GUI的Java...2009-04-09 10:46:05 · 94 阅读 · 0 评论 -
四国军旗界面的AWT/Swing实现进度
很遗憾的说“四国军棋界面的EclipseRCP实现”无疾而终。用GEF实现时候碰到很多困难。多线程问题、和用户的交互问题,在GEF中似乎都是mission impossible;而这些却是一个游戏的基本概念。 教训还是很多的。其一,不了解需求,即一个棋类游戏的基本概念;其二,不了解技术,尤其不了解所用的框架,只是边学边用,不知道用这种技术的局限性。收获还是有的,至少这一MVC框架和概念仍然可以在S...2008-01-22 21:14:55 · 135 阅读 · 0 评论 -
八皇后问题
根据C程序改的Java的实现。以下为已知的N-皇后解数目。[code]public class Queens { private int[] queens = new int[8]; //解数组 private int[] colflag =new int[8]; //列冲突标记 private int[] flags1 = new int[15]; //对角线冲突标记 p...2008-02-04 15:07:14 · 87 阅读 · 0 评论 -
算术表达式求值
词法分析[code]package compile;/** * 词法分析:返回数字和操作符号的序列 * @author metaphy * 2007-6-14 */public class Lexer { public static final String EOS = " " ; /*token之间的分隔符*/ public static final Strin...2008-02-04 16:11:08 · 135 阅读 · 0 评论 -
分硬币问题的递归解法
确定将一定数量的钱(以分为单位)转换成两角五分的硬币,一角硬币,五分和一分硬币的方法总数。[code]import java.util.Stack;public class Coin { private static int[] coins = {25,10,5,1}; private static Stack roots =new Stack(); ...2008-02-17 13:36:10 · 466 阅读 · 0 评论 -
寻找可访问的随机网站(代码)
利用InetAddress.getAllByName(site)寻找随机网站。该方法,如果site可访问,则返回InetAddress[],否则将抛出UnknownHostException。程序一个明显的问题是效率不高,在无用的链接上浪费时间过多,平均每找到一个花时间2-5秒;这是很恐怖的。[code="java"]package corejava.chapter.network;...2008-03-19 15:00:47 · 1055 阅读 · 0 评论 -
复习一下排序算法
复习了一下排序算法。当年学数据结构的时候学的是头大脑袋蒙;现在依然蒙,但不像以前蒙的那么厉害了。[code="java"]package algorithm.sort;public class Sort { private static int[] list = {7,3,4,1,9,2,8,5,6,0,5}; /** * 冒泡排序, O(n^2) */ pri...2008-03-25 20:03:13 · 97 阅读 · 0 评论 -
设计模式的练习代码
面试时候问到Builder模式,没答上来,受打击了,so,再把设计模式资料学习一遍。设计模式就是OO思想的升华,如果Java基础够好,面向对象思想理解够深入,一些模式在编程实践中自然就会用出来。这个代码中,包括了大部分模式的代码。还有一个教训就是:尽量看英文资料,许多地方比中文资料写的要明白清楚。-----------------------------------------...2008-05-05 13:11:59 · 183 阅读 · 0 评论 -
对JavaScript中原型的理解
从纯粹的面向对象思想(Java思想)向Javascript语言面向对象思想的转化,经历沉痛而惨烈。Javascript中对象和类的概念转化悄然不动声色,让人迷糊。有时候,对Java理解得越清楚,对Javascript理解起来就越费劲。尤其对Javascript的原型对象的理解颇费功夫。按照定义,每个javascript对象都有一个原型对象(简称原型),这个原型是由该对象的构造函数所定义(ja...原创 2007-06-18 18:31:00 · 120 阅读 · 0 评论 -
Eclipse插件管理方式
在另外的目录安装eclipse插件,便于管理,方法如下:1.假如eclipse安装目录为c:\eclipse 2.建立新目录c:\eclipse\plugins_new 和 c:\eclipse\links3.在c:\eclipse\plugins_new目录下放新插件,比如常用的GEF插件,C:\eclipse\plugins_new\GEF-ALL-3.2.2\eclipse\plugins,...原创 2007-06-20 15:13:35 · 145 阅读 · 0 评论 -
Java程序员面试题目
作者:metaphy日期:2007-5-30版本:V2.01说明:题目和答案源自metaphy过去知识、经验积累和网络,metaphy不能保证其正确性和完整性,仅供参考。转载请注明原作者及版本及该说明。(5573255960011251209L) Part I Java2基础知识▲面向对象编程语言的3个基本特征是什么?封装,继承,多态.(From: Thinking i...原创 2007-06-21 16:25:57 · 107 阅读 · 0 评论 -
一个可编辑Table对象
最近整理了一些过去的代码,发到这里,作为备份。这是一个可编辑的table对象,由Javascript实现,可惜只能在IE用,FF下有点小问题[img]http://dl.iteye.com/upload/attachment/156207/6f559b38-1a74-3d8f-a69d-d45cc796451e.jpg[/img]...原创 2007-06-26 20:32:40 · 150 阅读 · 0 评论 -
发布一个小系统,主要用的是struts1.x和Ajax的东西。
可导入Eclipse工程.文档进入系统可以看到。2007-07-26 18:19:38 · 217 阅读 · 0 评论 -
从Spring MVC-step-by-step发现的问题(Spring 2.5.2)
Spring2.5.2的MVC-step-by-step教程没有一点问题,按照它的步骤,能够创建一个完整的Spring的Demo.只是,教程里用的数据库是HSQL,当把HSQL换成我本地的MySQL5的时候,出现了问题。这个异常是在对产品价格update时出现的:[code]root causejava.sql.SQLException: Connection is read-only...2008-05-23 17:04:30 · 97 阅读 · 0 评论 -
学习Spring 2.5和Hibernate 3的代码示例
代码内容(每个包都是一个独立的应用,彼此不干涉):一个最小的、最简单的关于Spring framework的使用Demo,使用配置文件:spring-hello.xml一个简单的展示Spring AOP编程的例子一个学习使用Hiberante的例子(Hibernate Reference),使用MySQL5数据库,使用配置文件:hibernate.cfg.xml 和其他的映...2008-06-06 16:01:41 · 95 阅读 · 0 评论 -
有趣的“生命游戏”
“生命游戏”本世纪70年代,人们曾疯魔一种被称作“生命游戏”的小游戏,这种游戏相当简单。假设有一个像棋盘一样的方格网,每个方格中放置一个生命细胞,生命细胞只有两种状态:“生”或“死”。游戏规则如下:1、如果一个细胞周围有3个细胞为生(一个细胞周围共有8个细胞),则该细胞为生,即该细胞若原先为死,则转为生,若原先为生,则保持不变;2、如果一个细胞周围有2个细胞为生,则该细胞的生死状态保持...原创 2013-04-04 10:56:54 · 313 阅读 · 0 评论