spring
文章平均质量分 86
wondertang
专注同城极速配送
展开
-
BeanUtils.copyProperties解决null值覆盖问题
这里使用的是Spring提供的BeanUtils的工具类(commons-lang3可参考)。在做数据变更的时候,使用BeanUtils.copyProperties(newdata,dbdata)进行数据变更的时候,由于前台展示的数据不完整。导致前台传递的数据将后台的原始数据全部覆盖掉。那么如何解决这种null值的覆盖呢。BeanUtils.copyProperties()可以通过添加可变长参数...原创 2019-10-18 09:58:55 · 10202 阅读 · 4 评论 -
SpringFramework学习-(11)初识AOP
一提到SpringFramework,肯定会提到SpringFramework的IOC容器和AOP切面。前面已经从IOC的运用,自己的IOC容器,源码级解析IOC等介绍了IOC容器,所以这里就不再赘述IOC容器的相关知识了,本篇将介绍一下SpringFramework的AOP知识。1.什么是AOPAOP: (Aspect Oriented Programming) 面向切面编程。什么意思?是否有面向原创 2017-12-29 18:42:43 · 311 阅读 · 0 评论 -
SpringFramework学习-(10)注解分析
上一篇SpringFramework学习-(9)基于注解配置bean 介绍了如何从配置文件配置bean到通过注解配置bean的转移,中间用到了几个常用的注解。Spring提供了很多的注解,没法一一的都介绍。本篇将介绍一下常用的各个注解都是什么意思,该在哪里使用这个注解。1.@Component@Controller,@Serivce,@Repository,@Component四个注解通常被用来标原创 2017-12-29 14:40:35 · 275 阅读 · 0 评论 -
SpringFramework学习-(9)基于注解配置bean
前面几篇文章介绍了基于配置文件的bean的配置,Spring还提供基于注解形式来配置bean。 Spring提供了组件扫描(component scanning),能够从classpath下自动扫描侦测和具有特定注解的组件。 特定组件包括:@Controller@Service@Repository@Component对于扫描到的组件,Spring有默认的命名策略:使用非限定类名,第一个原创 2017-12-28 23:20:46 · 198 阅读 · 0 评论 -
SpringFramework学习-(8)Bean的特性
bean具有哪些特性呢。 包括bean的生命周期,bean的集成,bean的扩容等。 具体我们先看官方文档里面怎么说,都说了哪些。1.bean的官方文档翻译1.1 bean的特性1.1.1 生命周期回调为了与容器中bean的生命周期管理交互,可以实现Spring的InitializingBean和DisposableBean接口。容器会在初始化和销毁bean时调用前者的afterProperti原创 2017-12-28 16:27:32 · 279 阅读 · 0 评论 -
SpringFramework学习-(1)SpringFramework官方文档翻译3
上一篇Spring学习-(1)SpringFramework官方文档翻译2 翻译了SpringFramework4.x版本的一些新特性,本篇沿着SpringFramework官方文档 继续向下做部分的翻译。这次主要是SpringFramework核心组件的内容。三.核心技术(Core Technologies)这部分的文档覆盖了Spring完整的技术。在这些技术中最重要的要属Spring的控制反转翻译 2017-12-26 14:02:04 · 318 阅读 · 0 评论 -
SpringFramework学习-(7)Bean的作用域
当通过Spring容器创建一个Bean实例时,不仅可以完成Bean实例的实例化,还可以为Bean指定特定的作用域。Spring支持如下5种作用域:·singleton:单例模式,在整个Spring IoC容器中,使用singleton定义的Bean将只有一个实例·prototype:原型模式,每次通过容器的getBean方法获取prototype定义的Bean时,都将产生一个新的Bean实例·req原创 2017-12-28 12:12:16 · 218 阅读 · 0 评论 -
SpringFramework学习-(6)自动装配
前面介绍到如果一个类持有另外一个类的引用,那么需要在Spring的配置文件中<bean> 标签里使用ref 关联引用的类,完成数据的装配。本篇将介绍Spring提供的自动装配的方式。 常用的有三种自动装配的方式: 1)byName,即通过set方法名 2)byType,即通过Class 3)constructor(不推荐使用)创建三个实体:package com.jd.autowire;p原创 2017-12-27 22:46:27 · 163 阅读 · 0 评论 -
SpringFramework学习-(5)配置bean
前面两篇分别从简单架构角度和源码分析的角度介绍了SpringIOC容器的实现原理。没有从应用的角度介绍,本篇将从应用的角度对Spring的bean配置做一些介绍。 IOC提供了三种注入bean的方式,分别是: 1)属性注入,通过setter方法注入bean的属性值或依赖的对象; 2)构造器注入; 3)工厂方法注入。1.属性注入创建实体beanpackage com.jd.bean;publi原创 2017-12-27 22:10:42 · 227 阅读 · 0 评论 -
SpringFramework学习-(4)IOC容器初始化过程详解
前面一篇Spring学习-(3)我的IOC容器 自己实现了一个简陋的IOC容器。Spring的IOC容器并没有这么简单,接下来一起进入SpringIOC的世界。Spring源码探究:IoC容器初始化过程详解,该篇文章写的非常好,难度也挺大,有些内容可能并没有明确指明。在这篇文章的基础之上,做一些减速和细化,从ClassPathXmlApplicationContext类开始逐一往上分析IOC容器的原创 2017-12-27 18:10:31 · 243 阅读 · 0 评论 -
SpringFramework学习-(3)我的IOC容器
上一篇文章helloworld中展示了SpringIOC容器的效果,那么是怎么实现的呢? 在不看源码的前提下,我们先猜测IOC容器初始化都做了些什么:ApplicationContext ac = new ClassPathXmlApplicationContext(new String[]{"spring-helloworld.xml"});ApplicationContext ac = new原创 2017-12-27 09:13:34 · 277 阅读 · 0 评论 -
SpringFramework学习-(1)SpringFramework官方文档翻译2
上一篇Spring学习-(1)SpringFramework官方文档翻译1 对Spring Framework 官方文档概述做了翻译,基本了解了一下Spring Framework是什么,本篇接着带着学习的心态对第二部分做简单的翻译。英文版请查考官方说明文档二.Spring Framework 4.x 新特性3.Spring 4.0的新特性和增强功能Spring最初发行于2004年,从那以后有过几翻译 2017-12-26 10:45:05 · 375 阅读 · 0 评论 -
SpringFramework学习-(1)SpringFramework官方文档翻译1
学习springframework已经好几年了,一直没有时间,也没有勇气写一写spring的相关博客。 原因在于你以为你懂了,实际上你还差的远。带着学习的态度,再次进入到spring的世界:本次选用SpringFramework-4.2.4-release版进行介绍,详情查阅官方文档先看看官方文档怎么说:一.Spring Framework框架概述Spring Framework框架是一个轻量级的翻译 2017-12-25 15:30:50 · 420 阅读 · 0 评论 -
SpringFramework学习-(14)SpringAOP配置
前面几篇分别介绍了AOP是什么,AOP实现的内部原理,SpringAOP和AspectJ之间的关系。只有在初识AOP的末尾通过一个demo展示了SpringAOP,并未在SpringAOP的配置和实现上做过多的停留,本篇将介绍一下SpringAOP的配置和说明。1.基本术语1.通知(Advice) 通知定义了切面是什么以及何时使用。描述了切面要完成的工作和何时需要执行这个工作。1.前置通知[Bef原创 2018-01-03 17:09:17 · 191 阅读 · 0 评论 -
SpringFramework学习-(13)SpringAOP与AspectJ
SpringFramework学习-(11)初识AOP介绍了AOP的基本概念和作用,以及SpringAop的一些实现小例子。 SpringFramework学习-(12)AOP与代理模式介绍了AOP的内部实现原理。现在的疑惑来了 1)SpringAOP和AspectJ是什么关系? 2)SpringAOP、AspectJ和CGLIB是什么关系? 3)SpringAOP、AspectJ和JDK代原创 2018-01-02 18:28:30 · 350 阅读 · 0 评论 -
SpringFramework学习-(12)AOP与代理模式
上一篇SpringFramework学习-(11)初识AOP 介绍了什么是AOP,以及使用AOP是怎么配置的,以及使用SpringAOP的结果。 本篇并不以SpringAOP进行展开,而是通过AOP模式进行展开,看一看AOP是怎么实现的。1.JDK静态代理实现AOP1)首先创建一个接口(JDK代理都是面向接口的); 2)然后创建具体实现类来实现这个接口; 3)再创建一个代理类同样实现这个接口原创 2018-01-02 14:43:09 · 334 阅读 · 0 评论 -
SpringFramework学习-(2)初探
如果看了前面的翻译,相信稍微也可以看出SpringFramework提供的几块功能。单从翻译的角度去学习SpringFramework难免会有些吃力,并且SpringFramework提供的很多模块和配置并不是都要使用的,所以接下来还是以实际的demo和内部实现原理学习一下SpringFramework框架。本篇文章只展示一下使用spring的效果,不做过多的解释。1.构建java项目这里使用的是m原创 2017-12-26 18:32:45 · 180 阅读 · 0 评论