`
thinkerAndThinker
  • 浏览: 276003 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
文章列表
     相比于大部分动物的个体觅食,分工是一种社会行为,如果不算动物本能的社会行为,主动的分工合作是人类智慧的产物。       分工能够完成个体不能完成的工作,或者工作量超过了个人能够完成的范围,或者所要求的技能无法一个人同时具备。       稻田里农民们共同劳作是一种分工,他们共同完成一块田地的任务,分工是横向的,每个人的劳动内容相似。如果把他们互换一个位置,这个队伍的工作通常不受影响。  
Spring为我们解决最让人头痛的难题之一,Hibernate的Session的关闭与开启问题。 当hibernate+spring配合使用的时候,如果设置了lazy=true,那么在读取数据的时候,当读取了父数据后,hibernate会自动关闭session,这样,当要使用子数据的时候,系统会抛出lazyinit的错误。 Hibernate 允许对关联对象、属性进行延迟加载,但是必须保证延迟加载的操作限于同一个 Hibernate Session范围之内进行。如果 Service 层返回一个启用了延迟加载功能的领域对象给 Web 层,当 Web层访问到那些需要延迟加载的数据时,由于加载领 ...
什么是Spring TestContext?       Spring TestContext是Spring提供的一套基于注解的Test框架,Spring TestContext有非常好的兼容性,可以无缝兼容JUnit,TestNG等单元测试框架,而且在其基础上增加更多的功能 Spring TestContext为我们带来什么?       在Spring应用大行其道的今天,使用Spring来构建应用已经是再普通不过的事情,但当使用JUnit,TestNG等传统的单元测试技术和Spring进行结合的时候,就会出现很多并不如意的事情       1.Spring容器初始化问题:此问题已于JUni ...
工作中很少提到“入参保护”这个词,更多的是“参数校验”的说法;谈下个人对接口入参保护的理解:   1、接口入参保护,“保护”的是服务端应用,即接口提供方,最常见的做法就是校验入参的有效值范围和设置批量操作白名单;   比如,接口入参中包含日期时,校验日期必须在N天范围内,或者请求返回的记录总数必须在X条以内(比如10W条,否则缩小请求查询的记录范围),或者请求返回的记录必须分页查询返回;   开发手册中,尤其提到的场景就是批量操作,因为批量操作非常耗时耗资源(

Java卫语句

if语句使用“卫语句 ”减少层级嵌套。   卫语句就是把复杂的条件表达式拆分成多个条件表达式,比如一个很复杂的表达式,嵌套了好几层的if - then-else语句,转换为多个if语句,实现它的逻辑,这多条的if语句就是卫语句. 简单的例子如下:  
评价一个网站的“大小”,处于视角的不同,有很多种衡量的方法,类似文章数,页面数之类的数据非常明显,也没有什么可以争议的。但对于并发来说,争议非常之多,这里就从一个技术的角度开始,谈谈几个Web网站的数量级。 相信很多人谈论一个网站的热度,总免不了会询问日均PV,同时在线人数、注册用户数等运营数据,说实话从技术角度来说,这几个数值没有一个可以放在一起比较的——一个静态网站的PV跟一个SNS类/Web Game网站的PV根本就不是一回事。由于互联网有一个传说中的“3秒定律”,可能当下更多的网站技术指标要求1.5秒以内加载整页,或者至少可以达到阅读的标准。如果要较真什么“同时在线”,毫不客气的说, ...
曾经写过一点关于代码评审(code review)的文章,比如这篇和这篇,现在觉得关于它的认识又有了不少更新。软件工程的技术和实践分成两部分,一部分是和书本知识一致的,大约占一半,这部分基本上在大学里就可以学,自学 ...
代码评审究竟有什么好处? 在前期发现问题,提高软件质量,降低软件成本。 事实上,代码评审的好处远不止这些。有些项目经理或者开发人员不愿意多提评审,Coding的过程包含的内容非常丰富,如果只把一个字符一个字符地敲代码叫做Coding,未免悲哀了一点。优秀的项目,编码阶段实际敲代码的时间不会很长;优秀的程序员,大部分时间都用来思考了。   我来说说代码评审其它鲜为人知的好处,兴许能改变某些同学的看法呢。   增加阅历,学习别人代码的可贵之处 和英语学习是一个道理,如果只听一种纯正口音的英语,英文反而不容易学好,我们需要阅读各种营养的代码,广泛阅读能帮助开阔眼界,积累一些好的设计思路 ...
在这篇文章里,我们可以见到许多有意思的编程风格,又没有精神为之一振的感觉,仿佛里面的例子就在自己身上,或者离自己很近。其实,对于文档、代码的评审,也是有诸多风格可言的,我这里列举一些有意思的典型:   ...
1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。   2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 最好不要给数据库留NULL,尽可能的使用 NOT NULL填充数据库. 备注、描述、评论之类的可以设置为 NULL,其他的,最好不要使用NULL。 不要以为 NULL 不需要空间,比如:char(100) 型,在字段建立时,空间就固定了, 不管是否插入值(NULL也包含在内),都是占用 1 ...
1、原生JavaAPI获取 package com.util; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.UnsupportedEncodingException; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; ...
Java Exception: 1、Error 2、Runtime Exception 运行时异常3、Exception 4、throw 用户自定义异常 异常类分两大类型:Error类代表了编译和系统的错误,不允许捕获;Exception类代表了标准Java库方法所激发的异常。Exception类还包含运行异常 ...
将String型格式化,比如想要将2011-11-11格式化成2011年11月11日  Java代码   public static void main(String args[]){             String strDate = "2011-11-11 10:11:30.345" ;             // 准备第一个模板,从字符串中提取出日期数字    
1.个人观点       webservice框架有很多,比如axis、axis2、cxf、xFire等等,做服务端和做客户端都可行,个人感觉使用这些框架的好处是减少了对于接口信息的解析,最主要的是减少了对于传递于网络中XML的解析,代价是你不得不在你的框架中添加对于这些框架的依赖。个人观点是:服务端使用这些框架还行,如果做客户端,没必要使用这些框架,只需使用httpclient即可。 2.需求场景      已经拿到对于接口的描述文件WebServiceFromB.wsdl,需要建立客户端进行调用,WebServiceFromB.wsdl内容如下: [xml] view ...
基于spring来检测访问Web页面的设备是很简单的,在这个经验中我们讲到过。通常不同的设备访问我们是通过响应式设计来统一处理各种设备的尺寸的。但是如果希望针对不同的设备,显示不同的内容呢? Spring对于这一点同样提供了很好的支持,来看看如何实现。 准备工作 我们通过一个简单的例子来演示,基于Spring MVC来实现一个简单的HTTP GET请求,访问的地址是: http://localhost:8080/greeting 如果从桌面浏览器访问这个地址,则返回的页面中显示:
Global site tag (gtag.js) - Google Analytics