注*(IOC:控制反转、AOP:面向切面编程)

spring官网:http://spring.io/

spring简介

  spring是一个开源框架

  spring为简化企业级应用开发而生,使用Spring可以使简单的JavaBean实现以前只有EJB才能实现的功能

  spring是一个IOC和AOP容器框架

spring特点

  框架:spring实现了简单的组件配置组合成一个复杂的应用,在spring中可以使用XML和Java注解组合这些对象

  轻量级:spring框架在系统初始化的时候不用加载所有的服务,为系统节约了资源

  非入侵性:spring的框架代码不会出现在用户代码中,有利于代码的复用(基于Spring开发的应用中的对象可以不依赖与Spring的API)

  依赖注入DI和控制反转IOC:两者概念几乎相同,当某个角色(可能一个Java实例,调用者)需要另一个角色(另一个Java实例,被调用者)的协助时,在传统的程序设计过程中,通常由调用者来创建被调用者的实例。但在Spring里,创建被调用者的工作不再由调用者来完成,因此称为控制反转;创建被调用者 实例的工作通常由Spring容器来完成,然后调用者,因此也称为依赖注入

  容器:spring是一个容器,因为它包含并管理应用对象的生命周期

  一站式:spring整合了各种企业应用的开源框架和优秀的第三方类库,因此称为一站式框架

Spring组件通俗翻译:

  SPRING IO PLATFORM:流处理组件

  SPRING BOOT:根组件,集成了最基础应用

  SPRING FRAMEWORK:spring中核心的组件

  SPRING CLOUD DATA FLOW:云计算工作流

  SPRING CLOUD:云计算

  SPRING DATA:大数据处理

  SPRING INTEGRATION:集成

  SPRING BATCH:批处理

  SPRING SECURITY:安全组件

  SPRING HATEOAS:rest接口方案

  SPRING REST DOCS:文档组件

  SPRING SPCAL:移动社交组件

  SPRING AMQP:移动端主动信息推送

  SPRING MOBLE:移动设备解决方案组件

  SPRING FOR ANDROID:安卓设备解决方案组件

  SPRING WEB FLOW:工作流

  SPRING WEB SERVICES:接口

  SPRING LDAP:统一权限登录平台

  SPRING SESSION:

  SPRING SHELL:

  SPRING FLO:针对于前端

  SPRING KAFKA:消息组件

  SPRING STATEMACHINE:

spring环境搭建:

  maven的pom.xml配置(引入jar包):

<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.0.1.RELEASE</version>
</dependency>
</dependencies>

  ②配置文件(应用上下文):

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd ">
<!-- 此处为bean的配置 -->
</beans>

IOC容器及Bean的配置:

<bean id="apple" class="com.zzj.spring.ioc.Apple"></bean>

  bean属性ID:

    在IOC容器中必须是唯一的

    若id没有指定,spring自动将权限定性类名作为bean的名字

    id可以指定多个名字,名字之间可同逗号,分号或空格分隔

  bean属性class:

    写对应bean的全类名

对应JavaBean中创建对象操作代码(采用reflect反射,详见随笔②):

private ApplicationContext ioc;
ioc = new ClassPathXmlApplicationContext("此处为配置文件的路径"); //通过此方法来获取javaBean对象
Apple apple = ioc.getBean("此处为配置文件中bean的id",Apple.class);

  

  

  

  

  

①spring简介以及环境搭建(一)的更多相关文章

  1. Spring1:Spring简介、环境搭建、源码下载及导入MyEclipse

    框架学习前言 这个模块是面向Spring的,Spring的学习我是这么想的: 1.简单介绍Spring,主要是从网上借鉴一些重点 2.尽量说明清楚Spring的使用方法以及细节点 3.尽量以自己的理解 ...

  2. Spring ——简介及环境搭建跑通Hello

    Spring Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用.是为了解决企业应用程序开发复杂性而创建的.框架的主要优 ...

  3. 简介及环境搭建跑通Hello

    简介及环境搭建跑通Hello Spring Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用.是为了解决企业应用程序开 ...

  4. Redis入门很简单之一【简介与环境搭建】

    Redis入门很简单之一[简介与环境搭建] 博客分类: NoSQL/Redis/MongoDB redisnosqlmemcached缓存中间件  [Redis简介] <一>. NoSQL ...

  5. SpringData系列一 Spring Data的环境搭建

    本节作为主要讲解Spring Data的环境搭建 JPA Spring Data :致力于减少数据访问层(DAO)的开发量.开发者唯一要做的就是声明持久层的接口,其他都交给Spring Data JP ...

  6. spring boot 开发环境搭建(Eclipse)

    Spring Boot 集成教程 Spring Boot 介绍 Spring Boot 开发环境搭建(Eclipse) Spring Boot Hello World (restful接口)例子 sp ...

  7. Spring4- 01 - Spring框架简介及官方压缩包目录介绍- Spring IoC 的概念 - Spring hello world环境搭建

    一. Spring 框架简介及官方压缩包目录介绍 主要发明者:Rod Johnson 轮子理论推崇者: 2.1 轮子理论:不用重复发明轮子. 2.2 IT 行业:直接使用写好的代码. Spring 框 ...

  8. 1.SpringMVC的简介和环境搭建

    SpringMVC的简介: SpringMVC 和 Struts一样是一个MVC框架,和Spring无缝连接,和struts2类似, Spring MVC属于SpringFrameWork的后续产品, ...

  9. 一、springBoot简介与环境搭建

    前言:学习计划 1.springBoot环境搭建 2.springBoot入门 3.srpingBoot整合Mybatis 4.springBoot整合Redis,Redis集群 5.springBo ...

随机推荐

  1. BZOJ 4167: 永远的竹笋采摘

    首先同BZOJ5052 \(O(n \log n \log v)\) 求出所有点对 现在变成选出 \(k\) 条不相交的线段使得权值最小 可用前缀min优化dp \(O(nk)\) 解决 还是太慢,考 ...

  2. 从零构建以太坊(Ethereum)智能合约到项目实战——第20章 搭建自己的私有链网络

    P75 .1-以太坊私网建立 .合约编译.部署完全教程(1) 使用此博文进行安装配置:https://blog.csdn.net/w88193363/article/details/79402074 ...

  3. Socket通信实现步骤

    public class Server { public static void main(String[] args) { try { ServerSocket serverSocket = new ...

  4. awk及sum求和!

    awk 也是一个强大的编辑工具,它比 sed 的功能更加强大,可以在无交互的情况下实现相当复杂的文本操作. 1.awk 的语法 awk [选项] ' print $1' 文件名 选项 -F指定分隔符 ...

  5. 通过命令行提交更新代码到gitlab上

    解决方法: 1.打开命令行的窗口,定位到项目所在的路径. 2.输入:git status,敲回车查看代码是否有更新,有更新的话会出现文件改变的文件名.(红色的) 3.输入:git commit -a ...

  6. Centos7 nginx配置多虚拟主机过程

    一.前提准备 1.已经安装好了的Centos7服务器 2.ip 为192.168.1.209   [本次的配置ip] 3.确定防火墙等已经关闭 二.nignx配置文件参数详解 要配置多台虚拟主机,就需 ...

  7. Java 实现简单的人机猜拳游戏

    import java.util.Scanner; import java.util.Random; public class TestGuess{ public static void main(S ...

  8. C++11并发编程2------线程管理

    本节内容: 启动一个线程 每个程序都至少会有一个线程,main函数是执行入口,我们称之为主线程,其余子线程有各自的入口函数,主线程和子线程同时运行.子线程在std::thread对象创建时启动. 1. ...

  9. Java程序与其它进程的数据通信

    Java程序中可以启动其他的应用程序,这种在Java中启动的进程称为子进程,启动子进程的Java程序称为父进程,其实这个父进程就是一个Java虚拟机1.在Java程序中可以用Process类的实例对象 ...

  10. MyBatis 学习二之简单练习巩固

    1.新建一个maven项目并在pom.xml中添加依赖 2.项目架构   配置文件:SqlMapConfig.xml <?xml version="1.0" encoding ...