南通营销网站制作搜狐新闻手机网
- 作者: 五速梦信息网
- 时间: 2026年03月21日 10:16
当前位置: 首页 > news >正文
南通营销网站制作,搜狐新闻手机网,广州市重点公共建设项目官网,网站权重是什么意思spring 1.优点 1#xff09;针对接口编程#xff0c;解耦合 2#xff09;aop#xff1a;变向切面编程#xff0c;动态增加功能 3#xff09;方便集成框架#xff0c;mybatis,hibernate,strust等 4#xff09;降低j2ee接口的使用难度 2.spring是干什么的 管理bean及bean…spring 1.优点 1针对接口编程解耦合 2aop变向切面编程动态增加功能 3方便集成框架mybatis,hibernate,strust等 4降低j2ee接口的使用难度 2.spring是干什么的 管理bean及bean的依赖关系的一个容器为降低bean之间耦合度问题而开发核心是控制反转IOC和面向切面编程AOP 控制反转(IOC:)对象的创建交给容器来完成 面向切面编程(AOP)系统级服务和主业务逻辑分开降低耦合度使系统级服务织入主业务逻辑 IOC: 3.(配置式开发)spring容器都干了什么 读取配置文件 创建bean对象使用反射机制调用无参构造方法将对象保存在内存Map中 给有依赖关系的对象赋值 4.spring容器的实现接口有哪些 ApplicationContext创建容器时就创建了bean对象并将对象放到内存中 BeanFactory创建容器对象时不创建bean对象懒加载模式用的时候才创建 5.spring框架中bean对象的创建过程有几种创建方式 在配置文件中使用bean标签注册bean对象 2种方式 默认创建方式调用bean对象的无参构造方法 (实例)工厂模式创建bean需要在配置文件中注册工厂对象以及注册工厂对象的方法此方式耦合度高因为实例工厂中写死了Java对象 6.什么是工厂模式什么时候用工厂模式 工厂模式当创建对象时若比较繁琐可以将这些繁琐的创建过程封装到一个方法中调用此方法来创建对象这就是工厂模式 什么时候用创建复杂对象时 7.spring框架中bean的作用域 在配置文件中使用scope关键子给bean指定作用域 spring支持5种作用域singleton(单例作用域spring默认的作用域)、prototype(原型作用域每创建一次都是新的对象)、request、session、globalSession 8.spring中给bean对象的属性赋值也叫注入 对bean对象属性赋值同样是由容器完成的 根据注入方式不同分为2种 设值注入调用bean对象的set方法给属性赋值(常用) 构造注入调用bean对象的构造方法时给属性赋值并创建对象(不常用) 根据注入的实现方式不同也分2种 1.基于配置文件(掌握内容较多不常用) 2.基于注解:(掌握常用) 9.注解式开发bean对象的创建创建前需要做什么 在配置文件中使用context:component-scan标签注册组件扫描器 多个包下都使用了注解怎么解决 1.使用多次context:component-scan标签 2.base-package值中使用逗号或分号分隔(推荐使用此方法) 3.指定父包(不推荐使用) 10.基于注解方式开发创建bean对象有哪些注解怎么用 以下注解均是用于创建对象 Repository用在Dao层的类上 Service用在Service层的类上 Controller用在UI层的类上 Component以上三个注解都不能使用或者不合格使用时就使用此注解不使用value属性时对象的名称默认是类名的首字母小写 11.基于注解方式开发设置bean对象的作用域 使用Scope注解在value值中设置 12.基于注解方式开发给bean对象赋值有哪些注解怎么用 以下注解均是用于给属性赋值 Value给简单类型属性赋值可以放在属性定义上(不需要set方法的)可以放在属性的set方法上 Autowiredspring框架中的。给引用类型的属性赋值默认是按类型注入的。若按名称来注入需同时使用Qualifier(valueBeanID)注解 Autowired有一个属性required默认为true意思是必须成功给引用类型赋值否则程序终止并报错。若为false意思是不能成功赋值则为null Resource不是spring框架中的是jdk中的。给引用类型的属性赋值默认是按类型注入的。若按名称来注入需要使用Resource注解的name属性name属性指定BeanID 给属性赋值一般是设值注入不使用构造注入。 13.bean对象的生命始末 基于配置文件在bean标签中使用属性init-method、destroy-method 基于注解方式在方法上使用PostConstruct(bean对象初始化后执行)、PreDestroy(bean对象销毁之前执行) 14.spring框架中配置文件和注解同时使用谁的优先级高 配置文件的优先级高 15.spring框架中配置文件和注解的优缺点 配置文件(灵活)对其所作的修改无需编译代码只需重启服务器即可 注解(高效)配置方便直观但修改代码后需重新编译 AOP: 16.什么是代理模式什么时候用代理模式 代理模式为目标对象提供代理服务从而控制对目标对象的访问及对目标对象的功能增强 什么时候用当访问一个目标对象时达不到想要的效果可以访问代理对象代理对象可以对其进行访问控制及功能增强 代理模式的作用功能增强(对目标对象目标方法的返回值做处理)和控制访问(比如控制在某些条件下可以调用目标对象的方法某些条件下不能调用) 代理模式的分类 静态代理代理对象在程序运行前就已经定义好了其与目标对象的关系在程序运行前就已经确立了 动态代理目标对象的代理对象是由代理生成工具在程序运行时由JVM通过反射机制动态生成的代理对象与目标对象的关系也是在程序运行时才确定的 jdk动态代理 1.目标对象实现接口方法(有了目标对象、目标方法)(jdk动态代理要求目标对象要实现接口) 2.实现InvocationHandler接口创建调用处理器类并且实现invoke方法(调用处理器的作用是截取对目标方法的调用) public Object invoke(Object proxy,Method method, Object[] args) Object proxy代理对象 Method method目标方法 Object[] args目标方法的参数 返回值Object目标方法的返回值 3.通过Proxy接口的newProxyInstance方法创建代理对象 static Object newProxyInstance(ClassLoader loader, Class[] interfaces, InvocationHandler h) ClassLoader loader目标对象的类加载器(target.getClass().getClassLoader()) Class[] interfaces目标对象的接口(target.getClass().getInterfaces()) InvocationHandler h调用处理器 4.通过代理对象调用目标方法 cjlib动态代理(当目标对象没有实现接口时可以使用cglig动态代理)cglib动态代理原理是生成目标对象的子类(继承过来的)对子类进行增强子类即是代理对象(cglib动态代理要求目标类不能是final的) 1.导入cglib库 2.创建目标对象(不需要实现接口且不能是final修饰的) 3.实现MethodInterceptor接口创建调用处理器并且实现intercept方法(相当于cglib中的invoke方法) public Object intercept(Object proxy, Method method, Object[] objects, MethodProxy methodProxy) Object proxy代理对象 Method method目标方法 Object[] objects目标方法的参数 MethodProxy methodProxy方法的代理对象(与cglib的区别) 返回值object目标方法的返回值 4.通过Enhancer(增强器)类创建代理对象 Enhancer enhancer new Enhancer(); // 设置enhancer对象的父类 enhancer.setSuperclass(target.class); // 设置enhancer的回调对象 enhancer.setCallback(new MyMethodInterceptor()); // 创建代理对象 ProxyObject proxy (ProxyObject)enhancer.create(); 5.通过代理对象调用目标方法 17.什么是AOP 面向切面编程动态的将与主业务逻辑无关的代码(如事务、日志等)织入到主业务逻辑当中代码上不会出现混杂。AOP的底层采用的是动态代理默认采用的是jdk的动态代理。 18.AOP中几个重要的编程术语 切面反之交叉业务逻辑(例如事务、日志)。实际上就是对主业务逻辑的功能增强。常用的切面实现有通知和顾问。 织入将切面代码插入到目标对象的过程。 连接点可以被切面织入的方法通常业务接口中的方法均是连接点。 切入点织入了切面代码的方法即业务接口中被增强了的方法是切人点未被增强的方法是连接点。 目标对象要被增强的对象。 通知切面的一种实现。通知决定了切入的时间点(切入点决定了可以切入的位置)。例如是在目标方法执行之前执行切入还是在目标方法执行之后执行切入 顾问切面的一种实现。是一种高级的通知。 19.spring框架对AOP思想的实现之一通知 spring框架对AOP的思想进行了实现实现的方式是通知。通知有四个接口前置通知(MethodBeforeAdvice)、后置通知(AfterReturningAdvice)、环绕通知(MethodInterceptor)、异常通知(ThrowsAdvice) 20.spring框架之前置通知 实现MethodBeforeAdvice接口的类为前置通知是对目标方法的增强。 MethodBeforeAdvice接口中只有一个before方法public void before(Method method,Object[] args,Object target) Method method目标方法 Object[] args目标方法的参数 Object target目标对象 前置通知的特点 1.前置通知中before方法是在目标方法执行之前执行的 2.前置通知不能改变目标方法的执行流程 3.前置通知不能改变目标方法的执行结果 配置文件方式实现步骤需要在配置文件中配置如下信息 1.注册目标对象 2.注册通知类(切面) 3.注册代理工厂类 3.1在代理工厂内指定目标对象 3.2在代理工厂内指定目标对象实现的接口 3.3在代理工厂内指定切面
- 上一篇: 南通网站一个网站做多有几种颜色
- 下一篇: 南通优普营销网站建设网络推广公司成都
相关文章
-
南通网站一个网站做多有几种颜色
南通网站一个网站做多有几种颜色
- 技术栈
- 2026年03月21日
-
南通网站排名做网站学什么什么专业
南通网站排名做网站学什么什么专业
- 技术栈
- 2026年03月21日
-
南通网站建设知识南水北调建设管理局网站
南通网站建设知识南水北调建设管理局网站
- 技术栈
- 2026年03月21日
-
南通优普营销网站建设网络推广公司成都
南通优普营销网站建设网络推广公司成都
- 技术栈
- 2026年03月21日
-
南通专业网站制作wordpress管理员信息在哪
南通专业网站制作wordpress管理员信息在哪
- 技术栈
- 2026年03月21日
-
南头做网站公司大同建设银行保安招聘网站
南头做网站公司大同建设银行保安招聘网站
- 技术栈
- 2026年03月21日
