随笔分类 -  工作相关

技术、灵感、文章
摘要:任何语言、框架的发展都是为了降低程序之间的依赖性和耦合性,使重用性达到最高。 在我们平时的四层框架中,界面层page、action层、业务逻辑层service、数据访问层dao,虽然分层明确,代码清晰,但是层与层之间有着很高的依赖性,比如service层处理业务逻辑构造sql语句时需要引用dao层的对象,调用dao层的方法执行sql语句,而action层处理界面动作的时候又要引用service层的对象,调用service层的方法,这样一来,实例action对象的时候要同时实例至少一个service对象和一个dao对象,这样依赖性太强,因此我们把他们做成接口,只在类里写各层的引用,而不对引... 阅读全文
posted @ 2013-03-20 14:28 放牛的铁匠 阅读(3012) 评论(0) 推荐(0)
摘要:俗话说,人多好办事!在程序里也是这样,如果是同一 个应用程序需要并行处理多件任务,那就可以创建多条线程。但是人多了,往往会出现冲突,使得这个工作无法再进行下去了,(三个和尚没水喝啊!)这就是“死锁”。 死锁,举个形象的例子,就像3(A、B、C)个人在玩3个球(1、2、3),规则很简单:每个人都必须先拿到自己左手边的球,才能拿自己右边的球,两手都有球之后,才能把球都放下。这个游戏看起来似乎可以永远进行下去,但是若干局之后,如果三个人刚好都只拿到左手边的球,都等着那右手边的球,但是因为谁都不能放手,那么这三个人(线程)都将陷入无尽的等待中了,这就是传说中的“死锁”。 下面就用Java举例,例子中已 阅读全文
posted @ 2013-03-19 23:10 放牛的铁匠 阅读(253) 评论(0) 推荐(0)
摘要:Spring MVCPKStruts2struts2时采用的传统的配置文件的方式,并没有使用传说中的0配置。spring3 mvc可以认为已经100%零配置了(除了配置spring mvc-servlet.xml外)。Spring MVC和Struts2的区别:1. 机制:spring mvc的入口是servlet,而struts2是filter(这里要指出,filter和servlet是不同的。以前认为filter是servlet的一种特殊),这样就导致了二者的机制不同,这里就牵涉到servlet和filter的区别了(Filter可认为是Servlet的一种“变种”,它主要用于对用户请求进 阅读全文
posted @ 2013-03-19 22:23 放牛的铁匠 阅读(1063) 评论(0) 推荐(0)
摘要:/*** nio不同于传统的 stream i/o, nio 是一种 block i/o* * nio 将最耗时的I/O操作(提取/填充缓冲区)的动作转回给操作系统* * 传统的 i/o 一次一个字节的处理数据(一个输入流产生一个字节的数据,一个输出流消费一个字节的数据,流式数据创建过滤器很容易,确定是比较慢)* * nio采用的块的方式来处理数据,每一个操作都在一步中产生或者消费一个数据块* * nio库中,所有的数据都是用缓冲区处理的。读取数据的时候,它是直接到缓冲区中的。写入数据的时候,它是写入到缓冲区中的。任何时候访问NIO中的数据,都是将其放入到缓冲区中的* * 缓冲区实质上是一个数 阅读全文
posted @ 2013-03-19 10:02 放牛的铁匠 阅读(263) 评论(0) 推荐(0)
摘要:本文转自:http://blog.csdn.net/zhouxinhong/article/details/7518230一、数据库事务的定义数据库事务(Database Transaction) ,是指作为单个逻辑工作单元执行的一系列操作。事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源。通过将一组相关操作组合为一个要么全部成功要么全部失败的单元,可以简化错误恢复并使应用程序更加可靠。一个逻辑工作单元要成为事务,必须满足所谓的ACID(原子性、 一致性、隔离性和持久性)属性。 1. 原子性(atomic),事务必须是原子工作单元;对于其数据修改,要么全都执 阅读全文
posted @ 2012-12-13 20:04 放牛的铁匠 阅读(250) 评论(0) 推荐(0)