类加载器
1、直接用Class.ForName(类的路径名)
Class.forName("com.hsf.ClassLoader.ClassLoader");
2、用ClassLoder (类加载器)
InputStream in = ClassLoader.getSystemResourceAsStream("aa.txt");
byte[] bs= new byte[1024];
try {
int len=in.read(bs);
//把字节转换成String
System.out.println(new String(bs,0,len));
} catch (IOException e) {
e.printStackTrace();
}```
小知识点:
1、把字节转换成String
System.out.println(new String(bs,0,len));
2、将String转换成字节数组
String string="aaaa";
byte[] bytes = string.getBytes();
配置文件的读写
数据库的账号和密码可能会发生变更,所以这些都不应该写在程序中,而应该写在配置文件中,读取配置文件,这样修改起来也比较方便。
以下是读取配置文件的代码:
static
{
try
{
Properties properties = new Properties();
// JdbcUtil.class.getClassLoader();
InputStream in =JdbcUtil.class.getClassLoader().getResourceAsStream("jdbc.properties");
System.out.println("in="+in);
//InputStream in = ClassLoader.getResourceAsStream("jdbc.properties");
//装载文件
properties.load(in);
forName = properties.getProperty("forName");
url = properties.getProperty("url");
username = properties.getProperty("username");
password = properties.getProperty("password");
//不需要每次都加载一次驱动
Class.forName(forName);
} catch (Exception e) {
e.printStackTrace();
}
}
注意:配置文件里面字符串一定不要用“”,在写的过程中由于password为空,在配置文件里面写成了password =“”,所以就报了数据库连接错误。还有就是 InputStream in =JdbcUtil.class.getClassLoader().getResourceAsStream(“jdbc.properties”); 这里一定不能写成getSystemResourceAsStream。