关于ClassLoader的使用
来源:互联网 发布:风景线打印软件设置 编辑:程序博客网 时间:2024/06/06 00:39
了解ClassLoader:
/* * 了解类的加载器:ClassLoader * */@Test public void testClassLoader() { // 获取到系统类加载器,加载用户自己创建类 ClassLoader loader = ClassLoader.getSystemClassLoader(); System.out.println(loader); // 获取到扩展类加载器,加载D:\jdk1.6.0_45\jre\lib\ext目录下的jar包 ClassLoader loader2 = loader.getParent(); System.out.println(loader2); // 引导类加载器,获取不到 ClassLoader loader3 = loader2.getParent(); System.out.println(loader3); } // 举例:对于自定义类,是使用系统类加载器加载 String className = "com.atguigu.java.Person"; ClassLoader classLoader = Class.forName(className).getClassLoader(); System.out.println(classLoader); className = "java.lang.String"; classLoader = Class.forName(className).getClassLoader(); System.out.println(classLoader);
关于ClassLoader加载器的一个使用,需要掌握
包结构:
================================
jdbc.properties:
jdbc.user=rootjdbc.password=rootjdbc.driverClass=com.mysql.jdbc.Driverjdbc.jdbcUrl=jdbc:mysql://127.0.0.1:3306/jdbc1#jdbc.user=scott#jdbc.password=tiger#jdbc.driverClass=oracle.jdbc.driver.OracleDriver#jdbc.jdbcUrl=jdbc:oracle:thin:@127.0.0.1:1521:ORCL001
/* * 关于ClassLoader加载器的一个使用,需要掌握 */ @Test public void testClassLoader1() throws IOException { // 方式一:读取当前工程下的配置文件jdbc.properties Properties properties = new Properties(); FileInputStream inStream = new FileInputStream(new File( "jdbc.properties")); properties.load(inStream); String user = properties.getProperty("jdbc.user"); String password = properties.getProperty("jdbc.password"); String driverClass = properties.getProperty("jdbc.driverClass"); String url = properties.getProperty("jdbc.jdbcUrl"); System.out.println("user=" + user + "\npassword=" + password + "\ndriverClass=" + driverClass + "\nurl" + url); System.out.println("============================");===================================================== // 方式二:读取src目录下的配置文件 Properties properties2 = new Properties(); // InputStream inputStream = // ReflectTest.class.getClassLoader().getResourceAsStream("jdbc1.properties"); InputStream inputStream = this.getClass().getClassLoader() .getResourceAsStream("jdbc1.properties"); properties2.load(inputStream); String user2 = properties2.getProperty("jdbc.user"); String password2 = properties2.getProperty("jdbc.password"); String driverClass2 = properties2.getProperty("jdbc.driverClass"); String url2 = properties2.getProperty("jdbc.jdbcUrl"); System.out.println("user=" + user2 + "\npassword=" + password2 + "\ndriverClass=" + driverClass2 + "\nurl" + url2); System.out.println("============================");=============================================== // 方式三:读包目录下的配置文件 Properties properties3 = new Properties();// InputStream inputStream2 = this.getClass().getClassLoader()// .getResourceAsStream("com/atguigu/java/jdbc2.properties"); InputStream inputStream2 = this.getClass().getClassLoader() .getResourceAsStream("com\\atguigu\\java\\jdbc2.properties"); properties3.load(inputStream2); String user3 = properties3.getProperty("jdbc.user"); String password3 = properties3.getProperty("jdbc.password"); String driverClass3 = properties3.getProperty("jdbc.driverClass"); String url3 = properties3.getProperty("jdbc.jdbcUrl"); System.out.println("user=" + user3 + "\npassword=" + password3 + "\ndriverClass=" + driverClass3 + "\nurl" + url3); }
阅读全文
0 0
- 关于ClassLoader的使用
- 关于ClassLoader的原理
- 关于ClassLoader的知识点记录
- 关于Android的ClassLoader探索
- ClassLoader的分析与使用
- 关于ClassLoader
- 关于ClassLoader
- 关于ClassLoader
- 关于ClassLoader
- 关于ClassLoader
- 关于classloader
- 关于ClassLoader
- 关于Java的Classloader的讨论收获
- [转载]我的读书笔记 关于ClassLoader
- 关于Java classloader的加载机制
- 关于classLOader。。很有意思的东西
- 关于tomcat classloader的几篇文章
- ClassLoader使用
- 一些评教bug
- mac的Finder连接远程服务器(阿里云服务器)
- CocoaPods版本升级
- 闭包实例
- 【笔记】游戏制作技巧——2
- 关于ClassLoader的使用
- 我对于 JDK中 BIO/NIO/AIO 的理解
- Mybatis入门案例
- 前端开发的一些规范
- UVA 10050
- eclipse 安装windows builder的问题及解决办法
- JQuery之UI插件
- enterprisedb pg_ctrl 命令不支持解决
- python 入门学习