一.构建一个框架的项目的思路 首先我们先建立一个web项目,我们需要jar,mybatis-config.xml和studentDao.xml的配置随后就是dao.daoimpl.entity.的架构. 二.具体步骤(添加一个学生) 1.创建一个web项目 2.导入jar 3.创建实体entity /** * 学生实体类 * @author Happy * */ public class Student { private Integer stuno; private String stunam…
代码地址: 1.源码分析二主要分析的内容 1.使用@Condition多条件注册bean对象2.@Import注解快速注入第三方bean对象3.@EnableXXXX 开启原理4.基于ImportBeanDefinitionRegistrar注册bean5.基于FactoryBean注册bean对象 1.使用@Conditional多条件注册bean对象 conditional字面意思条件句,亦即满足某些条件将该类注册到IOC容器的意思 @Target({ElementType.TYPE, El…
(function(){ //省略前面代码 var Events = Backbone.Events = { // 根据name订阅事件,push到this._events[name] on: function(name, callback, context) { //如果name为key/value map形式(对象)或空格间隔的字符串,那么对里面的key或元素分别遍历处理(即对子元素调用on方法,根据name订阅事件) if (!eventsApi(this, 'on', name, [ca…
源码包分析 MyBatis 源码下载地址:https://github.com/MyBatis/MyBatis-3 MyBatis源码导入过程: 下载MyBatis的源码 检查maven的版本,必须是3.25以上,建议使用maven的最新版本 MyBatis的工程是maven工程,在开发工具中导入,工程必须使用jdk1.8以上版本: 把MyBatis源码的pom文件中<optional>true</optional>,全部改为false: 在工程目录下执行 mvn clean in…
1. 概述 LinkedHashMap 继承自 HashMap,在 HashMap 基础上,通过维护一条双向链表,解决了 HashMap 不能随时保持遍历顺序和插入顺序一致的问题.除此之外,LinkedHashMap 对访问顺序也提供了相关支持.在一些场景下,该特性很有用,比如缓存.在实现上,LinkedHashMap 很多方法直接继承自 HashMap,仅为维护双向链表覆写了部分方法.所以,要看懂 LinkedHashMap 的源码,需要先看懂 HashMap 的源码.关于 HashMap 的…
Hashtable /HashMap / LinkedHashMap 概述 * Hashtable比较早,是线程安全的哈希映射表.内部采用Entry[]数组,每个Entry均可作为链表的头,用来解决冲突(碰撞). * HashMap与Hashtable基本原理一样,只是HashMap允许null的key/value,且非线程安全. * LinkedHashMap从字面看有两个意思,Hash和Linked,既通过Hash散列存储(与HashMap相同),又把每个Entry(增加了before/af…
[原]FMDB源码阅读(二) 本文转载请注明出处 -- polobymulberry-博客园 1. 前言 上一篇只是简单地过了一下FMDB一个简单例子的基本流程,并没有涉及到FMDB的所有方方面面,比如FMDB的executeUpdate:系列方法.数据库的加解密等等.这次写的就是对FMDatabase和FMResultSet这两个文件的补全内容.每次写这种补全的内容最头疼,内容会很分散,感觉没啥条理. 2. executeUpdate:系列函数 注意除了"SELECT"语句外,其他的…
MapReduce的MapTask任务的运行源码级分析 这篇文章好不容易恢复了...谢天谢地...这篇文章讲了MapTask的执行流程.咱们这一节讲解ReduceTask的执行流程.ReduceTask也有四种任务,可参考前一章节对应的内容,至于Reduce Task要从各个Map Task上读取一片数据,经过排序后,以组为单位交给用户编写的reduce方法,并将结果写入HDFS中. MapTask和ReduceTask都是Task的子类,分别对应于我们常说的map和reduce任务.同上一节一…
Activity源码简要分析总结 摘自参考书籍,只列一下结论: 1. Activity的顶层View是DecorView,而我们在onCreate()方法中通过setContentView()设置的View只不过是这个DecorView中的一部分. DecorView是一个FrameLayout. 2. Activity和UI 有关,它包含一个Window(真实类型是PhoneWindow)和一个WindowManager(真实类型是LocalWindowManager)对象.这两个对象将控制整…
TaskTracker任务初始化及启动task源码级分析 这篇文章中分析了任务的启动,每个task都会使用一个进程占用一个JVM来执行,org.apache.hadoop.mapred.Child方法是具体的JVM启动类,其main方法中的taskFinal.run(job, umbilical)会启动具体的Task. Task分为两种类型:MapTask和ReduceTask,很明显,前者对应于Map任务,后者对应于Reduce任务.且MapTask分为4种:Job-setup Task.Jo…