17.12.13,web学习第二十五天,还有一年,努力吧青年动态代理
来源:互联网 发布:mongodb是什么数据库 编辑:程序博客网 时间:2024/05/22 19:48
类加载器,注解,动态代理
1. 类加载器:
BootStrap :引导类加载器。 JRE下面的rt.jar。运行时环境。
ExtClassLoader 扩展类加载器。加载基础的文件。
AppClassLoader AppclassLoader。三方jar包和自己写的java文 件。
ClassLoader可以获得classes(src)下的所有资源。
String path=classLoader.getResource(“相对 classes(src)path”).getPath();
//classLoader.getResourceAsStream()获得流;
ClassLoader和Properties配合使用加载配置文件。
2. 注解:@xxx
给程序员看,给jvm看。
主流作用:代替xml配置文件。
两者的优缺点:
注解:开发效率高,耦合度高
配置文件:开发效率低,耦合度低
Jdk5提供的注解:
@override:告知编译器此方法是重写父类的。
@Deprecated :标注过时。
@SuppressWarnings:压制警告 如list泛型
不同的注解只能在不同的位置上使用。
自定义注解:(了解)会使用即可!!!
框架帮我们编写,解析注解,我们只会用即可!
3. 动态代理proxy
InvocationHandler接口中invoke方法的三个参数:
proxy:代表动态代理对象
method:代表正在执行的方法
args:代表调用目标方法时传入的实参
目标对象必须有接口 没有接口不能实现jdk版动态代理。
invocationHandler的invoke()方法,代理类每一个方法执行时都会 调用一次invoke()方法。
public class Proxys {@Testpublic void dail() {Proxys proxys = new Proxys();//newPro是代理对象,根据参数确定是谁的代理对象//在运行中,动态的为JBdemo创建一个虚拟的代理对象//与目标对象相同的类加载器//AAA newPro = (AAA) Proxy.newProxyInstance(JBdemo.class.getClassLoader(), JBdemo.class.getInterfaces(), new InvocationHandler() { @Overridepublic Object invoke(Object proxy, Method method, Object[] args) throws Throwable {if (method.getName().equals("sleep")) {System.out.println("sleep");}return method.invoke(new JBdemo(), args); //执行目标对象的方法}}); newProxyInstance.sleep();}}
- 17.12.13,web学习第二十五天,还有一年,努力吧青年动态代理
- 17.12.06,web学习第二十天,还有一年,努力吧青年商城增删改查记忆
- 17.12.16,web学习第二十七天,还有一年,努力吧青年redis
- 17.12.17,web学习第二十八天,还有一年,努力吧青年shop
- 17.12.19,web学习第二十九天,还有一年,努力吧青年ajax,cookie,分类分页显示
- 17.11.16,web学习第五天,还有一年,努力吧青年!
- 17.11.29,web学习第十五天,还有一年,努力吧青年Request
- 17.12.25,web学习第三十二天,还有一年,努力吧青年 商城项目第五天 我的订单回显和文件上传
- 17.12.01,web学习第十六天,还有一年,努力吧青年cookie和session
- 17.12.03,web学习第十七天,还有一年,努力吧青年JSP
- 17.12.04,web学习第十八天,还有一年,努力吧青年EL和JSTL
- 17.12.05,web学习第十九天,还有一年,努力吧青年事务mysql
- 17.12.10,web学习第二十二天,还有一年,努力吧青年Ajax
- 17.12.11,web学习第二十三天,还有一年,努力吧青年Listener
- 17.12.12,web学习第二十四天,还有一年,努力吧青年过滤器Filter
- 17.12.14,web学习第二十六天,还有一年,努力吧青年 Linux入门
- 17.11.13,web学习第三天,还有一年,努力吧青年!
- 17.12.09,web学习第二十一天,还有一年,努力吧青年商品条件查询和分页查询
- 104. Maximum Depth of Binary Tree
- 二.PullToRefresh 主方法里面
- caffe画 feature map
- 深吸一口奶茶,领取个京东云免费VPS
- 团队项目负责人的一些感悟
- 17.12.13,web学习第二十五天,还有一年,努力吧青年动态代理
- sm(spring+mybatis)注释版的整合
- 递归法查找特定后缀或关键字文件返
- 程序设计与算法(一)C语言程序设计CAP 第一周
- 国家纪念日,让你的网站全站和图片变成灰色代码
- adb shell am start -d 启动应用之uri被*吃了
- aframe.js通过three.js的THREE.PlaneGeometry创建随机山地地形
- 递归和回溯经典题目--n皇后问题
- 各种动画