Python Stackoverflow 经典问题
What does the “yield” keyword do?
What is a metaclass in Python?
How do I check whether a file exists using Python?
Does Python have a ternary conditional operator?
Calling an external command in Python
What does if __name__ == “__main__”: do?
How to make a chain of function decorators in
继续阅读 »
一、定义
由于Pod是不可靠的,会被创建或者销毁,而且每次重新创建都会使用不同的IP,因此直接访问Pod是不可靠的。而Service就是在Pod之上,对Pod做了一层抽象,从而对上层服务屏蔽了下面具体的Pod。这样即使下面的Pod发生了改变,上层的服务看到的依然是同一个Service。
继续阅读 »
前言
上一篇文章Java 注解介绍讲解了下Java注解的基本使用方式,并且通过自定义注解实现了一个简单的测试工具;本篇文章将介绍如何使用Spring Boot的AOP来简化处理自定义注解,并将通过实现一个简单的方法执行时间统计工具为样例来讲解这些内容。
AOP概念
面向侧面的程序设计(aspect-oriented programming,AOP,又译作面向方面的程序设计、观点导向编程、剖面导向程序设计)是计算机科学中的一个术语,指一种程序设计范型。该范型以一种称为侧面(aspect,又译作方面)的语言构造为基础,侧面是一种新的模块化机制,用来描述分散在对象、类或函数中的横切关注点(crosscutting concern)。
继续阅读 »
在Maven中,默认地,是不会将依赖的Jar包打入可执行Jar包的,如果需要将依赖打入可执行Jar包,需要在pom中添加maven-assembly-plugin插件,这个很容易实现,但是在正规开发中不推荐这样使用,为什么?因为稍微大型一些的项目都至少有几十个依赖项,而每次打包都将这些Jar包打入可执行Jar,使得最后生成的可执行Jar体积非常大。标准的做法是,将所有的依赖Jar包都打入lib目录中,而在可执行Jar的MANIFEST.MF中指定lib路径即可。这也很容易实现,并不是本文的重点,本文的重点是如何将不在Maven中央仓库中的Jar包,或者说依赖本地的Jar包打入可执行Jar,并更新MANIFEST.MF文件。
例如在
继续阅读 »
FieldSelector
提高Lucene检索性能的方法有很多种,这里简单介绍一种常用且便捷可行的方法快速提高Lucene检索性能。在早期的Lucene版本中,使用FieldSelector来决定哪些Fields应该被加载,并以何种方式加载,但是在LUCENE-3309中该接口被废弃,并且提出了新的替代接口StoredFieldVisitor。
FieldCache
另一种提高检索性能的方案是使用FieldCache来缓存Lucene的term values信息,不过该接口目前已被移至org.apache.lucene.uninverting包下,并且访问权限变成包级私有,也就是说,用户再也无法直接使用FieldCache了
继续阅读 »
最近感觉追不动前端的发展了,写篇文章感叹一下。
HTML
我知道有一些学校会教一些简单的网页制作,就是用 Dreamweaver 点一点的那种。大多也会留作业,最后交作业的时候看起来也像模像样。
只要不看代码。
看了代码感觉宁愿选择死亡。
继续阅读 »
/* #include */
/* #include */
int main(){
char *c = malloc(10);
c[0] = 'a';
printf("hi, ");
printf("%s\n", c);
free(c);
return 0;
}
为什么这个程序缺了头文件, 依然可以正常编译运行, 并且有正确的结果?
继续阅读 »
前言
最近对 Git 又有了更深入的了解,本想用自己的语言解释 Git 原理,但见珠玉在前,没自信做得更好,索性罗列自己看过的好文章。
一个问题
Git 只是一个用来管理源码的工具,一般来说,只要了解几个常用命令和遵守团队操作规范,在直到遇上一些奇怪的问题之前,足够应付日常工作了。
继续阅读 »
简介
IntelliJ Idea上的SmartQQ插件,适用于大多数的Intellij IDE,
Eclipse的插件请访问 https://github.com/Jamling/SmartQQ4Eclipse/
更新日志
v1.0.3/2017/07/14,美化了UI,添加了异常通知。
安装
File->Settings->Plugins打开插件设置界面
点击Browser repositories...并输入SmartQQ执行搜索
点击SmartQQ进行安装并重启
使用
安装成功后,会在底部栏出现一个Smart的tab(如果没有底部栏,则在菜单View中把ToolButtons勾选上)
点击Smart中的二维码使
继续阅读 »
最近迁移项目,顺便一些东西也都相应升级一下。中间碰到了一些问题,记录一下。
http/2 所有的 request, response 都转成小写了,和 HTTP/1.1可不一样。详情可以看这里 HTTP/2 finalized - a quick overview
继续阅读 »