01 2019 档案

摘要:6.4.6 方法注入 在大多数应用程序场景中,容器中的大多数bean都是单例。 当单例bean需要与另一个单例bean协作,或者非单例bean需要与另一个非单例bean协作时,通常通过将一个bean定义为另一个bean的属性来处理依赖关系。 当bean生命周期不同时会出现问题。假如单例Bean A需 阅读全文
posted @ 2019-01-31 22:11 编程老司机A 阅读(160) 评论(0) 推荐(0) 编辑
摘要:6.4.5 自动装配 Spring容器可以在协作bean之间自动建立关系。你可以允许Spring通过检查ApplicationContext的上下文,自动为你的bean解析协作者(其他bean)。自动装配具有以下优点: 自动装配可以显著减轻指定属性或构造参数的需求量; 自动装配可以随着你对象的演化而 阅读全文
posted @ 2019-01-30 19:14 编程老司机A 阅读(183) 评论(0) 推荐(0) 编辑
摘要:6.4.4 延迟初始化的bean 默认情况下,ApplicationContext实现会迫切地创建和配置所有单例bean,作为初始化过程的一部分。普遍情况下,这种预先实例化是合适的,因为配置或周围环境的错误是可以立即被发现的,而不是几小时甚至几天后才发现。如果不希望出现这种行为的话,可以通过将bea 阅读全文
posted @ 2019-01-29 19:55 编程老司机A 阅读(187) 评论(0) 推荐(0) 编辑
摘要:6.4.3 depends-on的使用 如果bean是另一个bean的依赖项,常常意味着将一个bean设置为另一个bean的属性。 典型地,你可以使用基于XML的配置元数据中的<ref />元素来完成此操作。但是,有时bean之间的依赖关系不那么直接;例如,需要触发类中的静态初始化程序,像数据库驱动 阅读全文
posted @ 2019-01-28 23:07 编程老司机A 阅读(217) 评论(0) 推荐(0) 编辑
摘要:6.1.1 细节上的依赖注入和配置 如上一节所述,你可以将bean属性和构造函数参数定义为对其他托管bean(协作者)的引用,或者作为内联定义的值。为此,Spring的基于XML的配置元数据支持其<property />和<constructor-arg />元素中的子元素类型。 <property 阅读全文
posted @ 2019-01-27 20:21 编程老司机A 阅读(178) 评论(0) 推荐(0) 编辑
摘要:6.4 依赖 典型的企业应用程序不包含单个对象(或Spring用法中的bean)。 即使是最简单的应用程序也有一些对象可以协同工作,以呈现连贯的应用程序给最终用户看。下一节将介绍如何从定义多个独立的bean,到对象协作取得统一目标的完全实现的应用程序。 6.4.1 依赖注入 它是通过对象定义它们的依 阅读全文
posted @ 2019-01-26 22:41 编程老司机A 阅读(223) 评论(0) 推荐(0) 编辑
摘要:6.3 Bean概述 Spring IoC容器管理一个或多个bean。这些bean是使用你提供给容器的配置元数据去创建的,例如,以XML <bean />定义的形式。 在容器内部,这些bean的定义以BeanDefinition对象呈现出来,其中包含了(以及其他信息)以下元数据: 限定包的类名:典型 阅读全文
posted @ 2019-01-25 23:20 编程老司机A 阅读(205) 评论(0) 推荐(0) 编辑
摘要:6.2 容器概述 代表Spring IoC容器的org.springframework.context.ApplicationContext接口负责实例化、配置和组装上述bean。容器通过读取配置元数据来获取有关要实例化,配置和组装的对象的指令。以XML,Java注释或Java代码形式呈现配置元数据 阅读全文
posted @ 2019-01-24 18:15 编程老司机A 阅读(223) 评论(0) 推荐(0) 编辑
摘要:第三部分 核心技术 这部分参考文档涵盖的这些技术是Spring Framework绝对重要的。 其中最重要的要数Spring框架的控制反转(IoC)容器。深入剖析Spring框架IoC容器之后,紧接着要介绍的是Spring面向切面编程(AOP)技术。Spring框架拥有自己的AOP框架,从概念上很容 阅读全文
posted @ 2019-01-23 22:23 编程老司机A 阅读(274) 评论(0) 推荐(0) 编辑
摘要:被注解@Deprecated标记的程序元素是不鼓励使用的程序元素,通常是因为它很危险,或者是因为存在更好的替代方案。 除了对象自身引用自己用@Deprecated标记的方法外,其他情况使用@Deprecated注解标记的类型,方法,字段或构造函数时,Java编译器都会生成deprecation警告。 阅读全文
posted @ 2019-01-22 19:52 编程老司机A 阅读(15620) 评论(0) 推荐(1) 编辑
摘要:被@FunctionalInterface注解标记的类型表明这是一个函数接口。从概念上讲,函数接口只有一个抽象方法。如果接口声明的抽象方法覆写Object类的公共方法,那这方法不算作接口的抽象方法,因为接口具有Object方法的默认实现。 先看Java SE 8中@FunctionalInterfa 阅读全文
posted @ 2019-01-21 08:59 编程老司机A 阅读(6899) 评论(0) 推荐(0) 编辑
摘要:定义 首先,我们先看看函数接口在《Java语言规范》中是怎么定义的: 函数接口是一种只有一个抽象方法(除Object中的方法之外)的接口,因此代表一种单一函数契约。函数接口的抽象方法可以是从超级接口继承而来,但继承而来的方法应该是覆写等效的( override-equivalent ),这种情况,在 阅读全文
posted @ 2019-01-20 21:40 编程老司机A 阅读(6450) 评论(0) 推荐(0) 编辑
摘要:在声明具有模糊类型(比如:泛型)的可变参数的构造函数或方法时,Java编译器会报unchecked警告。鉴于这些情况,如果程序员断定声明的构造函数和方法的主体不会对其varargs参数执行潜在的不安全的操作,可使用@SafeVarargs进行标记,这样的话,Java编译器就不会报unchecked警 阅读全文
posted @ 2019-01-19 10:02 编程老司机A 阅读(18801) 评论(0) 推荐(6) 编辑
摘要:Java编译器在编译代码时,会产生一些安全警告信息。如果被@SuppressWarnings注解标记的元素,就可以告诉编译器抑制指定的警告。 先看看@SuppressWarnings注解在Java SE中的声明: package java.lang; import java.lang.annotat 阅读全文
posted @ 2019-01-18 11:41 编程老司机A 阅读(2035) 评论(0) 推荐(0) 编辑
摘要:先看看@Override注解在Java SE中的声明: package java.lang; import java.lang.annotation.*; @Target(ElementType.METHOD) @Retention(RetentionPolicy.SOURCE) public @i 阅读全文
posted @ 2019-01-17 19:41 编程老司机A 阅读(9543) 评论(0) 推荐(3) 编辑
摘要:@Repeatable注解表明标记的注解可以多次应用于相同的声明或类型,此注解由Java SE 8版本引入。以下示例如何使用此注解: 第一步,先声明一个重复注解类: package org.springmorning.demo.javabase.annotation.meta; import jav 阅读全文
posted @ 2019-01-16 19:59 编程老司机A 阅读(7804) 评论(1) 推荐(1) 编辑
摘要:@Inherited注解标记其他的注解用于指明标记的注解是可以被自动继承的。 注意:此注解只对注解标记的超类有效,对接口是无效的。 示例: 先声明两个用@Inherited标记的注解,@Name和@Abbreviation,一个没有用@Inherited标记的注解@UpperCaseName pac 阅读全文
posted @ 2019-01-15 19:48 编程老司机A 阅读(4391) 评论(0) 推荐(2) 编辑
摘要:@Retention注解标记其他的注解用于指明标记的注解保留策略:先看Java SE 8中@Target是如何声明的: package java.lang.annotation; public enum RetentionPolicy { /** * Annotations are to be di 阅读全文
posted @ 2019-01-14 10:08 编程老司机A 阅读(1295) 评论(0) 推荐(0) 编辑
摘要:@Target注解标记另外的注解用于限制此注解可以应用哪种Java元素类型。先看Java SE 8中@Target是如何声明的: package java.lang.annotation; public enum ElementType { /** Class, interface (includi 阅读全文
posted @ 2019-01-13 23:31 编程老司机A 阅读(6273) 评论(0) 推荐(2) 编辑
摘要:@Documented注解标记的元素,Javadoc工具会将此注解标记元素的注解信息包含在javadoc中。默认,注解信息不会包含在Javadoc中。示例如下: 声明Book注解,并使用@Document标记: package demo.javase.annotation; import java. 阅读全文
posted @ 2019-01-12 23:25 编程老司机A 阅读(33419) 评论(0) 推荐(7) 编辑
摘要:JVM JVM,全称为Java Virtual Machine,中文的意思是:Java虚拟机。 在理解Java虚拟机这个定义之前,我们先讲讲为何叫虚拟机呢?称为虚拟机,顾名思义,它应该不是真实存在的。那它是什么呢?在这里,我们把它理解为一种规范(就像国家颂布的法律,它只是条文,只是规则,是概念上的东 阅读全文
posted @ 2019-01-11 19:00 编程老司机A 阅读(641) 评论(0) 推荐(0) 编辑
摘要:Java的历史是非常有意思的。1990年底,Sun Microsystems在工作站计算机市场上领先世界,并继续保持健康发展。Sun想把本公司的创新和专业知识应用到即将到来的消费电子市场领域,于是该公司邀请了一些顶级工程师,组建了一个Green Team团队(核心成员有: James Gosling 阅读全文
posted @ 2019-01-10 23:57 编程老司机A 阅读(2486) 评论(0) 推荐(1) 编辑
摘要:1、Windows环境下安装Maven 1.1. 下载Maven 访问Maven官网的下载页面:http://maven.apache.org/download.cgi,以下示例下载的是官方推荐的最新版本3.6.0。3.0.4版本及以上的,链接地址:https://archive.apache.or 阅读全文
posted @ 2019-01-09 22:29 编程老司机A 阅读(215) 评论(0) 推荐(0) 编辑
摘要:1.注解是什么? 注解,元数据的一种形式,提供与程序有关的数据,但又不是程序的一部分。注解对它们注解的代码操作没有直接影响。 附注:元数据是指用来描述数据的数据,更通俗一点,就是描述代码间关系,或者代码与其他资源(例如数据库表)之间内在联系的数据。在Java中,使用Annotation的概念来描述元 阅读全文
posted @ 2019-01-08 10:07 编程老司机A 阅读(441) 评论(0) 推荐(0) 编辑
摘要:String a= "test"; 此语句含义是:在常量池中创建test字符串对象,变量aa是对常量池中此对象的引用 String aa = new String("test"); 此语句含义是:如果常量池中没有test字符串对象,会在常量池中创建,并且还会在堆中创建一个test对象,变量aa是对堆 阅读全文
posted @ 2019-01-07 12:56 编程老司机A 阅读(817) 评论(0) 推荐(0) 编辑
摘要:1.Maven的历史 Maven的创始人是Jason Van Zyl,诞生时间大概在2001年3月。Maven起源于Jakarta Alexandria项目,在2002年10月份左右Maven迁移到Turbine项目中继续发展。 Jason Van Zyl发现按下面的方式管理项目更好: 于是,Jas 阅读全文
posted @ 2019-01-07 08:52 编程老司机A 阅读(1626) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示