代码改变世界

随笔分类 -  Spring

Spring入门(十五):使用Spring JDBC操作数据库

2019-10-14 09:15 by 申城异乡人, 1001 阅读, 收藏, 编辑
摘要: 在本系列的之前博客中,我们从没有讲解过操作数据库的方法,但是在实际的工作中,几乎所有的系统都离不开数据的持久化,所以掌握操作数据库的使用方法就非常重要。 在Spring中,操作数据库有很多种方法,我们可以使用JDBC、Hibernate、MyBatis或者其他的数据持久化框架,本篇博客的重点是讲解下 阅读全文

Spring入门(十四):Spring MVC控制器的2种测试方法

2019-09-26 16:27 by 申城异乡人, 1164 阅读, 收藏, 编辑
摘要: 作为一名研发人员,不管你愿不愿意对自己的代码进行测试,都得承认测试对于研发质量保证的重要性,这也就是为什么每个公司的技术部都需要质量控制部的原因,因为越早的发现代码的bug,成本越低,比如说,Dev环境发现bug的成本要低于QA环境,QA环境发现bug的成本要低于Prod环境,Prod环境发现bug 阅读全文

Spring入门(十三):Spring MVC常用注解讲解

2019-09-23 14:42 by 申城异乡人, 2053 阅读, 收藏, 编辑
摘要: 在使用Spring MVC开发Web应用程序时,控制器Controller的开发非常重要,虽然说视图(JSP或者是Thymeleaf)也很重要,因为它才是直接呈现给用户的,不过由于现在前端越来越重要,很多公司都开始采用前后端分离的开发模式,所以我们暂时可以将精力放在开发控制器上。 使用Spring 阅读全文

Spring入门(十二):Spring MVC使用讲解

2019-09-20 10:47 by 申城异乡人, 1734 阅读, 收藏, 编辑
摘要: 1. Spring MVC介绍 提到MVC,参与过Web应用程序开发的同学都很熟悉,它是展现层(也可以理解成直接展现给用户的那一层)开发的一种架构模式,M全称是Model,指的是数据模型,V全称是View,指的是视图页面,如JSP、Thymeleaf等,C全称是Controller,指的是控制器,用 阅读全文

Spring入门(十一):Spring AOP使用进阶

2019-08-28 11:12 by 申城异乡人, 817 阅读, 收藏, 编辑
摘要: 在上篇博客中,我们了解了什么是AOP以及在Spring中如何使用AOP,本篇博客继续深入讲解下AOP的高级用法。 1. 声明带参数的切点 假设我们有一个接口CompactDisc和它的实现类BlankDisc: package chapter04.soundsystem; /** * 光盘 */ p 阅读全文

Spring入门(十):Spring AOP使用讲解

2019-08-23 09:11 by 申城异乡人, 1394 阅读, 收藏, 编辑
摘要: 1. 什么是AOP? AOP是Aspect Oriented Programming的缩写,意思是:面向切面编程,它是通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。 可以认为AOP是对OOP(Object Oriented Programming 面向对象编程)的补充,主要使用在日 阅读全文

Spring入门(九):运行时值注入

2019-08-16 09:10 by 申城异乡人, 1381 阅读, 收藏, 编辑
摘要: Spring提供了2种方式在运行时注入值: 属性占位符(Property placeholder) Spring表达式语言(SpEL) 1. 属性占位符 1.1 注入外部的值 1.1.1 使用Environment 一般情况下,我们会将一些值放到配置文件中,等程序运行时再把值注入到一些字段上。 假如 阅读全文

Spring入门(八):自动装配的歧义性

2019-08-15 09:02 by 申城异乡人, 718 阅读, 收藏, 编辑
摘要: 1. 什么是自动装配的歧义性? 在Spring中,装配bean有以下3种方式: 自动装配 Java配置 xml配置 在这3种方式中,自动装配为我们带来了很大的便利,大大的降低了我们需要手动装配bean的代码量。 不过,自动装配也不是万能的,因为仅有一个bean匹配条件时,Spring才能实现自动装配 阅读全文

Spring入门(七):Spring Profile使用讲解

2019-08-14 09:44 by 申城异乡人, 9750 阅读, 收藏, 编辑
摘要: 1. 使用场景 在日常的开发工作中,我们经常需要将程序部署到不同的环境,比如Dev开发环境,QA测试环境,Prod生产环境,这些环境下的一些配置肯定是不一样的,比如数据库配置,Redis配置,RabbitMQ配置。 如果每次切换发布环境,都需要修改配置重新构建的话,那对程序员来说将是噩梦,针对这种场 阅读全文

Spring入门(六):条件化的bean

2019-08-13 09:40 by 申城异乡人, 1439 阅读, 收藏, 编辑
摘要: 1. 概念 默认情况下,Spring中定义的bean在应用程序启动时会全部装配,不管当前运行的是哪个环境(Dev,QA或者Prod),也不管当前运行的是什么系统(Windows或者Linux),但有些使用场景下,我们可能需要条件化的装配某些bean,即当满足某一条件时,装配某些bean,当不满足某一 阅读全文

Spring入门(五):Spring中bean的作用域

2019-06-21 18:18 by 申城异乡人, 1311 阅读, 收藏, 编辑
摘要: 1. Spring中bean的多种作用域 在默认情况下,Spring应用上下文中所有的bean都是以单例(singleton)的形式创建的,即不管给定的一个bean被注入到其他bean多少次,每次所注入的都是同一个实例。 Spring定义了多种作用域,可以基于这些作用域创建bean: 1. 单例(S 阅读全文

Spring入门(四):使用Maven管理Spring项目

2019-05-20 16:19 by 申城异乡人, 27388 阅读, 收藏, 编辑
摘要: 1. 为什么要使用Maven? 之前我们新建的项目,项目所要依赖的第三方jar包都在项目的类路径下(通常为lib目录),如下所示: 使用这种方式,我们无法知道第三方类库的依赖关系,比如导入一个特定的jar包时,可能此jar包还依赖于其他的jar包,其他的jar包又依赖于更多的jar包,这也是我们平常 阅读全文

Spring入门(三):通过JavaConfig装配bean

2019-03-06 17:12 by 申城异乡人, 2807 阅读, 收藏, 编辑
摘要: 上一篇博客中,我们讲解了使用组件扫描和自动装配实现自动化装配bean,这也是最好的使用方式。 但是某些场景下,我们可能无法使用自动装配的功能,此时就不得不显式的配置bean。 比如我们引用了一个第三方类库,需要将类库中的某个类装配到项目中,我们不可能在该类上添加@Component注解,因此无法使用 阅读全文

Spring入门(二):自动化装配bean

2019-03-05 18:11 by 申城异乡人, 3079 阅读, 收藏, 编辑
摘要: Spring从两个角度来实现自动化装配: 组件扫描(component scanning):Spring会自动发现应用上下文中需要创建的bean。 自动装配(autowiring):Spring会自动满足bean之间的依赖。 为了更形象的解释组件扫描与自动装配,我们举一个音响系统的例子,主要包含以下 阅读全文

Spring入门(一):创建Spring项目

2019-02-28 09:52 by 申城异乡人, 25236 阅读, 收藏, 编辑
摘要: 创建Spring项目。 阅读全文