java获得当前系统内存及硬盘使用情况

November 27, 2009 by 阿桂  
Filed under java基础

啥也不说了直接看代码:

  1. import java.lang.management.ManagementFactory;
  2. import com.sun.management.OperatingSystemMXBean;
  3.  
  4. public class Test {
  5.  
  6.     public static void main(String[] args) {
  7.         OperatingSystemMXBean osmb = (OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean();
  8.         System.out.println("系统物理内存总计:" + osmb.getTotalPhysicalMemorySize() / 1024 / 1024 + "MB");
  9.         System.out.println("系统物理可用内存总计:" + osmb.getFreePhysicalMemorySize() / 1024 / 1024 + "MB");
  10.  
  11.     }
  12. }

 ManagementFactory.getOperatingSystemMXBean()返回的是java.lang.management里面的OperatingSystemMXBean ;
  我们要用的是com.sun.management.OperatingSystemMXBean;
  在java类库中可以查到:
  public abstract Interface com.sun.management.OperatingSystemMXBean extends java.lang.management.OperatingSystemMXBean
  所以我们可以强制转换一下。

jdk6.0下的磁盘使用情况例子:

  1. import java.io.File;
  2.  
  3. /**
  4.   *
  5.   * jdk6.0下的磁盘使用情况例子
  6.   */
  7. public class Diskfree {
  8.  
  9.     public static void main(String[] args) {
  10.         File[] roots = File.listRoots();//获取磁盘分区列表
  11.         for (File file : roots) {
  12.             System.out.println(file.getPath() + "信息如下:");
  13.             System.out.println("空闲未使用 = " + file.getFreeSpace() / 1024 / 1024 / 1024 + "G");//空闲空间
  14.             System.out.println("已经使用 = " + file.getUsableSpace() / 1024 / 1024 / 1024 + "G");//可用空间
  15.             System.out.println("总容量 = " + file.getTotalSpace() / 1024 / 1024 / 1024 + "G");//总空间
  16.             System.out.println();
  17.         }
  18.     }
  19. } 

Java获取操作系统信息

November 26, 2009 by 阿桂  
Filed under java基础

先看代码:

  1. import java.util.Properties
  2.  Properties props=System.getProperties(); //获得系统属性集 
  3.  String osName = props.getProperty("os.name"); //操作系统名称 
  4.  String osArch = props.getProperty("os.arch"); //操作系统构架 
  5.  String osVersion = props.getProperty("os.version"); //操作系统版本

或:

  1. String osName = System.getProperty("os.name"); //操作系统名称 
  2.  String osArch = System.getProperty("os.arch"); //操作系统构架 
  3.  String osVersion = System.getProperty("os.version"); //操作系统版本

public static String getProperty(String key)

键 相关值的描述
java.version Java 运行时环境版本
java.vendor Java 运行时环境供应商
java.vendor.url Java 供应商的 URL
java.home Java 安装目录
java.vm.specification.version Java 虚拟机规范版本
java.vm.specification.vendor Java 虚拟机规范供应商
java.vm.specification.name Java 虚拟机规范名称
java.vm.version Java 虚拟机实现版本
java.vm.vendor Java 虚拟机实现供应商
java.vm.name Java 虚拟机实现名称
java.specification.version Java 运行时环境规范版本
java.specification.vendor Java 运行时环境规范供应商
java.specification.name Java 运行时环境规范名称
java.class.version Java 类格式版本号
java.class.path Java 类路径
java.library.path 加载库时搜索的路径列表
java.io.tmpdir 默认的临时文件路径
java.compiler 要使用的 JIT 编译器的名称
java.ext.dirs 一个或多个扩展目录的路径
os.name 操作系统的名称
os.arch 操作系统的架构
os.version 操作系统的版本
file.separator 文件分隔符(在 UNIX 系统中是“/”)
path.separator 路径分隔符(在 UNIX 系统中是“:”)
line.separator 行分隔符(在 UNIX 系统中是“/n”)
user.name 用户的账户名称
user.home 用户的主目录
user.dir 用户的当前工作目录

通用提薪模版

November 19, 2009 by 阿桂  
Filed under 程序人生, 胡说八道

哈哈,前几天用的提薪模版,通用!

 经理好:

  随着我公司的不断发展,我个人的能力也在不断的提升和进步。这段共同成长的岁月里,同事们给予了我很多。我感谢公司领导对我的栽培和帮助。

  我是07年3月进入公司的,首先感谢公司领导对我的关心和重视,为我提供了这么好的工作环境。使我迅速的融入到工作中去,跟同事们打成一片,自加入xxxx公司以来,始终以快乐饱满的情绪投入到工作学习中去,一直认认真真、力求把工作做得尽善尽美,对公司的发展做出了自己应尽的责任,因为您是我的直接领导,这些您应该是了解的,您甚至可以从同事们那里得到对我的评价。

  我相信,只要付出,就会有收获,因此我向您提出加薪请求,希望领导对我的申请能够加以重视。

  如果公司领导认为我现在的工作内容及质量还未能达到加薪的要求,我诚恳的希望您能提出宝贵意见或建议,让我今后有一个努力的方向和目标,在提升自己能力的同时将工作做的更好,向更高的目标迈进。

  也请您放心,如果公司不予考虑,我仍然会像以前一样,用积极的、认真负责的态度去做好每一件事,不会因此怠慢工作,这不是我惟一的追求。

  此致

  敬礼

  申请人:XXX

  2009年11月

五笔字根表--备忘

November 11, 2009 by 阿桂  
Filed under 程序人生, 胡说八道

五年多了,五笔字根表忘的差不多了,现在只有靠第一反映打字,如果打不出来会很麻烦,所以温习一下:

11G   王旁青头戋五一

12F   土士二干十寸雨

13D   大犬三(羊)古石厂 (“羊”指羊字底)

14S   木丁西

15A   工戈草头右框七   (“右框”即“匚”)

21H   目具上止卜虎皮   (“具”指具字的上部)

22J   日早两竖与虫依

23K   口与川,字根稀

24L   田甲方框四车力   (“方框”即“囗”)

25M   山由贝,下框几

31T   禾竹一撇双人立,反文条头共三一 (“条头”即“夂”)

32R   白手看头三二斤

33E   月彡(衫)乃用家衣底

34W   人和八,三四里

35Q   金勺缺点无尾鱼,犬旁留儿一点夕,氏无七(妻)

41Y   言文方广在四一,高头一捺谁人去

42U   立辛两点六门病(疒)

43I   水旁兴头小倒立

44O   火业头,四点米

45P   之宝盖,摘 礻(示)衤(衣)

51N   已半巳满不出己,左框折尸心和羽

52B   子耳了也框向上

53V   女刀九臼山朝西(彐)

54C   又巴马,丢矢矣(厶)

55X   慈母无心弓和匕,幼无力(幺)

以后没事多吃点--排毒功能最强的20种食物

November 10, 2009 by 阿桂  
Filed under 心情笔记, 胡说八道

以后没事多吃点,但不能过度的吃。

1.地瓜SweetPotato

地瓜所含的纤维质松软易消化,可促进肠胃蠕动,有助排便。最棒的吃法是烤地瓜,而且连皮一起烤、一起吃掉,味道爽口甜美。

2.绿豆MungBeans

绿豆具清热解毒、除湿利尿、消暑解渴的功效,多喝绿豆汤有利于排毒、消肿,不过煮的时间不宜过长,以免有机酸、维持生活素受到破坏而降低作用。

3.燕麦Oats

燕麦能滑肠通便,促使粪便体积变大、水分增加,配合纤维促进肠胃蠕动,发挥通便排毒的作用。将蒸熟的燕麦打成汁当作饮料来喝是不错的选择,搅打时也可加入其他食材,如苹果、葡萄乾,营养又能促进排便!
Read more

Firefox内存优化--让firefox释放占着的内存

November 10, 2009 by 阿桂  
Filed under 其它

如果你经常用firefox的话,应该经常为他占用150M~200M甚至更多的内存而感到郁闷,一个小技巧让它全部吐出来:

1.打开FireFox,在地址栏里输入about:config
2.按右键,选择新建——>布尔
3.在弹出的框里输入config.trim_on_minimize
4.然后选True
5.重新启动FireFox

重启后将FireFox最小化,现在调出任务管理器看看FireFox的内存占用是不是低于10MB了?对,这个简单的优化能让你在最小化、最大化FireFox的时候,把它占用的多余内存都释放出来;并且当你刷新网页的时候,一部分内存也会被释放掉,达到占用更少内存的目的。其实这是IE7以及Opera早就默认具备的特性,只是FireFox还没有加上而已。

Asp用FSO组件重命名文件

November 9, 2009 by 阿桂  
Filed under 其它

方法一:

  1. Dim fso
  2.    Set fso = CreateObject("Scripting.FileSystemObject")
  3.   fso.MoveFile server.mappath("1.html"),server.mappath("2.html")
  4.    Set fso=Nothing

方法二:

  1. Dim fso,f
  2.    Set fso = CreateObject("Scripting.FileSystemObject")
  3.         Set f = fso.GetFile(server.mappath("1.html"))
  4.                 f.name="2.html"
  5.         Set f=Nothing
  6.    Set fso=Nothing

我试过方法一,没有方法二好用。。。建议用第二种方法

2009-10-17美年体检报告

November 7, 2009 by 阿桂  
Filed under 心情笔记, 胡说八道

一般检查(1) 检查医生:魏琳
检查项目名称 结果 单位 正常范围值
身高 173.6 Cm
体重 61.7 kg
体重指数(18.5-23) 20.50
理想体重(kg) 66.20
收缩压 117 mmHg
舒张压 69 mmHg
脉搏(次/分) 82
小结 体重指数:20.50,体重正常范围;
血压:117/69mmHg

内科检查 检查医生:赵一英
检查项目名称 结果 单位 正常范围值
病史
心率 72 次/分
呼吸 16 次/分
心律 整齐
心音 未见异常
心脏杂音 未见异常
肺罗音 未见异常
呼吸音 未见异常
腹壁 未见异常
肝大小 未见异常
肝脏质地 未见异常
肝脏压痛 未见异常
脾大小 未见异常
脾脏质地 未见异常
脾脏压痛 未见异常
其他 未见异常
小结 内科检查未见异常
Read more

SQL3550W 带GENERATED ALWAYS字段的表的import

November 6, 2009 by 阿桂  
Filed under db2, 数据库技术

果表里有字段定义为GENERATED ALWAYS,那么import的时候会报错:

SQL3550W The field value in row “1″ and column “1″ is not NULL, but the
target column has been defined as GENERATED ALWAYS.

参照《包含生成列的 DB2 表上的数据移入和移出 — 入门》,用以下语句来导入数据:

db2 “import from of del|ixf modified by identityignore insert into #tablename# “

MyEclipse7.5英文正式版

November 5, 2009 by 阿桂  
Filed under java基础

MyEclipse7.5英文正式版下载地址:http://www.accptech.com/plus/download.php?open=0&aid=957&cid=3
破解:
编译运行如下代码

  1. /*
  2. * To change this template, choose Tools | Templates
  3. * and open the template in the editor.
  4. */
  5.  
  6. import java.io.BufferedReader;
  7. import java.io.IOException;
  8. import java.io.InputStreamReader;
  9.  
  10. public class MyEclipseGen {
  11.  
  12.     private static final String LL = "Decompiling this copyrighted software is a violation of both your license agreement and the Digital Millenium Copyright Act of 1998 (http://www.loc.gov/copyright/legislation/dmca.pdf). Under section 1204 of the DMCA, penalties range up to a $500,000 fine or up to five years imprisonment for a first offense. Think about it; pay for a license, avoid prosecution, and feel better about yourself.";
  13.  
  14.     public String getSerial(String userId, String licenseNum) {
  15.         java.util.Calendar cal = java.util.Calendar.getInstance();
  16.         cal.add(1, 3);
  17.         cal.add(6, -1);
  18.         java.text.NumberFormat nf = new java.text.DecimalFormat("000");
  19.         licenseNum = nf.format(Integer.valueOf(licenseNum));
  20.         String verTime = new StringBuilder("-").append(
  21.                 new java.text.SimpleDateFormat("yyMMdd").format(cal.getTime())).append("0").toString();
  22.         String type = "YE3MP-";
  23.         String need = new StringBuilder(userId.substring(0, 1)).append(type).append("300").append(licenseNum).append(verTime).toString();
  24.         String dx = new StringBuilder(need).append(LL).append(userId).toString();
  25.         int suf = this.decode(dx);
  26.         String code = new StringBuilder(need).append(String.valueOf(suf)).toString();
  27.         return this.change(code);
  28.     }
  29.  
  30.     private int decode(String s) {
  31.         int i;
  32.         char[] ac;
  33.         int j;
  34.         int k;
  35.         i = 0;
  36.         ac = s.toCharArray();
  37.         j = 0;
  38.         k = ac.length;
  39.         while (j < k) {
  40.             i = (31 * i) + ac[j];
  41.             j++;
  42.         }
  43.         return Math.abs(i);
  44.     }
  45.  
  46.     private String change(String s) {
  47.         byte[] abyte0;
  48.         char[] ac;
  49.         int i;
  50.         int k;
  51.         int j;
  52.         abyte0 = s.getBytes();
  53.         ac = new char[s.length()];
  54.         i = 0;
  55.         k = abyte0.length;
  56.         while (i < k) {
  57.             j = abyte0[i];
  58.             if ((j >= 48) && (j <= 57)) {
  59.                 j = (((j - 48) + 5) % 10) + 48;
  60.             } else if ((j >= 65) && (j <= 90)) {
  61.                 j = (((j - 65) + 13) % 26) + 65;
  62.             } else if ((j >= 97) && (j <= 122)) {
  63.                 j = (((j - 97) + 13) % 26) + 97;
  64.             }
  65.             ac[i] = (char) j;
  66.             i++;
  67.         }
  68.         return String.valueOf(ac);
  69.     }
  70.  
  71.     public MyEclipseGen() {
  72.         super();
  73.     }
  74.  
  75.     public static void main(String[] args) {
  76.         try {
  77.             System.out.println("please input register name:");
  78.             BufferedReader reader = new BufferedReader(new InputStreamReader(
  79.                     System.in));
  80.             String userId = null;
  81.             userId = reader.readLine();
  82.             MyEclipseGen myeclipsegen = new MyEclipseGen();
  83.             String res = myeclipsegen.getSerial(userId, "5");
  84.             System.out.println("Serial:" + res);
  85.             reader.readLine();
  86.         } catch (IOException ex) {
  87.         }
  88.     }
  89. }

运行该代码,在控制台中会出现:
please input register name:
×××××(你的name,随便什么)
即生成序列号: ××××× ××××× ×××××…