- 浏览: 72911 次
- 性别:
- 来自: 深圳
最新评论
-
bushuai19951203:
你好,我现在的场景是,调用Person人的get方法时出现异常 ...
对象拷贝的陷阱【把人装进了狗笼里】 -
mrchengxin2012:
LZ看是不是可以这样?
//回调函数
function cal ...
JS关于多个函数多个参数如何动态调用,apply的灵活应用 -
leaow567:
我最近也在看
Sizzle 源码分析 -
xuranpaoche:
最近也在用,使用beanutils怎么进行深度克隆呢
对象拷贝的陷阱【把人装进了狗笼里】 -
goodscript:
huangtut 写道反转的时候有问题啊, 输出是999999 ...
64进制编码转换
文章列表
不同系统之间往往需要进行数据同步,保持数据的一致性。
比如每天需要从HR主数据中同步人员数据到其他的业务系统系统
对于这种不同数据库之间的数据同步,无非就是要解决远程数据变化的三种形式:insert、update、delete。
1、当远程数据insert的时候,新增数据插入为本地数据。
2、当远程数据update的时候,如果更新的数据为需要的字段,更新本地数据,否则不处理
3、当远程数据delete的时候,在本地数据执行物理删除或者逻辑删除。
解决第一种情况需要一个唯一字段:比如下表中的ID,ID全局唯一,当远程数据产生新的ID可判断为insert
tomcat bootstrap启动步骤
- 博客分类:
- tomcat
TOMCAT以一个责任链贯穿Server的启动过程。首先是读取配置文件、由Server启动一个service,由service把connector和container组装起来对外界提供服务。
在tomcat6中connector包括三种不同的connector:
1、Http Connector 基于HTTP协议,负责建立HTTP连 ...
javascript键盘事件管理工具
- 博客分类:
- javascript
最近在开发一个在线IDE。
在线IDE其中很重要的一个难点是如何处理好快捷键的事件绑定
针对这个问题我写了一个库来管理快捷键事件:
比如按下alt+/ 提示代码
ctrl+enter 执行代码
ctrl+d 删除一行代码
lib.js类库代码如下:
var lib = (function() {
var addListener = function(element, eventType, func, args) {
var eventHandler = func;
if (args) {
eventHandler = function(e) {
func ...
package org.sse;
/**
* 演示二进制计算过程
* 演示简单的与运算 并打印运算结果 and
* 演示简单的或运算 并打印运算结果 or
* 演示简单的左平移运算 并打印运算结果 leftMove
* 演示简单的右平移运算 并打印运算结果 rightMove
*
*/
public class PrintBinaryString {
public static void main(String[] args) {
rightMove(1, 1, 32);
System.out.println("" ...
excel导入通用工具
- 博客分类:
- java
如附件
DataImportExcel入口类
Interceptor拦截器接口,拦截设置业务方法
ExcelConfig.xml配置文件
ExcelConfig配置文件管理类
ParseExcelException异常类
TaxLocalLaw测试用的实体类
XMLload、XMLUtil读取xml的工具类
/**
* 如何优雅的迭代htmlElement元素
* 应用场景:
* 查找element元素下符合条件的子元素、或者子元素的子元素
* 用法:NodesIterator.traverse(ele, procss);
* 返回结果保存在 NodesIterator.target
*/
var NodesIterator = (function() {
var ths, target, callback = function(node, util) {
if (util(node)) {
ths.breakFlag = true;
...
Sizzle 源码分析
- 博客分类:
- javascript
- Sizzle
解析Sizzle 的源码首先从Sizzle 的入口开始
/**
*
* 这个方法是Sizzle 的入口
*/
var Sizzle = function(selector, context, results, seed) {
/**
* results是保存结果的数组 context默认为document 各种局部变量的定义
*/
results = results || [];
context = context || document;
var match, elem, contextXML, m, nodeType = c ...
关于Hash Collision DoS漏洞:解析与解决方案
无意发现了这篇文章,觉得很有意思。
但是上面说的都是理论,感觉似懂非懂。
于是实践一把:做一个实例说明Hash Collision DoS漏洞是可行的。
因为大家都是java开发的,所以针对java web项目来做实例
构造一个有漏洞的服务程序
附件中有下载。
服务程序主要就是一个web project
添加spring 的MVC功能
然后提供一个登录的入口。
假如我们的web服务访问的地址是:http://192.168.1.20:8080/HashCollisionDoS
登录的入口是:http://192.168.1.20: ...
先看一个实例
使用URLClassLoader每隔3秒钟重复加载A类的class
假如在这3秒钟内我们把class修改了
将会得到什么样的结果:
-------------------------------------
package jvm;
import java.net.URL;
import java.net.URLClassLoader;
public class Test {
public static void main(String[] args) {
while (true) {
try {
ClassLoade ...
本文引自 外刊IT评论网
目前为止,据我个人观察,从语法角度上讲,最被人诟病的一种语言应该是LISP语言了。打开这种语言的代码,一眼望去,满目全是括弧,一层套一层。这种语言特征最大的问题是,它不符合人们通常的思 ...
本文引自 外刊IT评论网
入门
Kibo不依赖任何东西。你只要把它放到你的HTML代码里就行了:
<script type="text/javascript" src="kibo.js"></script>
下载 kibo.js
创建一个Kibo对象实例,事件监听器就建立起来了:
var k = new Kibo();
Kibo对象的构造器有一个可选参数——你指定的接收事件的HTML元素。可以是input, textarea 或 select,缺省情况下是window.document。
语法和用法
本工具库提供了两 ...
今天在网上看到有一道算法题目:
求N个字符串中的最大公子串
http://www.iteye.com/topic/1118325
刚好闲着,做之。
先说一下思路:
1、从N个字符串中找出最小的字符串
2、分解出最小字符串最大公字符串列表:
例如:abcde
--------------------
abcde
abcd
bcde
abc
bcd
cde
ab
bc
cd
de
----------------------
3、分解出来的公子串从上到下去匹配其他的字符,都能匹配成功则是所要查找的最大公子串
4、如果同时存在两个相等长度 ...
首先定义一个回调接口:
接口输入参数采用动态参数,方便灵活
import java.io.IOException;
public interface CallBack {
/**
* 接口有意设计成动态参数形式
* 调用更加灵活
* @param objs
* @throws IOException
*/
void execute(Object... objs) throws IOException;
}
实现递归过程
短短的15行代码就完成了文件夹的递归解析过程
整个历遍过程不涉及到任何业务代码、更好的分离业务逻辑和代码逻辑分类
im ...
当你使用commons-beanutils.jar插件的BeanUtils.copyProperties对象拷贝功能时,尤其是涉及到对象深度拷贝的时候尽量避免下面例子:
不要把人装进了狗笼里面
List<Dog>本来只能添加Dog 但是却从里面取出一个Person
import java.util.List;
public class Dogs {
private String id;
private List<Dog> data;
public List<Dog> getData() {
return data;
}
...
以下是在java代码中引用freemark的代码片段
依赖的包spring3.0和freemark2.3.18(附件提供下载)
QuestionForm是以个普通的对象 替换成你自己对象即可
import java.io.*;
import java.util.*;
import org.springframework.core.io.Resource;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import org.springframework.core. ...