- 浏览: 18863 次
- 性别:
- 来自: 杭州
最新评论
文章列表
spring源码学习(四)
- 博客分类:
- java
在(三)里我们已经进入了AbstractApplicationContext的刷新方法,refresh,代码如下
public void refresh() throws BeansException, IllegalStateException {
synchronized (this.startupShutdownMonitor) {
// Prepare this context for refreshing.
prepareRefresh();
// T ...
spring源码学习(三)
- 博客分类:
- java
创建容器我们在(二)里仔细的学习过了,现在再看容器的configureAndRefreshWebApplicationContext,配置并且刷新,这一步是整个spring ioc的核心,点进去看
protected void configureAndRefreshWebApplicationContext(ConfigurableWebApplicationContext wac, ...
spring源码学习(二)
- 博客分类:
- java
这一段我主要去看看spring容器的创建,继续(一)的代码,我们看
if (this.context == null) {
this.context = createWebApplicationContext(servletContext);
}
创建容器
protected WebApplicationContext createWebApplicationContext(ServletContext sc) {
Class<?> contextClass = determineContextClass(sc);
if ...
spring源码学习(一)
- 博客分类:
- java
网上很多关键字针对了“spring源码阅读”,但仔细的查看了很多,发现大部分都是一样的,而且讲得很粗,可以借鉴这些思路.但粗粗的去读一下这些文章,对spring真正的实现,还是比较迷茫的,要想真正了解spring,还是得仔细的研读它的每一行代码,对照着别人的思路,静下心来,反复看,才能一点一点的去理解它。有些关键字在百度上讨论得很少的关键字,比如:“EntityResolver”,“PropertySource”,"propertyResolver"之类的,很多人的博文略提到了一点,但也是匆匆而过,这些,都需要自己去看document,自己去看代码,自己去想。
...
ClassLoader原理
- 博客分类:
- java
一.ClassLoader分为bootClassStrap,ExtClassLoader,AppClassLoader.
booeClassStrap由C或更底层的语言实现,用来加载jvm和操作系统最底层的核心类库
Ext由java实现,用来加载比较核心的类库
App由java实现,用来加载应用资源,比如class path中的资源,eclipse plugin中的资源等等
二.加载器通常都是把加载权优先上抛给parent加载器,当parent加载不到时才转交给child,最后一个child也加载不到时,抛出ClassNotFoundException.
三.如下代码:
...
最近我们team做了一个推荐系统,整个系统分为算法和平台两部分,而算法又分为hive sql算法和map reduce算法,因此,近几个月都在学这些东东,感觉分布式的计算还是蛮强的,hive就不说了,这里把map reduce的入门例子记录一下入门过程。
一.编写main方法
package com.taobao.aladdin.biz.core.mapreduce.test;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IntWritable;
import org.apache.hado ...
一.用linux系统进行定时
1.新建一个目录用来存放备份数据
mkdir /home/mianfeng/backup/metastore_database/data
2.新建一个文件用来存放脚本
vi /home/mianfeng/backup/metastore_database/mysql
3.写入脚本
va=` date +%Y%m%d `
mysqldump hive06 -uroot -proot>/home/mianfeng/backup/metastore_database/data/mysql$va.sql
4.修改权限
chmod 777 ...
阻塞队列是jdk1.5新特性,本质就是一个队列,当队列为空时,消费方阻塞等待,直到队列有新的对象;队列满了时,生产方阻塞等待,直到队列有空位时;它实现了多线程的排队等待。
队列,Queue接口,有先进先出的特性,与List,Set在同一级别,都继承了Collection接口,而BlockingQueue继承了Queue。
Queue提供了以下方法:
add,offer:add如果队列满了, 则抛出异常IIIegaISlabEepeplian,offer如果满则返回false
remove,poll:移除一个元素,为空时,remove抛异常NoSuchElemen ...
对于如下代码:
public class Test {
public static void main(String[] args) {
int i = 0 ;
Test test = new Test();
test.valueMethod(i);
System.out.println(i);
}
private void valueMethod(int a){
a = 5;
}
}
...
一、线程概述
线程是程序运行的基本执行单元。当操作系统(不包括单线程的操作系统,如微软早期的DOS)在执行一个程序时,会在系统中建立一个进程,而在这个进程中,
必须至少建立一个线程(这个线程被称为主线程)来作为这个程序运行的入口点。因此,在操作系统中运行的任何程序都至少有一个主线程。
线程是程序运行的基本执行单元。当操作系统(不包括单线程的操作系统,如微软早期的DOS)在执行一个程序时,会在系统中建立一个进程,而在这个进
程中,必须至少建立一个线程(这个线程被称为主线程)来作为这个程序运行的入口点。因此,在操作系统中运行的任何程序都至少有一个主线程。
进程和线程是现代操作系统中两个 ...
首先介绍一下,JDBC框架做到了热插拔。
一.Driver接口
//Driver.java
package java.sql;
public interface Driver {
Connection connect(String url, java.util.Properties info) throws SQLException;
boolean acceptsURL(String url) throws SQLException;
...