Java开发Spring总结
来源:互联网 发布:淘宝怎么贷款额度 编辑:程序博客网 时间:2024/06/04 00:49
按照自己的理解谈谈控制反转给程序开发带来的好处
控制反转(lnversion of Control,loC),也称为依赖注入(Dependency lnjectiono,DI),是面向对象变成中的一种设计理念,用来降低程序代码之间的耦合度
首先考虑什么是依赖。依赖在代码中一般指通过局部变量,方法参数,返回值等建立的对于其他对象的调用关系。列入,在A类的方法中,实例化了B类的对象并调用其他方法以完成特定的功能,我们就说A类依赖于B类
几乎所有的应用都是由两个或更多的类通过彼此合作来实现完整的功能。类于类之间的依赖关系增加了程序开发的复杂程度,我们在开发一个类的时候,还要考虑正在使用该类的其他类的影响
请写出AOP的核心思想
IoC和AOP都是Spring的核心思想,
首先,IOC,控制反转,Spring开发的基本思想:面向接口的编程模式。框架做的越多,应该越能发现接口在其中起到的作用,而Spring将这种想法,开发贯彻到业务的开发中。Bean的Set方法使用接口作为参数,保证其扩张性,保证其扩展性,实现依赖关系的松偶尔。所谓的控制反转,作为中文更好的一个翻译应该是依赖注入,把依赖的类采用接口的方式,利用Set函数,传入Bean的内部,实现与外界的解耦合。这种输入可作用于构造函数。
其次,AOP,面向切面的变成方式。更通俗的说法应该是对容器内的Bean进行方法干涉。被容器中国创建的类,看起来执行一个普通函数调用,因为被容器预处理,而会在方法执行前/后进行一些其他的、可配置的操作。当然,这种方法也同意是面向接口的,或者直接使用反射的。利用Java.lang.reflect.InvocationHandler接口可以达到这种干涉的效果
理解Spring loc定义和原理
将组件对象的控制权从代码本身转移到外部容器
组建的思想:分离关注点,使用接口,不在关注实现
目的:解耦合。实现每个组件时(只关注主键内部的事情)
要点:明确定义组建将的接口
将组件对象的控制权从代码本身转移到外部容器
组件化的思想:分离关注点,使用接口,不在关注实现
明确定义接口,通过接口以多态的形式调用
依赖的注入:将组建的构建和使用分开
控制反转将组件对象的控制权转移到web容器
减低耦合性
提高扩展性
Spring设值注入
体会spring的优点
企业级系统
大规模:用户数量多,数据规模大,功能众多
性能和安全要求高
业务复杂(功能众多带来的必定是)
灵活应变(开发完成以后,在后期可能会增加需求或者反工)
Spring
轻量级框架,javaEE的春天,当前主流框架
“一站式”的去也应用开发框架
目标
使现有技术更加易用(支持角度考虑)
推进编码最佳实践(减少代码量)
内容
loC容器
AOP实现
数据访问支持
简化JDBC/ORM框架
声明式事物
Web集成
Spring的优点
低侵入式设计(在开发的时候不用依赖Spring提供的类)
独立各种应用服务(一次编写到处运行)
依赖注入特性将组件关系透明化,减低了耦合度(组件透明化理解为对象和对象之间的关系透明化)
面向切面编程特性允许将通用任务进行集中式处理(通用任务包括了日志和事物的控制,Spring把通用任务抽离出来。自动输出自动生成)
与第三方框架的良好整合(可以和其他的框架进行整合)
String体系结构
Test
(核心)Beans (核心)Core (核心)Contest ExpressionLanguage
AOP Aspects Instrumentation
Data Access/Integration Web(MVC/Remoting)(Spring自己提供了MVC框架
JDBC 对数据库编程 Web
ORM Servlet
OXM Portlet
JMS Struts
Transactions
掌握Spring的设计理念
Spring是面向Bean的编程
Spring两大核心技术
控制反转(loC:lnversion of Control)/依赖注入(DI:Dependency lnjection)
面向切面编程(AOP:Aspect Oriented Programming)
掌握spring三个核心组件的作用(spring比喻成演出,可以直观的看出组件的重要性
(主角)Beans(类似于java面向对象编程差不多,没有对象就没有面向对象编程。同理如果没有Beans就没有Spring存在的意义。Spring把对象封装在Beans里面进行管理(IOC))
(背景)Context(Context提供数据的生存和运行的环境,发现关系,维护关系)
(道具)Core(工具)
Spring弥补了EJB框架的不足,是j2EE的春天
Spring是面向bean的编程
Spring的两大核心技术
loC,DI
AOP
- Java开发Spring总结
- spring开发总结
- java web 开发组件 vs 框架spring大总结
- java,spring 注解总结
- dwr开发总结 dwr+spring
- 【开发总结】struts2整合spring
- java Spring邮件开发
- java开发ssm-spring
- Spring 总结XML配置的十二个最佳实践-Java基础-Java-编程开发
- Java 数据库开发总结
- java开发总结
- java webservice 开发总结
- java开发快捷键总结
- Java开发工具总结
- Java开发知识总结
- java开发工具总结
- Java开发-问题总结
- java开发总结
- Hadoop IO & HDFS manipulation 简介
- VUE开始到发布流程
- 二叉树
- 1060 爱丁顿数(25)
- TCP_proxy tcp代理详解
- Java开发Spring总结
- 从CNN视角看在自然语言处理上的应用
- 资本成本优势介绍
- 80211学习笔记
- NOIP-2016 天天爱跑步
- java从入门到精通学习笔记(三)——IO
- MQ(消息队列)简介
- 微信网页授权之回调域名
- C++——级数和