spring理念:

  • 使现有的技术更容易使用,其本身是一个大杂烩,整合了现有的技术框架。

ssh: struct2 spring hibernate

ssm :springmvc spring mybatis

  • 优点:
  1. spring 是一个免费的开源框架(容器);
  2. spring是一个轻量级的,非入侵式的框架,引入spring不会对原来项目造成影响
  3. 控制翻转(ioc),面向切面编辑(aop)
  4. 支持事务处理 对框架整合支持

总结:spring是一个轻量级的控制翻转(IOC),和面向切面的框架(aop)

组成

核心容器:

beans :beans工厂

core:核心工厂

context :上下文,有关联的环境

aop:面向切面编程

aspect:核心功能包

instrumentation:代理

messaging:传送机制

扩展:

现代化的Java开发是基于spring的开发

springboot :

  1. 一个快速开发的脚手架
  2. 基于springboot可以快速的开发单个微服务

springcould:

3. springcould 是基于springboot实现的。

学习springboot的前提是完全掌握spring以及springmvc

spring是承上启下的作用。

spring的弊端: 发展了太久,违背了原来的理念,配置十分繁琐

IOC理论推导:

IOC是一种概念思想,有spring容器进行对象的创建,和依赖注入,程序员在使用的时候直接使用

正转:由程序员进行对象的创建和依赖注入称为正转(程序员说的算)

反转:由spring容器创建对象和依赖注入称为反转,将控制权从程序员手中夺走,交给spring容器,称为反转。

spring实现步骤:

1.创建maven项目

2.加入maven的依赖

加入spring的依赖,junit依赖

3.创建类(接口和他的实现类)

和没有使用框架一样

4.创建spring需要使用的配置文件

声明类的信息,这些类由spring创建和管理。

5.测试spring创建的对象

spring依赖:

  <!--spring的依赖-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.5.RELEASE</version>
</dependency>

添加完依赖需要找到maven视图 点击刷新,maven可以自动下载配置。

spring 理念与项目构建的更多相关文章

  1. springboot入门神器 -http://start.spring.io/(在线项目构建)

    参考并直接引用:http://www.sousou.io/article/1506656459859 最近在学习spring boot,看的书是<JavaEE开发的颠覆者 Spring Boot ...

  2. springmvc+spring+mybatis+maven项目构建

    1.首先在myeclipse10中安装maven的插件,将插件放入D:\Program Files (x86)\myEclipse10\MyEclipse Blue Edition 10\dropin ...

  3. Spring Boot -05- 多模块结构项目构建与测试(详细图文教程)IDEA 版

    Spring Boot -05- 多模块结构项目构建与测试(详细图文教程)IDEA 版 百度很多博客都不详细,弄了半天才把 Spring Boot 多模块项目构建开发整的差不多,特地重新创建配置,记录 ...

  4. 第三章 Maven构建 Java Spring Boot Web项目

    3.1   认识Srping Boot Spring Boot是一个框架,是一种全新的编程规范,它的产生简化了对框架的使用,简化了Spring众多的框架中大量的繁琐的配置文件,所以说Spring Bo ...

  5. 使用spring mvc或者resteasy构建restful服务

    看到最近一个项目里用resteasy来构建restful接口,有点不明白,不少Spring mvc4.0以后也可以很方面的实现restful服务吗,为啥还要在Spring MVC的项目里还引入rest ...

  6. 从SpringBoot到SpringCloudAlibaba简明教程(一):初识SpringBoot及其基础项目构建

    前言 Spring框架的大名想必大家早已如雷贯耳,我们来看一下springboot诞生的初衷,以及它在springframe的基础上解决了哪些痛点. 很久以前,J2EE还是java企业级应用的标准规范 ...

  7. springmvc+spring+mybatis+maven项目集成shiro进行用户权限控制【转】

    项目结构:   1.maven项目的pom中引入shiro所需的jar包依赖关系 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 ...

  8. Spring Boot——2分钟构建spring web mvc REST风格HelloWorld

    之前有一篇<5分钟构建spring web mvc REST风格HelloWorld>介绍了普通方式开发spring web mvc web service.接下来看看使用spring b ...

  9. 使用spring+hibernate+atomikos+tomcat构建分布式事务

    本文通过一个demo,介绍如何使用spring+hibernate+atomikos+tomcat构建在一个事务中涉及两个数据源的web应用. demo功能:实现一个能成功提交和回滚的涉及两个数据库数 ...

  10. 使用spring+mybatis+atomikos+tomcat构建分布式事务

    本文通过一个demo,介绍如何使用spring+mybatis+atomikos+tomcat构建在一个事务中涉及两个数据源的web应用. demo功能:实现一个能成功提交和回滚的涉及两个数据库数据源 ...

随机推荐

  1. 动力节点—day05

    数组 Java语言当中的数组是一种引用数据类型,不属于基本数据类型,数组的父类是Object 数组实际上是一个容器,可以同时容纳多个元素(数组是一个数据集合),多个数据元素的类型必须是一致的 数组当中 ...

  2. 大数据实时多维OLAP分析数据库Apache Druid入门分享-上

    @ 目录 概述 定义 MPP和Lambda补充说明 概述 特征 适用场景 不适用场景 横向对比 部署 单机部署 入门示例 概述 定义 Apache Druid 官网地址 https://druid.a ...

  3. 模拟BS服务器分析-模拟BS服务器代码实现

    模拟BS服务器分析 模拟网站服务器,使用浏览器访问自己编写的服务端程序,查看网页效果. 服务器要给客户端回写一个信息,回写一个html页面(文件)我们需要读取index.html文件,就必须的知道这个 ...

  4. freeswitch号码黑名单

    概述 freeswitch是一款简单好用的的VOIP开源软交换平台. 在客户的呼叫过程中,会遇到一些异常的号码,包括高投诉风险号码.敏感号码.特殊号码等. 在客户呼叫流程中,需要针对这些异常号码做呼叫 ...

  5. redis实现分布式锁(包含代码以及分析利弊)

    redis实现分布式锁(基础版) 使用redis实现分布式锁的方法有多种,基础版本是基于setnx命令,即如果不存在则设置.这个命令可以保证只有一个客户端能够成功设置一个key,从而获得锁.设置key ...

  6. docker05-dockerfile

    1.dockerfile是什么 Dockerfile是用来构建Docker镜像的构建文件,是由一系列命令和参数构成的脚本.可以理解为docker自己的语言编写的脚本. 2.Dockerfile内容基础 ...

  7. [Windows] 微信超级管家,自动好友回复、计数、自动同意、群发、好友导出、消息日志、无限多开

    [Windows] 微信超级管家,自动好友回复.计数.自动同意.群发.好友导出.消息日志.无限多开 微信超级管家是一款大神针对微信制作的工具,它的主要功能包括了自动回复.好友计数.自动同意.群发.好友 ...

  8. 如何优化 Vue.js 应用程序

    单页面应用(SPAs)当处理实时.异步数据时,可以提供丰富的.可交互的用户体验.但它们也可能很重,很臃肿,而且性能很差.在这篇文章中,我们将介绍一些前端优化技巧,以保持我们的Vue应用程序相对精简,并 ...

  9. Fiegn 声明式接口调用

    五:Fiegn 声明式接口调用 什么是Fiegn Netfix,Fiegn 是一个提供模板式的Web Service客户端,使用Fiegn 可以简化Web Service 客户端的编写,开发者可以通过 ...

  10. 最大K段和

    题目大意 有一个长度为 \(N\) 的序列 \(A\) .他希望从中选出不超过 \(K\) 个连续子段,满足它们两两不相交,求总和的最大值(可以一段也不选,答案为 \(0\)). 分析 很容易想到 \ ...