AOP中的概念1)切面(Aspect): 指交叉业务逻辑的统称, 比如日志,事务,安全;
2)通知(Advice): 指切面的具体实现;
3)连接点(Joinpoint):指切面可以织入到(应用到)目标对象的位置(级别), 两个: 方法/属性代理模式, 调用的是代理对象, 代理维护一个目标对象的属性; 调用方法之前, 先写日志; 再调用具体的实现方法; 调用属性之前, 拦截一下做处理,很少用;...
分类:
编程语言 时间:
2015-04-02 16:29:14
阅读次数:
136
依赖注入
这么来说吧,在一个动作或者事件中,比如说,你现在想写字(Action),那么你需要笔,于是乎,你new了一个笔来写字,这里,你用了new笔,你这个动作和笔有了关联,没了笔,你就写不了字,也就是说,你的这个行为依赖于笔了,他们就构成了依赖关系。或者你现在想组装一台电脑(Transaction),那么你就需要显示器、主板、键鼠光驱等对象,这些对象通常是new出来的,new出来的对象和当前(t...
分类:
编程语言 时间:
2015-04-02 16:31:04
阅读次数:
146
Python setup.py和MANIFEST.in文件...
分类:
编程语言 时间:
2015-04-02 16:28:49
阅读次数:
152
好好的利用异或可以产生神奇的效果。
异或运算的性质:
任何一个数字异或它自己都等于0。也就是说,如果我们从头到尾依次异或数组中的每一个数字,那么最终的结果刚好是那个只出现一次的数字,因为那些出现两次的数字全部在异或中抵消掉了。
例题:
给定大小是N的数组,数组里的元素互相不重复,元素的大小范围是1~(N+1),目标是找出第一个miss的数。要求时间复杂度O(N),空间是O(1)....
分类:
编程语言 时间:
2015-04-02 16:29:18
阅读次数:
200
R语言数据分析系列之六,探索性数据分析,数据初探...
分类:
编程语言 时间:
2015-04-02 16:28:57
阅读次数:
198
注解@SuppressWarningsJ2SE 提供的最后一个批注是 @SuppressWarnings。该批注的作用是给编译器一条指令,告诉它对被批注的代码元素内部的某些警告保持静默。 @SuppressWarnings 批注允许您选择性地取消特定代码段(即,类或方法)中的警告。其中的想法是当您看到警告时,您将调查它,如果您确定它不是问题,您就可以添加一个 @SuppressWarnings 批注...
分类:
编程语言 时间:
2015-04-02 16:26:14
阅读次数:
101
//java 合并两个byte数组
public static byte[] byteMerger(byte[] byte_1, byte[] byte_2){
byte[] byte_3 = new byte[byte_1.length+byte_2.length];
System.arraycopy(byte_1, 0, byte_3, 0, byte_1.length);
Sy...
分类:
编程语言 时间:
2015-04-02 16:25:42
阅读次数:
132
不同类型的数据输出在同一行,在行尾加","即可:
#! -*- coding:utf-8 -*- #加这一行可以在文件中使用中文
print 'This is a string + int',
print '12 + 13 =',
print 12+13
#另一种方式,在命令行中输出时不换行,还会替换掉原来的一行
for i in xrange(1,1000):
print 'Downloa...
分类:
编程语言 时间:
2015-04-02 16:25:25
阅读次数:
248
VirtualEnv用于在?台机器上创建多个独立的python运行环境,实现项目之间的第三方包依赖的隔离,并实现开发环境到生产环境的快速拷贝部署。...
分类:
编程语言 时间:
2015-04-02 16:26:21
阅读次数:
170
NumPy是科学计算方面的一个Python库,在数据挖掘或机器学习或科学统计等领域经常被用到,官网在这里。
在实际业务中,为发挥NumPy的高性能,在编译NumPy时会依赖一些经过特别优化的第三方科学计算库。对于初次接触NumPy的新手来说,从源码编译安装依赖外部库的NumPy通常不是一个简单的任务。
事实上,NumPy这个Python包本身不需依赖任何第三方库就能完成编译和安装使用,只不过其...
分类:
编程语言 时间:
2015-04-02 16:27:32
阅读次数:
315
排序算法有很多种,主要分为插入排序(直接插入排序、二分法插入排序)、交换排序(冒泡排序、快速排序)、选择排序(简单选择排序、堆排序)等,这里不说原理了,只贴代码。原理可以看严蔚敏的数据结构或者网上有人讲的原理很详细。给大家推荐一个链接点击打开链接
1.直接插入排序
package sortpackage;
import java.util.Arrays;
public class inse...
分类:
编程语言 时间:
2015-04-02 16:25:31
阅读次数:
157
大家都知道,如果Spring Security判断当前用户没有权限访问某个资源时,会根据我们的配置自动跳转到Login页面或者403页面。
但实际上这可能并不是我们想要的:因为对于静态资源来说,浏览器一般会进行缓存,一旦缓存后就不会再向服务器请求,也就是说即使没有登陆或权限,静态页面也有可能被显示出来;但这时候对服务段的API调用可能是失败的。如前面所说,API调用失败时,会自动调转到会根据我们的配置自动跳转到Login页面或者403页面(注意这里是一个页面),而这并不是我们想要的结果。
因为对于API...
分类:
编程语言 时间:
2015-04-02 16:25:49
阅读次数:
229
Java中HashMap和HashTable的区别
throw和throws有什么区别
内存泄露和内存溢出的区别...
分类:
编程语言 时间:
2015-04-02 16:26:27
阅读次数:
140
在[1]:
%matplotlib inline
抓取的数据
一个简单的HTTP请求
在[2]:
import requests
print requests.get("http://example.com").text
Example...
分类:
编程语言 时间:
2015-04-02 16:26:39
阅读次数:
192
本文给出一个horspool算法的实现,展示一个使用示例,并向介绍一个非常好用的UTF8字符转码项目,给出一个简单的测试报告等。...
分类:
编程语言 时间:
2015-04-02 16:25:17
阅读次数:
163
#includemain(){float a,b;char c;printf("输入表达式如a+(* - /)b:\n");scanf("%f%c%f",&a,&c,&b);switch(c){case'+':printf("%f\n",a+b);break;case'-':printf("%f\n...
分类:
编程语言 时间:
2015-04-02 16:22:34
阅读次数:
138