​上下文在web容器中的启动 1,IoC容器的启动过程 IoC的启动过程就是建立上下文的过程.该上下文是与ServletContext相伴.在Spring中存在一个核心控制分发器,DispatcherServlet,这是Spring的核心.在web容器启动Spring应用程序时.首先建立根上下文,然后ContextLoader建立WebApplicationContext. Web容器中启动Spring步骤例如以下: 在web.xml中.已经配置了ContextLoadListener,该类实现…
目录 1.1 关于IOC容器设计的线路区别 1.1.1 BeanFactory 1.1.2 ApplicationContext 2.1 FileSystemXmlApplicationContext 再次阅读这本书有些不一样的感悟,记录一些零星点点. 1.1 关于IOC容器设计的线路区别 我们都知道在Spring里主要有两种设计IOC容器的思路,一种是围绕BeanFactory,另外一种是围绕ApplicationContext展开.这两种设计的主要区别在哪里? 从头回忆一下两种设计方案的实现…
一.事件(Application Event) Spring的事件为Bean和Bean之间的消息通信提供了支持.当一个Bean处理完一个任务之后,希望另一个Bean知道并能做相应的处理,这时我们就需要让另一个Bean监听当前Bean所发送的事情. Spring的事件需要遵循如下流程: (1)自定义事件,集成ApplicationEvent. (2)定义事件监听器,实现ApplicationListener. (3)使用容器发布事件. 示例: 1.自定义事件. package com.ecwork…
第三章 查询处理 逻辑查询处理:(8) SELECT (9) DISTINCT <select_list> (1) FROM <left_table> (3) <join_type> JOIN <right_table> (2) ON <join_condition> (4) WHERE <where_condition> (5) GROUP BY <group_by_list> (6) WITH {CUBE|ROLLUP…
javac编译的四个主要的流程: 词法分析器:将源码转换为Token流 将源代码划分成一个个Token(找出java语言中的关键字) 语法分析器:将Token流转化为语法树 将上述的一个个Token组成一句句话(或者说成一句句代码块),检查这一句句话是不是符合Java语言规范(如if后面跟的是不是布尔判断表达式) 语义分析器:将语法树转化为注解语法树 将复杂的语法转化成简单的语法(eg.注解.foreach转化为for循环.去掉永不会用到的代码块)并做一些检查,添加一些代码(默认构造器) 代码生…
今天在看<spring技术内幕>,第一章中多次提到了使用POJO来完成开发,就百度了一下,在此保留 1.     什么是POJO POJO的名称有多种,pure old java object .plain ordinary java object 等. 按照Martin Fowler的解释是“Plain Old Java Object”,从字面上翻译为“纯洁老式的java对象”,但大家都使用“简单java对象”来称呼它. POJO的内在含义是指那些没有从任何类继承.也没有实现任何接口,更没有…
前一段时候我把Spring技术内幕的关于IOC原理一章看完,感觉代码太多,不好掌握,我特意又各方搜集了一些关于IOC原理的资料,特加深一下印象,以便真正掌握IOC的原理. IOC的思想是:Spring容器来实现这些相互依赖对象的创建.协调工作.对象仅仅须要关系业务逻辑本身就能够了. SpringIOC容器的执行步骤是: 1.资源定位,即首先要找到applicationContext.xml文件 2.BeanDefinition的加载,把XML文件里的数据统一加载到BeanDefinition中,…
程序员都很崇拜技术大神,很大一部分是因为他们发现和解决问题的能力,特别是线上出现紧急问题时,总是能够快速定位和解决. 一方面,他们有深厚的技术基础,对应用的技术知其所以然,另一方面,在采坑的过程中不断总结,积累了很多经验. 相信大家都使用过Spring,有些人了解它的核心:IOC和AOP,但只是了解它们的基本概念.使用了反射和动态代理,关于如何管理对象.代理的具体实现了解的比较浅. 有些人使用Spring MVC,使用Spring集成数据库.事务.消息队列以简化操作,但对集成的具体设计思路和实现…
SQL Server技术内幕笔记合集 发这一篇文章主要是方便大家找到我的笔记入口,方便大家o(∩_∩)o Microsoft SQL Server 6.5 技术内幕 笔记http://www.cnblogs.com/lyhabc/articles/3914213.html Microsoft SQL Server 2005技术内幕:T-SQL查询笔记http://www.cnblogs.com/lyhabc/articles/3912608.html Microsoft SQL Server 2…
Android群英传笔记--第四章:ListView使用技巧 最近也是比较迷茫,但是有一点点还是要坚持的,就是学习了,最近离职了,今天也是继续温习第四章ListView,也拖了其实也挺久的了,listview可谓是老牌大将了,很多的应用场景都要使用它,他也是我们用得最多的控件之一了,虽然现在出来了一个RecyclerView,但是ListView的地位一时半会儿还是撼动不了的,这就促使我们更加应该去把他掌握了 一.Listview常用优化技巧 我们一步步来把ListView学习好 1.使用Vie…
<Linux内核设计与实现>第八周读书笔记——第四章 进程调度 第4章 进程调度35 调度程序负责决定将哪个进程投入运行,何时运行以及运行多长时间,进程调度程序可看做在可运行态进程之间分配有限的处理器时间资源的内核子系统.只有通过调度程序的合理调度,系统资源才能最大限度地发挥作用,多进程才会有并发行的效果. 调度程序没有太复杂的原理,最大限度地利用处理器时间的原则是只要有可以执行的进程,那么就总会有进程正在执行,但是只要系统中可运行的进程的数目比处理器的个数多,就注定某一给定时刻会有一些进程不…
20135307 张嘉琪 第八周读书笔记 第四章 进程调度 调度程序负责决定将哪个进程投入运行,何时运行以及运行多长时间,进程调度程序可看做在可运行态进程之间分配有限的处理器时间资源的内核子系统.只有通过调度程序的合理调度,系统资源才能最大限度地发挥作用,多进程才会有并发行的效果. 调度程序没有太复杂的原理,最大限度地利用处理器时间的原则是只要有可以执行的进程,那么就总会有进程正在执行,但是只要系统中可运行的进程的数目比处理器的个数多,就注定某一给定时刻会有一些进程不能执行,这些进程在等待运行,…
<Linux内核分析>读书笔记(四章) 标签(空格分隔): 20135328陈都 第四章 进程调度 调度程序负责决定将哪个进程投入运行,何时运行以及运行多长时间,进程调度程序可看做在可运行态进程之间分配有限的处理器时间资源的内核子系统. 4.1 多任务 多任务操作系统就是能同时并发地交互执行多个进程的操作系统. 多任务系统可以划分为两类: 非抢占式多任务 进程会一直执行直到自己主动停止运行 抢占式多任务 Linux/Unix使用的是抢占式的方式:强制的挂起进程的动作就叫做抢占. 像所有unix…
developerWorks 图书频道: 深入分析 Java Web 技术内幕,第 10 章 深入理解 Session 与 Cookie Session 与 Cookie 不管是对 Java Web 的初学者还是熟练使用者来说都是一个令人头疼的问题.在初入职场时恐怕很多程序员在面试的时候都被问到过这个问题.其实这个问题回答起来既简单又复杂,简单是因为它们本身只是 HTTP 协议中的一个配置项,在 Servlet 规范中也只是对应到一个类而已:说它复杂原因在于当我们的系统大到需要用到很多 Cook…
4   Visual Effects    视觉效果        读书笔记 第四章 Well, circles and ovals are good, but how about drawing rectangles with rounded corners? Can we do that now, too? Steve Jobs   We looked at the layer frame in Chapter 3, "Layer Geometry," and the layer…
Spring Boot可以更为方便地搭建一个Web系统,之后服务器上部署也较为方便 创建Spring boot项目 1. 使用IDEA创建项目 2. 修改groupid和artifact 3. 一路next,自动IDEA就会自动下载依赖的jar包 4. 运行 之后运行项目(Application类),打开http://localhost:8080就会出现下面的白板页面,说明已配置成功 项目结构说明及使用 项目结构说明 我们可以看见项目中是这样的结构,Spring boot内置了tomcat服务器…
之前写的那篇Spring框架学习笔记(5)--Spring Boot创建与使用,发现有多小细节没有提及,,正好现在又学习了mybatis plus这款框架,打算重新整理一遍,并将细节说清楚 1.通过IDEA创建spring boot 2.项目相关配置 只需要修改第一个和第二个,下面的其他选项会自动改变 3.勾选需要的库 这一步勾选了之后,spring boot会自动地在pom.xml文件中添加相关对应的第三方开源库的依赖 这里如果不熟悉的话,建议不要勾选mybatis和mysql,这样创建出来的…
[HeadFrist-HTMLCSS学习笔记]第三章构建模块:Web页面建设 敲黑板!! <q>元素添加短引用,<blockquote>添加长引用 在段落里添加引用就使用<q> 自成一段的引用就使用<blockquote> 不是所有浏览器都有相同的显示 块元素<block> <h1><h2>···<h6>和<blockquote>均是块元素 每个块元素都单独显示(分块显示) 内联元素<inli…
简介: 1.spring 与unix.window这些操作在计算机系统中起到的作用是类似的 2.两大核心模块:IOC\AOP 3.为应用开发提供了许多现成的系统组件:事务处理.Web MV.JDBC.O/R映射.远程调用等,这些组件可以在开源软件和商业产品中自由选择,重复体现了Spring的开放性. 第1章:Spring的设计理念和整体构架 1.IOC(依赖反转)可以使原来的对象-对象关系,转化为对象-IOC容器-对象的关系 2.Spring的设计理念:面向接口开发而不依赖于具体的产品实现 3.…
1.Spring的主要子项目:     -1.Spring Framework(Core):Spring项目的核心.提供IoC,AOP,MVC等核心功能.     -2.Spring Web Flow:工作流引擎.     -3.Spring BlazeDs Integration:Spring提供的与Flex通讯模块.     -4,Spring Security:Spring认证和安全框架.     -5,Spring Security OAuth:OAuth在Spring的实现上提供支持.…
一.AOP概述 AOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善.OOP引入封装.继承.多态等概念来建立一种对象层次结构,用于模拟公共行为的一个集合.不过OOP允许开发者定义纵向的关系,但并不适合定义横向的关系,例如日志功能.日志代码往往横向地散布在所有对象层次中,而与它对应的对象的核心功能毫无关系对于其他类型的代码,如安全性.异常处理和透明的持续性也都是如此,这种…
题记:写代码已经有2年了,学到了很多知识,但是没有一个好习惯去记录,去分享,好多知识点都会忘记,所以从今天开始学着像大牛一样去记录自己经历项目的点点滴滴,先从最近读<Mysql技术内幕>开始吧,写一个完整的读书笔记吧:废话不多说了,Let's go! 哈哈...     做为一个程序员来说,都要和数据库打交道,不管是关系型的(SQL Server.MySql.Oracle等),还是非关系型的(MongoDB等);我觉得只要使用过或者了解过,大家或多或少的都掌握了SQL的术语和基本概念,例如:数…
1.简化Java开发 Spring是一个开源框架,它的根本使命在于简化java开发.为了降低java开发的复杂性,Spring采取了以下4种关键策略: 基于POJO的轻量级和最小侵入性编程      有很多框架强迫应用继承它们的类或实现它们的接口从而导致应用与框架绑死,而基于Spring构建的应用通常没有任何痕迹表明你使用了Spring,最坏的场景是一个类或许会用到Spring注解,但它依旧是POJO. 通过依赖注入和面向接口实现松耦合 任何应用都会由多个类相互协作完成业务逻辑,按照传统做法,每…
在前面章节有童鞋提到过 关于配置文件 Objects.xml 路径的相关问题,这些东西是 IResource 接口的一些内容,接下来就详细介绍一下 IResource 接口. IResource 接口 位于Spring.Core.IO 命名空间下,它能够使用统一的方式描述和访问不同类型的资源.通过该接口可以使用类似多态,与协议无关的方式来处理文件和URI资源.IResource 接口继承自 IInputStream 接口,后者只有一个属性: Stream InputStream , IResou…
生成SingleTon代理对象在getSingleTonInstance方法中完毕,这种方法时ProxyFactoryBean生成AopProxy对象的入口.代理对象会封装对target目标对象的调用.也就是说针对target对象的方法调用行为会被这里生成的代理对象所拦截. 详细的生成过程是首先读取ProxyFactoryBean配置,为生成代理对象做好准备.Spring通过AopProxy类来详细生成代理对象.对于getSingleTonInstance方法中生成代理对象的步骤例如以下: /*…
AOP是Aspect-Oriented Programming(面向方面/切面编程)的简称.Aspect是一种新的模块化机制,用来描述分散在对象.类或函数中的横切关注点.分离关注点使解决特定领域问题的代码从业务逻辑中独立出来,业务逻辑的代码中不再含有针对特定领域问题代码的调用,业务逻辑同特定领域问题的关系通过切面来封装.维护,这样原来分散在整个应用程序中的变动就可以很好地管理起来. Advice通知 Advice(通知)定义在连接点做什么,为切面增强提供织入接口.在Spring AOP中,它主要…
通过本系列的文章对Spring的介绍,我们对Spring的使用和两个核心功能IOC.AOP已经有了初步的了解,结合我个人工作的情况,因为项目是金融系 统.那对事务的控制是不可缺少的.而且是很严格的控制. 依据我对项目的研究,它在管理模块用的是JTA的事务,而在交易模块用的是JDBC的事 务,可是.全部的这些事务的使用,都是用Spring封装后的编程式事务.我在看完<Spring In Action>后.在网上看了下大家对Spring事务的理解.貌 似都没有真正的文章是去全面剖析Spring对这…
个人博客网:https://wushaopei.github.io/    (你想要这里多有) 一.Spring 整合Activemq 1.所需jar包 <dependencies> <dependency> <groupId>org.apache.activemq</groupId> <artifactId>activemq-all</artifactId> <version>5.15.11</version>…
上篇博文对Spring的工作原理做了个大概的介绍,想看的同学请出门左转.今天详细说几点. (一)Spring IoC容器及其实例化与使用 Spring IoC容器负责Bean的实例化.配置和组装工作有两个接口:BeanFactory和ApplicationContext.其中ApplicationContext继承于BeanFactory,对企业级应用开发提供了更多的支持.在实际应用中都是用该接口. 1)实例化Spring容器(主要有四种) 1.ClassPathXmlApplicationCo…
1.文件上传.      spring MVC为文件上传提供了直接的支持,这种支持是即插即用的MultipartResolver(多部分解析器)实现的.spring MVC使用Apache Commons FileUpload技术实现了一个MultipartResolver实现类:CommonsMultipartResolver.因此,spring MVC的文件上传还需要依赖Apache Commons FileUpload的组件. spring MVC上下文中默认没有装配MultipartRe…