存档

作者存档

数据加密算法之MD5和SHA1

2014年12月21日 2 条评论

这个星期记录一下数据加密算法,记得刚开始学编程的时候就有一个疑问:我们的密码就这么放在数据库里面,多不安全啊,数据库管理员不是拿着数据想干嘛就干嘛吗?但是由于认知有限,一直没有解决这个问题,直到去年实习时,当时的项目经理Zack说,用户密码不能明文存放到数据,必须经过MD5加密,终于解决了这个问题。[……]

Read more

分类: Java 标签: ,

设计模式综合运用之Excel导入

2014年12月14日 没有评论

学以致用,前几篇文章我们学了很多设计模式,今天我们就把这些模式综合运用一下,看看实际应用是怎么导入Excel的,(当然这里面没有用到侦听者模式)
我们先看一下Excel的样子:

20141214232827

因为是Excel的的解析,所以应该是前台上传的,我们应该有一个Servlet来接收前台传过来的数据:

packag[......]

Read more

设计模式之模板方法

2014年12月7日 没有评论

这一节记录一下模板方法,在学模板方法之前,要先学习一下什么是模板,模板其实就是一个例子,例如我们做市场调研时,调研人员会给我们一个表格,我们只需要回答一些答案即可,映射到我们的代码中就是这个样子:

aaaaaaaa
bbbbbbbb
cccccccc
********
dddddddd
eeee[......]

Read more

设计模式之策略模式

2014年11月30日 1 条评论

今天我们来讨论策略模式,策略模式是一个比较难理解的模式,尤其是和工厂模式相结合时,当时看程杰的《大化设计模式》时,第二个讲的就是这个,那是一个迷迷糊糊啊,其实仔细分析策略模式并没有那么难,在我们学策略模式之前,先搞明白什么是策略呢?策略是:在某一件事上,在一定的情况下,所采取的行动。当然这个“在一定[……]

Read more

设计模式之侦听者模式

2014年11月23日 3 条评论

关于技术,老夫一直认为应该以实用为主,至于那些理论性的东西,用得多了慢慢就理解了,所以为了说明今天这个设计模式,我们先提出一个问题:我们知道很多系统都有注册功能,有些呢,直接返回您已注册成功请直接登录,而有些注册则要求相对比较比较高,例如注册成功之后需要向用户填写的手机发送短信、Email发送邮件之[……]

Read more

设计模式之单例模式

2014年11月16日 1 条评论

在程序设计中,单例模式是非常常用的一个设计模式,至于有点老夫就不用多说了,肯定有一点比较省内存,但什么的类适合于设置成单例呢?一言以蔽之:

在程序设计中,无状态的类都可以设置成单例。

那么问题来了,什么样的类是无状态的,什么样的类是有状态的呢?其实很简单:

没有数据,也就是说这个类[……]

Read more

Windows下SVN服务器的搭建

2014年11月8日 没有评论

作为一个软件开发人员,关于scm的重要性和必要性,相信我不用说了,目前最流行的的两个版本控制工具svn和git,关于这两个区别还是很大的,而git功能更强大,猜测以后会越来流行,在svn作为打败众多SCM工具的一个版本控制系统,他目前的使用还是非常多的,而且操作也非常简单,所以这一节就写一下svn服[……]

Read more

分类: SCM 标签: ,

全文检索工具-Lucene(solr)入门

2014年11月2日 没有评论

最近闲着没事在写微信公众号,其中一个是聊天机器人,和网上的众多机器人原理一样,但是功能没那么强大(主要是只是库不够强大),但是怎么解决“如何根据用户的问题从回答库中找出最匹配的答案呢?”,大家最先想到的也许是数据库的 LIKE 就好了嘛,但是 LIKE 存在如下问题:
1. 在问答库非常庞大的时候,[……]

Read more

分类: Java 标签:

Spring mvc中的forward和redirect以及参数传递

2014年10月24日 没有评论

1. forward和redirect
大家都知道servlet在处理完业务逻辑返回时有两种方法forward和redirect,他们的差异相信不用我再多做解释(如果不知道的请自行谷歌,哪怕是百度也可以),而Spring mvc是对servlet的一种封装,那spring mvc默认采用的是哪一种呢[……]

Read more

分类: Java 标签:

Java中的split() replace() replaceFirst() replaceAll()四个函数分析

2014年10月20日 没有评论

前几天在公司分割一个很简单字符串,结果却怎么测都不对,最后查了一下资料,终于发现了端倪:
split(regex);

replace(target, replacement);
replace(oldChar, newChar);

replaceFirst(regex, replacemen[……]

Read more

分类: Java 标签: