摘要:1. Spring MVC介绍 提到MVC,参与过Web应用程序开发的同学都很熟悉,它是展现层(也可以理解成直接展现给用户的那一层)开发的一种架构模式,M全称是Model,指的是数据模型,V全称是View,指的是视图页面,如JSP、Thymeleaf等,C全称是Controller,指的是控制器,用 阅读全文
posted @ 2019-09-20 10:47 申城异乡人 阅读 (211) 评论 (0) 编辑
摘要:在上篇博客中,我们了解了什么是AOP以及在Spring中如何使用AOP,本篇博客继续深入讲解下AOP的高级用法。 1. 声明带参数的切点 假设我们有一个接口CompactDisc和它的实现类BlankDisc: 现在我们的需求是记录每首歌曲的播放次数,按照以往的做法,我们可能会修改BlankDisc 阅读全文
posted @ 2019-08-28 11:12 申城异乡人 阅读 (243) 评论 (0) 编辑
摘要:1. 什么是AOP? AOP是Aspect Oriented Programming的缩写,意思是:面向切面编程,它是通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。 可以认为AOP是对OOP(Object Oriented Programming 面向对象编程)的补充,主要使用在日 阅读全文
posted @ 2019-08-23 09:11 申城异乡人 阅读 (207) 评论 (2) 编辑
摘要:Spring提供了2种方式在运行时注入值: 1. 属性占位符(Property placeholder) 2. Spring表达式语言(SpEL) 1. 属性占位符 1.1 注入外部的值 1.1.1 使用Environment 一般情况下,我们会将一些值放到配置文件中,等程序运行时再把值注入到一些字 阅读全文
posted @ 2019-08-16 09:10 申城异乡人 阅读 (210) 评论 (0) 编辑
摘要:1. 什么是自动装配的歧义性? 在Spring中,装配bean有以下3种方式: 1. 自动装配 2. Java配置 3. xml配置 在这3种方式中,自动装配为我们带来了很大的便利,大大的降低了我们需要手动装配bean的代码量。 不过,自动装配也不是万能的,因为仅有一个bean匹配条件时,Sprin 阅读全文
posted @ 2019-08-15 09:02 申城异乡人 阅读 (188) 评论 (0) 编辑
摘要:1. 使用场景 在日常的开发工作中,我们经常需要将程序部署到不同的环境,比如Dev开发环境,QA测试环境,Prod生产环境,这些环境下的一些配置肯定是不一样的,比如数据库配置,Redis配置,RabbitMQ配置。 如果每次切换发布环境,都需要修改配置重新构建的话,那对程序员来说将是噩梦,针对这种场 阅读全文
posted @ 2019-08-14 09:44 申城异乡人 阅读 (240) 评论 (2) 编辑
摘要:1. 概念 默认情况下,Spring中定义的bean在应用程序启动时会全部装配,不管当前运行的是哪个环境(Dev,QA或者Prod),也不管当前运行的是什么系统(Windows或者Linux),但有些使用场景下,我们可能需要条件化的装配某些bean,即当满足某一条件时,装配某些bean,当不满足某一 阅读全文
posted @ 2019-08-13 09:40 申城异乡人 阅读 (329) 评论 (0) 编辑
摘要:本篇博客主要讲解Map接口的4个实现类HashMap、Hashtable、LinkedHashMap、TreeMap的使用方法以及四者之间的区别。 注意:本文中代码使用的JDK版本为1.8.0_191 值得注意的是,Map接口是独立的接口,并没有继承Collection接口(这里是重点,面试常问): 阅读全文
posted @ 2019-08-05 18:06 申城异乡人 阅读 (249) 评论 (1) 编辑
摘要:本篇博客主要讲解Set接口的三个实现类HashSet、LinkedHashSet、TreeSet的使用方法以及三者之间的区别。 注意:本文中代码使用的JDK版本为1.8.0_191 1. HashSet使用 HashSet是Set接口最常用的实现类,底层数据结构是哈希表,HashSet不保证元素的顺 阅读全文
posted @ 2019-08-01 13:58 申城异乡人 阅读 (228) 评论 (2) 编辑
摘要:本篇博客主要讲解List接口的三个实现类ArrayList、LinkedList、Vector的使用方法以及三者之间的区别。 注意:本文中代码使用的JDK版本为1.8.0_191 1. ArrayList使用 ArrayList是List接口最常用的实现类,内部通过数组来实现,因此它的优点是适合随机 阅读全文
posted @ 2019-07-29 18:13 申城异乡人 阅读 (255) 评论 (0) 编辑