平时没怎么注意java.lang包中的其他类、今天看了毕向东老师视频、发现自己对于API的了解还真是少了、
首先是:System类、这个类关于java虚拟机和系统的相关信息,
import java.util.*;
public class SystemDemo{
public static void main(String[]args){
Properties prop = System.getProperties();
//properties 是hashmap的子类、也就是集合的子类
//内部操作的都是字符串没有泛型定义
//获得指定的属性信息
String value = System.getProperty("os.name");
System.out.println("操作系统类别"+value);
//如果是系统中没有的信息会返回null
String value2=System.getProperty("mykey");
System.out.println("对于系统中不存在的信息返回值:"+value2);
//可以设置到系统属性中一些值
System.setProperty("mykey","zll");
//可以在jvm启动时加载一些参数 java -Dzllkey lll
String value3=System.getProperty("zllkey");
System.out.println("虚拟机启动的时候可以加载参数:"+value3);
//打印系统中所有的Properties信息
for(Object str:prop.keySet()){
System.out.println((String)prop.get(str));
}
}
}
这些是对于System类加载系统信息的一些调用。
对于存储系统信息的Properties、存储着键值对、
java -Dzllkey="lllzzz" SystemDemo
通过这个我们可以、应用到我们自己的应用程序中、
过去我们的应用程序都是加载文件的方式启动的时候加载数据的、没想到这样也可以、又提供了一种思路、呵呵、
然后我在tomcat服务器中发现了catalina.bat、tomcat启动的时候就用了这种模式、启动的时候可以设置参数。
%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %JPDA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Djava.security.manager -Djava.security.policy=="%SECURITY_POLICY_FILE%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION%