`
superbo8888
  • 浏览: 50964 次
  • 性别: Icon_minigender_1
  • 来自: 成都
最近访客 更多访客>>
社区版块
存档分类
最新评论

Spring之概念入门

阅读更多

Spring是什么
spring是一个开源的java框架,集成了各种主流的技术包括web mvc,orm,ejb,rmi,javamail等
他就象一个粘合济,在实际项目中,将前后台程序粘合在一起,构建出一个完整的系统。

spring中的各个组件也可独立使用,你可以在你的项目中选择性的使用spring提供的某一部分功能

Spring的核心是ioc和aop

什么是IOC

Inversion of Control,控制反转或反转控制,其和另外一个概念DI-Dependency Injection依赖注入
等价。

到底如何来理解IOC?

IOC确切的说,他是一种思想、概念,跟OOP是一种编程思想一样,他是在大量的项目实践中总结出来了
的一种精妙地程序设计思想。在原先的程序设计中,我们通常是通过new XXX(),其中,XXX就是某个类
的名称,在没有ioc思想引入时,我们程序中大量充斥着new XXX()这样的代码。这些代码都需要我们程
序员手工编写。而引入了ioc思想之后,对象的管理全部交给Spring这个容器来管理,当我们程序需要
对应类的对象时,我们直接从Spring容器里面获取,换句话说,就是Spring容器把产生好的对象交给了
我们的程序,这种方式就叫做注入(就跟医生拿着可怕的针管将液体注入到我们的屁股上一样,为什么
要注入,还不是你的屁股需要嘛!因为你需要,所以我给你,这就是DI)

而IOC的深层含义就是,将原先对象产生的主动权交给了Spring容器,由Spring容器来为我们完成对象的
new的过程,并将对象在我们需要时交给我们。

Spring正是IOC思想的一个完美产物和实践者!

什么是aop

Aspect Oriented Programming,面向方面编程,它也是一种编程思想,它是对OOP编程思想的一种升华
OOP强调的是对象,而aop强调的是面(不是饺子)

那么,什么是面?

如果拿我们的教室做比方,那么教室的前门和后窗就是一个面,一个截面,通过这样的截面,将我们这块
空间分成了室内、窗外和门外三部分。

如果拿我们吃的汉堡做比方,那么汉堡的夹心的前后就是一个面,一个截面,通过这样的截面,将我们的
普通面包分成了面包上层、夹心、面包下层。

如果。。。

还是拿我们的程序代码来说,
如果我们的dao用jdbc实现,那么在dao的每一个方法里都充斥着这样的代码,
 打开连接
 执行sql语句
 关闭连接
那么,这时,我们就可以在执行sql前后做出一个截面,通过这样的截面,将我们的程序代码分开,将打开
连接和关闭连接交给AOP去做,我们程序员只关注执行不同sql语句部分,避免了在dao的每个方法中都要编
写重复的打开连接和关闭连接代码。

如果我们的dao用hibernate实现,那么在dao的每一个方法里都充斥着这样的代码
 打开session
 执行session动作
 关闭session

同理,我们就可以在执行session动作前后做出一个截面,通过这样的截面,将我们的程序代码分开,将打开
session和关闭session交给AOP去做,我们程序员只关注执行session动作,避免了代码的重复岂不更好

这就是AOP,好好理解吧,那可是个漫长的思想体验过程!祝君好运!

 

 

 

 

 

 

 

 

 

分享到:
评论
15 楼 Emy 2008-04-20  
没看懂,我的错~!
14 楼 xuchuizi 2008-04-20  
杨老~~经典!!
13 楼 james.zhou 2008-03-27  
讲的很通俗易懂
12 楼 yelr_j 2008-03-27  
杨老,写的不错哦。让我有了新的体验。
当初为何不是你来教我们的J2EE呢。
11 楼 大老鼠上的小草原 2007-07-26  
写的很好啊 让我理解了很多 以前模糊的东东
10 楼 ricsson 2007-07-24  
随便google一个示例代码Run,一下一切都明白了!
9 楼 zhangcaijing 2007-07-23  
老大,永远地支持你,一定要坚持写哦,时刻顶起....
8 楼 iorim4 2007-07-12  
spring的精髓就是Aop
7 楼 hiavj 2007-07-08  
刚接触AOP感觉好难啊!
6 楼 bruce198 2007-06-19  
楼主写的不错,通俗易懂。
5 楼 rzxtjydjb 2007-06-05  
慢慢来啃吧
4 楼 iorim4 2007-06-05  
那我坐哪儿?我日
3 楼 lrz0534 2007-06-05  
地板我也要了
2 楼 lrz0534 2007-06-05  
顺便板凳也坐了
1 楼 lrz0534 2007-06-05  
哈哈 我来个沙发

相关推荐

    Spring从入门到精通 源码

     全书共分14章,内容涵盖了Spring的基础概念、核心容器、Spring AOP、事务处理、持久层封装、Web框架、定时器、Spring和Struts、Spring和Hibernate、Spring和Ant、Spring和Junit。本书适用于...

    Spring MVC 入门实例

    首先, 我需要在你心里建立起 Spring MVC 的基本概念. 基于 Spring 的 Web 应用程序接收到 http://localhost:8080/hello.do(事实上请求路径是 /hello.do) 的请求后, Spring 将这个请求交给一个名为 helloController ...

    spring入门学习-5、AOP概念及特点.pdf

    spring入门学习-5、AOP概念及特点.pdf

    Spring MVC MyBatis开发从入门到项目实战

    "Spring MVC MyBatis开发从入门到项目实战" 本资源主要讲解Spring MVC和MyBatis的开发,从入门到项目实战,涵盖了开发环境搭建、JDK安装与配置、MyEclipse的安装与使用、第一个Java类的编写、MyBatis技术入门、传统...

    Java Spring入门简介

    简单介绍了Java Spring相关的知识及概念,让你快速入门

    Spring从入门到精通 pdf

    Spring从入门到精通(第七,十四章) pdf (非影印版) 清华大学出版社 作者:郭锋 ISBN:7302138117 IoC DI AOP的讲解,条理非常清晰,结合实例,简单明了。非常适合初次接触这些概念的人。

    Spring Boot实战 ,丁雪丰 (译者) 1

    它引入了起步依赖概念,使得开发者可以快速搭建项目,并通过条件化配置来适应不同环境。此外,Spring Boot还支持Spring Boot CLI,Groovy,Grails以及Actuator,Actuator用于提供应用监控和管理功能。 Spring Boot...

    Spring概述及入门

    <br>本书分成四个部分,第一部分是Spring新手上路,主要讲解轻量级构架中的相关概念、发展过程、所涉及到的相关技术及详细使用方法等;第二部分是一个综合的案例,讲解如何使用Spring及相关技术来构建J2EE应用;...

    Spring从入门到精通(珍藏版)

     全书共分14章,内容涵盖了Spring的基础概念、核心容器、Spring AOP、事务处理、持久层封装、Web框架、定时器、Spring和Struts、S pring和Hibernate、Spring和Ant、Spring和Junit。本书适用于初、中级软件开发人员...

    Spring简介和入门

    Spring框架是Java开发中的一个重要组成部分,它由Rod Johnson创建,主要目标是解决企业级应用开发中的复杂性,尤其是对EJB(Enterprise ...对于初学者来说,掌握Spring的基本概念和使用是迈向Java EE开发的重要一步。

    spring 入门基础

    AVA对象的产生管理,到Spring技术对接口的支持,以及简单的Ioc介绍,设计到了JAVA的接口、反射、工厂设计等基本概念。 使用Eclipse完成Spring开发环境的构建

    北大青鸟spring入门课程

    总结,北大青鸟的 Spring 入门课程旨在教授学员如何使用 Spring 框架进行企业级应用开发,包括理解 Spring 的容器概念,利用依赖注入和面向切面编程来构建松散耦合的系统,并了解如何与其他框架(如 Struts 和 ...

    2024 Java Spring框架入门心得与实战经验分享.zip

    内容概要:这篇文章是一篇关于Java Spring框架的入门心得和实战经验分享。作者以通俗易懂的语言,介绍了Spring框架的核心概念,如IoC(控制反转)、AOP(面向切面编程)等,并分享了自己在实际项目中使用Spring框架...

    spring入门实例,很难额

    本教程将引导你通过一个简单的 Spring 示例来理解其基本概念和工作原理。 1. **创建 Web 项目** 首先,我们需要创建一个名为 `springDemo` 的 Web 项目。这通常是在 IDE(如 Eclipse 或 IntelliJ IDEA)中完成的...

    基于注解的 Spring MVC 简单入门

    在本文中,我们将深入探讨基于注解的Spring MVC的简单入门。Spring MVC是Spring框架的一个模块,主要用于构建Web应用程序,提供了强大的MVC(Model-View-Controller)设计模式支持。通过注解,开发者可以简化配置,...

    spring入门纲要

    【Spring 入门纲要】 Spring 是一个广泛应用的开源Java框架,主要专注于简化企业级应用的开发。其核心特性包括依赖注入(Dependency Injection,DI)和控制反转(Inversion of Control,IoC)。这两个概念是Spring...

    HETF-Spring Boot入门手册.docx

    【Spring Boot入门】 Spring Boot是由Pivotal团队提供的全新框架,其设计目标是用来简化新Spring应用的初始搭建以及开发过程。它集成了大量常用的第三方库配置,如数据源、JPA、WebSocket等,大大减少了Spring应用...

    Spring_AOP入门与分析

    AOP的核心概念包括切面(Aspect)、通知(Advice)、连接点(Join Point)、切入点(Pointcut)和织入(Weaving)。 在Spring框架中,AOP主要通过代理模式实现,它可以动态地将切面代码插入到目标对象的方法调用中...

    Spring.NET入门

    【Spring.NET入门】这篇文章主要介绍了Spring.NET框架的基本概念、背景以及其包含的模块。Spring.NET是一个专门为.NET平台设计的企业级应用程序框架,它借鉴了Java版Spring框架的核心思想,旨在帮助开发者构建可维护...

Global site tag (gtag.js) - Google Analytics