加载中
Spring4-容器9-定制bean特性

Spring提供了几个标志接口(marker interface),这些接口用来改变容器中bean的行为;它们包括InitializingBean和DisposableBean。 实现这两个接口的bean在初始化和析构时容器会调用前者的a...

2017/03/26 21:39
26
Spring4-容器8-Bean作用域

1 简介 Spring支持以下几种开箱即用的作用域: 作用域 描述 singleton (默认的) 每个 String IoC 容器作用域中一个 bean 定义只对应一个对象实例。 prototype 一个 bean 定义对应多个对象实例...

2017/03/26 18:06
22
Spring4-容器7-方法注入

方法注入主要是用在Singleton的Object中使用非Singleton的Bean时,通过lookup-method的那个方法来取得非Singleton的Bean。一般用的不多,在用这种定义之前最好想明白你的需求。 1 使用Java代...

2017/03/26 12:05
18
Spring4-容器6-延迟初始化和depends-on

1 延迟初始化bean ApplicationContext实现的默认行为就是再启动时将所有singleton bean提前进行实例化。 通常这样的提前实例化方式是好事,因为配置中或者运行环境的错误就会被立刻发现,否则...

2017/03/26 11:52
72
Spring4-容器5-依赖配置详解

1 直接变量 (基本类型, String类型等) <bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <!-- results in a setDriverClassName(Stri...

2017/03/24 22:17
19
Spring4-容器4-依赖注入

依赖注入有两种方式:构造器注入和Setter注入。 1 构造器注入 1.1 构造器参数解析 1.1.1 按照定义顺序解析 如果构造器参数的类型定义没有潜在的歧义,那么构造器会按照bean定义中构造器参数的...

2017/03/24 15:32
13
Spring4-容器3-实例化bean

1 简介 实例化bean有三种方式: (1)通过构造函数实例化 (2)使用静态工厂方法实例化 (3)使用实例工厂方法实例化 2 通过构造函数实例化 2.1 准备bean-User类 package com.ws.edu.spring;...

2017/03/24 14:05
9
Spring4-容器2-bean的命名

1 命名规则 (1)每个bean都有一个或多个标识符,这些bean的标识符在它所在的容器中必须唯一。 (2)基于xml的配置元数据中,你可以使用id 或(和) name 属性来指定bean的标识符,用 name 属...

2017/03/24 13:59
30
Spring4-容器1-容器概述

1 准备Bean类-User package com.ws.edu.spring; public class User {   private int id;   private String name;   public int getId() {     return id;   }   public void setId(int id) {     thi...

2017/03/23 22:36
12
SpringBoot实战教程1-快速入门

1 HelloWorld示例 1.1 新建maven工程 1.2 编写pom文件 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   xsi:schemaLocation="...

2017/03/23 08:50
65
触发JVM进行Full GC的情况及应对策略

堆内存划分为 Eden、Survivor 和 Tenured/Old 空间,如下图所示: 从年轻代空间(包括 Eden 和 Survivor 区域)回收内存被称为 Minor GC,对老年代GC称为Major GC,而Full GC是对整个堆来说的...

2017/03/10 15:15
21
数据库性能优化详解

1 数据库访问优化法则 要正确的优化SQL,我们需要快速定位能性的瓶颈点,也就是说快速找到我们SQL主要的开销在哪里?而大多数情况性能最慢的设备会是瓶颈点,如下载时网络速度可能会是瓶颈点...

2017/03/10 14:28
73
JVM总结5-JVM调优工具使用总结

常用的JVM调优工具有: Jconsole,jProfile,VisualVM Jconsole : jdk自带,功能简单,但是可以在系统有一定负荷的情况下使用。对垃圾回收算法有很详细的跟踪。详细说明参考这里 JProfiler:...

2017/03/10 11:01
17
JVM总结4-内存溢出相关的异常

1 年老代堆空间被占满 异常: java.lang.OutOfMemoryError: Java heap space 说明: 这是最典型的内存泄漏方式,简单说就是所有堆空间都被无法回收的垃圾对象占满,虚拟机无法再在分配新空间...

2017/03/10 10:40
12
使用Redis实现分布式锁

1 Redis命令介绍 1.1 SETNX命令 语法: SETNX key value 功能: 当且仅当 key 不存在,将 key 的值设为 value ,并返回1;若给定的 key 已经存在,则 SETNX 不做任何动作,并返回0。 例子 re...

2017/03/09 21:48
54
分布式延迟队列设计

1 背景 延迟队列,顾名思义它是一种带有延迟功能的消息队列。 那么,是在什么场景下我才需要这样的队列呢? 我们先看看以下业务场景: 当订单一直处于未支付状态时,如何及时的关闭订单,并退...

电商防止库存超卖解决方案

1 悲观锁解决方案 悲观锁,也就是在修改数据的时候,采用锁定状态,排斥外部请求的修改。遇到加锁的状态,就必须等待。可以采用redis队列+mysql事务控制的方案,下面是流程图: mysql的执行代...

2017/03/09 19:36
706
下单以及订单处理流程描述

1 下单过程 预订者浏览某个已发布的会议; 进入会议的详情页面,该页面显示了所有可预订的座位分类信息; 预订者选择好要预订的座位分类,录入每个分类的预定数量; 预订者点击提交按钮,提交...

2017/03/09 19:18
79
谈谈数据库的ACID

1 事务 定义:所谓事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。 准备工作:为了说明事务的ACID原理,我们使用银行账户及资金管理的案例进行分析...

2017/03/08 22:37
7
Spring 事务管理高级应用难点剖析: 第 3 部分

1 概述 对于应用开发者来说,数据连接泄漏无疑是一个可怕的梦魇。如果存在数据连接泄漏问题,应用程序将因数据连接资源的耗尽而崩溃,甚至还可能引起数据库的崩溃。数据连接泄漏像黑洞一样让...

2017/03/08 21:57
15

没有更多内容

加载失败,请刷新页面

返回顶部
顶部