序言 Scope是定义Spring如何创建bean的实例的.Spring容器最初提供了两种bean的scope类型:singleton和prototype,但发布2.0以后,又引入了另外三种scope类型:request.session和global session,这三种只能在web 应用中才可以使用. 在创建bean的时候可以带上scope属性,scope有下面几种类型: 概念理解 Spring官方文档表示有如下5种类型: singleton: 这是Spring默认的scope,表示Spri…
每篇一句 十个光头九个富,最后一个会砍树 前言 不知你在使用Spring Boot时是否对这样一个现象"诧异"过:同一个接口(同一个URL)在接口报错情况下,若你用rest访问,它返回给你的是一个json串:但若你用浏览器访问,它返回给你的是一段html.恰如下面例子(Spring Boot环境~): @RestController @RequestMapping public class HelloController { @GetMapping("/test/error&…
Spring框架支持以下五种bean的作用域: singleton :bean在每个Spring ioc 容器中只有一个实例. prototype:一个bean的定义可以有多个实例. request:每次http请求都会创建一个bean,该作用域仅在基于web的Spring ApplicationContext情形下有效. session:在一个HTTP Session中,一个bean定义对应一个实例.该作用域仅在基于web的Spring ApplicationContext情形下有效. glo…
Spring 框架支持以下五种 bean 的作用域:singleton : bean 在每个 Spring ioc 容器中只有一个实例.prototype:一个 bean 的定义可以有多个实例.request:每次 http 请求都会创建一个 bean,该作用域仅在基于 web的 Spring ApplicationContext 情形下有效.session:在一个 HTTP Session 中,一个 bean 定义对应一个实例.该 作用域仅在基于 web 的 Spring Applicatio…
Spring学习(九)-----Spring依赖检查 bean 配置文件用于确定的特定类型(基本,集合或对象)的所有属性被设置.在大多数情况下,你只需要确保特定属性已经设置但不是所有属性.. 对于这种情况,你需要 @Required 注解,请参见下面的例子: @Required示例 Customer对象,适用@Required在 setPerson()方法,以确保 person 属性已设置. package com.yiibai.common; import org.springframewor…
Spring使用@Autowired注解自动装配 在上一篇 Spring学习(三)-----Spring自动装配Beans示例中,它会匹配当前Spring容器任何bean的属性自动装配.在大多数情况下,你可能只需要在特定的 bean 自动装配属性. 在Spring中,可以使用 @Autowired 注解通过setter方法,构造函数或字段自动装配Bean.此外,它可以在一个特定的bean属性自动装配. 注 @Autowired注解是通过匹配数据类型自动装配Bean. 请参见下面的完整的例子来演示…
目录: Part一:回顾java web部分的jdbc.事务.连接池和dbutils工具等 : Part二:spring的JdbcTemplate使用: Part三:spring的事务处理: Part一:补充数据库连接,DataSource,事务.连接池等知识: 1:JDBC部分 1.1:最基本的jdbc使用: 1 //要连接的数据库URL 2 String url = "jdbc:mysql://localhost:3306/database名"; 3 //连接的数据库时使用的用户名…
一.Spring装配机制 Spring提供了三种主要的装配机制: 1.在XML中进行显示配置 2.在Java中进行显示配置 3.隐式的bean发现机制和自动装配--自动化装配bean Spring可以通过注解来进行自动装配(无需再手动写配置文件),Spring从两个角度实现自动化装配: 1.组件扫描(component scanning):Spring会自动发现应用上下文中所创建的bean; 2.自动装配(autowiring):Spring自动满足bean之间的依赖;--以CD及CD播放器为示…
本机使用IDEA 2020.1.MySql 8.0.19,通过Maven进行构建 环境准备 导入maven依赖包 <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> <dependency> <…
在Spring中,bean作用域用于确定哪种类型的 bean 实例应该从Spring容器中返回给调用者.bean支持的5种范围域: 单例(singleton) - 每个Spring IoC 容器返回一个bean实例(默认) 原型(prototype)- 当每次请求时返回一个新的bean实例 请求(request) - 返回每个HTTP请求的一个Bean实例 会话(session) - 返回每个HTTP会话的一个bean实例 全局会话(globalSession)- 返回全局HTTP会话的一个be…
Spring的表达式语言 SpEL,使用方法是#{} SpEL的特性如下 使用Bean 的ID 来引用Bean : 调用方法和访问对象的属性: 对值进行算术.关系和逻辑运算: 正则表达式匹配: 集合操作. 目前能知道的SpEL的作用就是在运行期赋值,正常情况下我们在配置bean的xml档的时候就会赋值,而使用SpEL能达成动态的效果??? 具体详细应用请查看http://blog.csdn.net/sunnyyoona/article/details/50638957 简单代码应用 <bean…
© 版权声明:本文为博主原创文章,转载请注明出处 接口 用于沟通的中介物的抽象化 实体把自己提供给外界的一种抽象化说明,用以由内部操作分离出外部沟通方法,使其能被修改内部而不影响外界其他实体与其交互的方式 对应Java接口即声明,声明了哪些方法是对外公开提供的 在Java8中,接口可以拥有方法体 面向接口编程 结构设计中,分清层次及调用关系,每层只向外(上层)提供一组功能接口,各层间依赖接口而非实现类 接口实现的变动不影响各层间的调用,这一点在公共服务中尤为重要 面向接口编程中的接口是用于隐藏具…
Bean 定义 被称作 bean 的对象是构成应用程序的支柱也是由 Spring IoC 容器管理的.bean 是一个被实例化,组装,并通过 Spring IoC 容器所管理的对象.这些 bean 是由用容器提供的配置元数据创建的,例如,已经在先前章节看到的,在 XML 的表单中的 定义. bean 定义包含称为配置元数据的信息,下述容器也需要知道配置元数据: 如何创建一个 bean bean 的生命周期的详细信息 bean 的依赖关系 上述所有的配置元数据转换成一组构成每个 bean 定义的下…
前面一篇博文讲解了什么是AOP.学会了写AOP的实现,但是并没有实际运用起来,这一篇博文就算是对AOP技术应用的进阶把,重点是事务的处理. --wh 一.jdbcTemplate 什么是JdbcTemplate? spring提供用于操作数据库模版,类似Dbutils,通俗点讲,我们操作数据库,spring也会帮我们提供一个操作数据库的工具供我们使用,而不用我们自己手动编写连接数据库,获取结果集等等操作,这个工具就是JdbcTemplate.跟Dbutils一样,想要使用JdbcTemplate…
上面梳理了通过注解来隐式的完成了组件的扫描和自动装配,下面来学习下如何通过显式的配置的装配bean 二.通过Java类装配bean 在前面定义了HelloWorldConfig类,并使用@ComponentScan和@Configuration注解,@Configuration注解表明了这个类是一个java配置类,该类用在获取Spring应用上下文时,告诉Spring创建bean的细节,通过@ComponentScan,我们启用了Spring的自动组件扫描,现在就让我们来看如果通过java类来显…
一.Spring容器接口关系 容器是Spring框架的核心,Spring容器就是一个巨大的工厂.Spring容器使用Ioc(控制反转(Inversion of Control )管理所有组成应用系统的组件. Spring容器会使用XML解析器读取改属性值,并利用反射来创建该实现类的实例. Spring有两个核心接口:BeanFactory和ApplicationContext,其中ApplicationContext是BeanFactory的子接口.它们都可以代表Spring容器.Spring容…
以下为spring常见面试问题: 1.Spring 框架中都用到了哪些设计模式? Spring框架中使用到了大量的设计模式,下面列举了比较有代表性的: 代理模式—在AOP和remoting中被用的比较多. 工厂模式—BeanFactory用来创建对象的实例. 单例模式—在spring配置文件中定义的bean默认为单例模式. 模板方法—用来解决代码重复的问题.比如. RestTemplate, JmsTemplate, JpaTemplate. 前端控制器—Spring提供了DispatcherS…
从本文開始,我们就要一起学习Spring框架,首先不得不说Spring框架是一个优秀的开源框架. 当中採用IoC原理实现的基于Java Beans的配置管理和AOP的思想都是非常值得学习与使用的.以下我们就进入正题.介绍Java平台上的一个优秀的开源应用框架Spring,以及Spring框架的历史和Spring框架相关基本知识. [转载使用,请注明出处:http://blog.csdn.net/mahoking] Spring 介绍 Spring是Java平台上的一个开源应用框架. 它的第一个版…
一.Spring MVC配置的替代方案 我们已经了解如何通过AbstractAnnotationConfigDispatcherServlet- Initializer快速搭建了Spring MVC环境.在这个便利的基础类中,假设我们需要基本的DispatcherServlet和 ContextLoaderListener环境,并且Spring配置是使用Java的,而不是XML.尽管对很多Spring应用来说,这是一种安全的假设,但是并不一定总 能满足我们的要求.除了DispatcherServ…
1.Spring简介     Spring是一个开源框架,最早由Rod Johnson创建,并在<Expert One-on-One:J2EE Design and Development>这本著作中进行了介绍.Spring是为了解决企业级应用开发的复杂性而创建的,使用Spring可以让简单的JavaBean实现之前只有EJB才能完成的事情.但Spring不仅仅局限于服务器开发,任何Java应用都能在简单性.可测试性和松耦合等方面从Spring中获益. 1.1 简化Java开发     Spr…
前言: 技术的发展, 真的是日新月异. 作为javaer, 都不约而同地抛弃裸写jdbc代码, 而用各种持久化框架. 从hibernate, Spring的JDBCTemplate, 到ibatis, 以及ibatis的升级版mybatis. 从基本的xml配置, 也逐渐演化为注解方式配置. 技术的进步意味着, 你需要时刻保持一颗进步的心. 即便你经验丰富, 学识渊博. 但新技术的革命, 使得新人轻松超越. 希望作为一个技术人员, 始终有颗年轻的心. 本文将讲述一下, spring+mybati…
Spring配置文件 1.alias:设置别名,为bean设置别名,并且可以设置多个别名; <!-- 设置别名 --> <alias name="user" alias="user1"/> 2.bean的配置; <!--id是bean的标识符,要唯一,如果没有配置id,name默认为标识符 如果配置了id,又配置了name,那么name就是别名 name可以设置多个别名并且别名可以是空格 逗号 分号 class是bean的全限定名=包名…
一 spring的基础 1:什么是spring spring是由Rod Johnson组织和开发的一个分层 的Java SE/EE 一站式轻量级开源框架,它以Ioc(控制反转)和 AOP(面向切面编程)为内核,使用了基本的JavaBean来代替了以前由EJB完成的工作,取代了EJB 的臃肿,低效. 一站式:spring在JavaEE三层框架中(表现层,业务逻辑层,持久层)分别提供了不同的解决技术 表现层:spring中的springmvc service层:spring的ioc dao层:spr…
1. 使用静态工厂方法创建Bean,用到一个工厂类 例子:一个Car类,有brand和price属性. package com.guigu.spring.factory; public class Car { private String brand; private double price; public Car(){ } public Car(String brand,double price){ this.brand=brand; this.price=price; } public S…
Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的.框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架. Spring 框架 Spring 框架是一个分层架构,由 7 个定义良好的模块组成.Spring 模块构建在核心容器之上,核心容器定义了创建.配置和管理 bean 的方式,如图 1 所示. 核心容器:核心容器提供 Spring 框架的基本功能.核心容器的主要组件是 BeanFactory,它是工厂模式的实现.B…
前面讲解了spring的特性之一,IOC(控制反转),因为有了IOC,所以我们都不需要自己new对象了,想要什么,spring就给什么.而今天要学习spring的第二个重点,AOP.一篇讲解不完,所以这篇文章主要介绍一下什么是AOP,如何去理解AOP.理解完之后,在spring中如何使用AspectJ AOP框架的.看得懂,写的出spring配置的那么就学的差不多了.加油.建议都自己手动实现一遍,这样才能更好的理解. --WH 一.什么是AOP? AOP:面向切面编程,采用横向抽取机制,取代了传…
二.Spring的Java配置方式 Java配置是Spring4.x推荐的配置方式,可以完全替代xml配置. 1.@Configuration 和 @Bean Spring的Java配置方式是通过 @Configuration 和 @Bean 这两个注解实现的: 1.@Configuration 作用于类上,相当于一个xml配置文件: 2.@Bean 作用于方法上,相当于xml配置中的<bean>: 2.示例 该示例演示了通过Java配置的方式进行配置Spring,并且实现了Spring IO…
一.Spring  AOP的原理 AOP全名Aspect-Oriented Programming,中文直译为面向切面(方面)编程.何为切面,就比如说我们系统中的权限管理,日志,事务等我们都可以将其看成一个个切面. Spring AOP 采用的是动态代理的设计模式来实现切面编程的. 首先,我们可以通过 23种设计模式----------代理模式(三) 之 动态代理模式 来了解下动态代理模式,再次不再赘述. 我们来看看Spring AOP 是怎样运用动态代理模式的.在Spring AOP 通过 调…
spring boot 框架整合 thymeleaf spring boot 的官方文档中建议开发者使用模板引擎,避免使用 JSP.因为若一定要使用 JSP 将无法使用. 注意:本文主要参考学习了大神程序员DD的博客. 附上,相应链接:http://blog.didispace.com/springbootweb/ 关于 thymeleaf 模板引擎的介绍 thymeleaf 学习笔记 同时,模板引擎默认的模板配置路径为:src/main/resources/templates. Spring…
一:准本工作(下载需要的jar包) 1.下载准备Spring-framework-4.2.0 链接为: http://repo.springsource.org/libs-release-local/org/springframework/spring/ 截图: 2.具体的spring-framework4.2.0 3.下载log 链接为: http://commons.apache.org/proper/commons-logging/download_logging.cgi 截图: 二:建项…