`
君淋天下
  • 浏览: 31711 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论
文章列表
最近在学习Redis使用,用Java写Redis客户端的访问Redis代码 我使用的客户端是Jedis,使用过程中出于对CS结构C端代码编写的兴趣,准备看看Jedis代码实现,并记录下来 首先看了Jedis 最简单的set命令调用过程 Jedis jedis = new Jedis("localhost"); jedis.set("foo", "bar"); 完整的代码调用UML时序图如下:  
bash常用功能备忘 背景 工作中偶尔要跟shell脚本打交道 但是shell脚本又不是频繁使用工具,再加上shell脚本本身的知识体系不够系统化。每次使用时一些基本的用法也要google确定下,现在特地整理下常用功能 做成模板方便以后参考使用 基本流程控制 一些说明 test命令test命令用于表达式求值 并返回布尔值 ,如果表达式求值结果为true"退出状态"为0,为false退出状态为非0值 用 #?查看"退出状态" test 1 -eq 1 echo $? # 显示为0 表示1 -eq 1执行结果为true 另外可以使用 ...
关于java泛型其实挺复杂的,之前看文档的时候做过一些泛型名词摘记,今天把这这个笔记放到博客上来,以后抽空完善这篇关于泛型的文章   一  类型参数(Type parameters)二  泛型子类型(Subtyping)      有点违反OOP的直觉  List<String>  listStr = new ArrayList<String>();  List<Object> listObj = listStr;  不允许三 泛型通配符(Wildcards):     Collection<?> 和Collection<Object&g ...
最近在做前端的东西比较多,为更好的掌握的前端技能水平,想通过写web前端组件来提供前端代码能力,第一个组件选了Windows 7右下角的日历为模仿对象 效果如下     Javascript代码 <script type="text/javascript"> var weekAry = ['日', '一', '二', '三', '四', '五', '六']; var monthAry = ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月' ...
这是一篇翻译文章,原文来自http://javarevisited.blogspot.com/2011/07/java-multi-threading-interview.html   1 有线程t1、t2、t3,如何确保线程t2在线程t1运行完成后运行,线程t3在线程t2运行完成后运行   2 显示的锁比同步代码块有哪些优势,如何实现一个高性能的读多写少缓存服务器   3 sleep()方法和wait()方法有什么区别    http://javarevisited.blogspot.sg/2011/12/difference-between-wait-sleep-yield ...
    原文来自 https://community.oracle.com/docs/DOC-887721  我翻译了其中的问题,解答没有翻译, 有一定工作经验的人来说这二十五个问题百分之七十都属于常见题目不难,比较偏门的问题可以通过查看JavaDoc或源码明白。   1  HashMap如何工作   具体详细链接http://javarevisited.blogspot.com/2011/02/how-hashmap-works-in-java.html   2 Queue接口poll()方法和remove方法的不同之处   3 fail-fast迭代和fail-safe ...
 根据Oracle 对java 8开发进度安排,java将于2014年的3月份发布。从java8 新引入的特性看,函数式编程语言对java8 影响很大,运行在JVM上的Scala、Groovy等编程语言部分特性被java 8吸收。平台、API等方面先不关注,仅就从编程语言特性来说java8绝对是一次革命性的的改进,有了java 8 java语言的表达能力、简洁性有了很大提高,跟Scala groovy等JVM上的新兴语言差距缩小了很多。语言特性改进概括起来有以下几点  函数式接口    Lambda表达式 方法引用 接口的改进 Stream 这篇文章我将说说以上几个语言特 ...
JDK自身携带了大量的工具,以jdk1.6.0_38为例,已经自带了47个工具,包括大量的调试分析工具,有些是命令行有些是图形界面工具,这篇文章记录下其中一些工具的使用说明,以后有新的使用体会了再完善补充这篇文章   1 jstack  jstack用于打印java进程的堆栈信息或者从jvm进程崩溃后生成的dump文件生成堆栈信息 命令使用格式 jstack [option] pid jstack [option] core_file jstack [option] [server_id@]<remote server ip or hostname>   其中[ ...
今天在网上逛的时候发现一个有趣的逻辑推理题目-爱因斯坦之谜。题目的描述如下:"在一条街上有颜色互不相同的五栋房子,不同国籍的人分别住在这五栋房子力,每人抽不同品牌的香烟,喝不同的饮料,养不同的宠物。已知如下情况:1.  英国人住红色房子里。2.  瑞典人养狗。3.  丹麦人喝茶。4.  绿色房子坐落在白色房子的左面。5.  绿色房子的主人喝咖啡。6.  抽Pall Mall香烟的人养鸟。7.  黄色房子的主人抽Dunhill香烟。8.  挪威人住第一间房子。9.  五座房子中间的那座的主人喝牛奶。10. 抽Blends香烟的住在养猫人的隔壁。11. 养马的人住在抽Dunhill香烟 ...
使用MySQLdb访问mysql数据库插入数据后为乱码。为支持多种语言从数据库到前台代码一律使用UTF-8编码。下面是记录解决乱码问题的流水账。 1 修改mysql配置 在mysql安装目录下建立etc目录,复制my-small.ini到etc目录,并命名为my.ini 在my.ini文件末尾增加 [mysqld] default-character-set=utf8 [client] default-character-set=utf8 2 修改mysqld启动参数 增加mysqld的启动参数--character-set-server  utf8 mysqld --console -- ...
以动手实践为荣,以只看不练为耻. 以打印日志为荣,以出错不报为耻. 以局部变量为荣,以全局变量为耻. 以单元测试为荣,以手工测试为耻. 以代码重用为荣,以复制粘贴为耻. 以多态应用为荣,以分支判断为耻. 以定义常量为荣,以魔法数字为耻. 以总结思考为荣,以不求甚解为耻.
  本文章收集各种互联网技术架构,不断更新...... 1. 中国首届微博开发者大会杨卫华演讲《微博平台架构和安全》     视频:http://video.sina.com.cn/p/tech/i/v/2010-11-16/232961185323.html      PPT:http://u.115.com/file/f38f1e210b 2  Tumblr:150亿月浏览量背后的架构挑战(上)     http://cloud.csdn.net/a/20120214/311806.html 3   TUP第19期综述:从12306看海量并发网站架构(含PPT下载)    ht ...
    最近在接手Web相关工作,为了保证浏览器的兼容性。需要使用多个浏览器来测试Web页面。 IE 8在地址栏不输入http:// ,而是直接IP,竟然网站不能打开。微软还真“搞”!!!    自从来了Javaeye后就很少上CSDN,除了去CSDN下载频道下载资料。CSDN下载频道右侧输入登录名和密码宽的宽度还真下。下载过来文件的文件名都是乱码,每次下载完成后先重命名文件。
             一些高效的Linux命令行操作               本文将记录一些在使用Linux过程中,在命令行中进行工作的高效率命令,随着时间的积累如果我有新的技巧也将在本篇博文中更新。如果您也有高效率的小技巧,欢迎留言给我 1. 查找Java项目中,main方法定义在哪个文件里.     切换到你要查找项目的目录下执行    grep -rlI '\<main' .   如果你觉得自己打字快,不怕麻烦执行如下命令也可以找到该文件   find -type f -name *.java  -exec grep -l '\<main' {} \; 2 ...
参考了好几篇文章如何设置JDBC数据源。网上流出的配置方法大多是针对以前版本的Tomcat配置。记录一下我配置的过程。 1.添加数据库的JDBC驱动    将你所使用的数据库所对应的JDBC驱动拷贝一份到 $CATALINA_HOMEcommon/lib/目录下, 比如我使用的是Mysql数据库,驱动文件为mysql-connector-java-3.1.6-bin.jar 2.修改$CATALINA_HOME/conf/context.xml这个配置文件    添加如下xml代码     <Resource name="jdbc/mysql" ...
Global site tag (gtag.js) - Google Analytics