`
javaso
  • 浏览: 51770 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论
文章列表
      无论用什么用什么orm工具,总有难免需要自己写sql语句的时候。用hibernate用多了,多多少少会怀念用jdbc的年代,因为可以自己写sql,再也不用去想什么n+1/延迟加载,缓存不一致问题了!       但是当有一天你用jdbc/mybatis 开发,自己写sql的时候,也会怀念起hibernate,因为当你面对着一张表有N个字段,写个简简单简的增删改查的SQL语句,也要对着数据库表表结构,对着每个字段,小心翼翼地写着地来写SQL语句      但是这对我来说,这不是问题,因为自己曾做过尝试,写过几个工具类帮我们生成         对于简单的SQL语句来讲,只要知道相 ...
    用hibernate用得多了,忽然怀念起自己直接写sql 的轻巧类库了。     开源的类库中,需要写sql常用的有spring jdbc ,apache的dbutil , MyBatis。看过MyBatis文档,写过demo, 相对于hibernate这个强大的ORM工具,MyBatis可控性更好,然而今天它不主角,今天的主角是spring jdbc.         spring jdbc 当我一接触到的时候,从此深深爱上了这个小巧的家伙:简单而优雅的API,配上spring本身的声名式事务!这就是一把小巧的神器!         然而随着我深入的了解,让我不爽的是SQL语 ...
      某天接到老大任务,加通讯录添加一个导出vcard 文件功能.当时就蒙了一下:什么来的?怎么没听说过.于是打开百度,GOOGLE搜了一下.哦原来子.借助万能的GOOGLE 还找到了VCARD4J 和cardme 这两个开源类库操作vcard。稍微看了一下文档,有点迷糊,E文不好,没办法,后来想想,这vcard文件看起来不算复杂。何不借助模板引擎来自己生成呢?说干就干。    在window通讯录里新建了一个联系人,反自己放进去了作小白了。     导出一个人VCARD文件,再到google gmail上导个人出来。 对比看了一下格式。winxp 通讯录导出来的是2.0的。 ...
Struts spring hibernate 越来越“泛滥”了,外面常有不少公司面试总会问起SSH优缺点,网络上也有不少一些文章总结ssh优缺点,但我总感觉总结得不够完全,没完全写到点子上。于是收集了网上的一些意见,加上一些自己见解是以此 ...
 众所周知,hibernate/jpa 为提高性能,引入延迟加载策略,如在一对多,多对多应用中,通常多的一端为延迟加载。这一定程度上可以优化系统性能,然而,在部份应用中,这种策略并吃力并不讨好,如在很多互联网应用了,由于上延迟加载,因此,数据库连接/事务 关闭的时间也将延长(通常情况,方法调用完毕,数据库连接就关闭[释放]),数据库连接/事务,通常要等到页面渲染完毕,通过Filter,将数据库连接/事务关闭[释放]。可以想像,在高并发环境下,若终端用户,网络环境不好,页面下载时间极长,那么数据库数连接不就不能尽快释放吗?那么数据库将面临连接耗尽的危险!      如何解决?根据实际需要取消延迟 ...
  import java.nio.charset.Charset; import java.util.ArrayList; import java.util.List; import org.springframework.boot.autoconfigure.web.HttpMessageConverters; import org.springframework.boot.context.embedded.FilterRegistrationBean; import org.springframework.context.annotation.Bean; import ...
    前阵子,项目中的一小模块,需要加上数据导入的功能。由于项目有好几个地方需要用到excel的数据导入。因此,当时就想了将excel导入封装成一公共组件,由于不同的excel数据导入,具体入库操作不同。因此,此组件提供对导入的数据的读取。具体不同的入库操作,在具体实现类中进行!   于是得出了 excel数据导入的抽象类     直接上代码:       读取excel方法   public List<List<Object>> readFormExcel(File file, int startRow, int startColumn) thr ...
1、在数据量经常进行更改时慎用二级缓存,二级缓存此时已失去实际作用,效果最好的还是自己在应用层做缓存 2、在性能要求高的系统中,没有足够的信心,请勿轻易使用延迟加载,简单即是美!! 3、实体与数据库表映射,关联关系慎用!处理不好,N+1问题经常发生!
我不喜欢一个苦孩子求学的故事。家庭十分困难,父亲逝去,弟妹嗷嗷待哺,可他大学毕业后,还要坚持读研究生,母亲只有去卖血……我以为那是一个自私的学子。求学的路很漫长,一生一世的事业,何必太在意几年蹉跎?况且 ...
 众所周知hashMap 是线程不安全的,在多线程访问的情况下,要做同步的处理 ConcurrentHashMap是Java 5中支持高并发、高吞吐量的线程安全HashMap实现  ConcurrentHashMap get() 总能拿到最新的值,类似于关键字 volatile保证100%读取到最新的数据 如下用代码说明:   package com.iteye.javaso.demo; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ExecutorService; imp ...
    Hibernate二级缓存的并发访问策略有四种:只读(read-only)、非严格读写(nonstrict-read-write)、读写(read-write)和事务(transactional)。但是目前还没有二级缓存提供者完全支持所有的并发访问策略。只读(read-only): 对于永远不会被修改的数据可以采用这种并发访问策略,它的并发性能是最高的。但必须保证数据不会被修改,否则就会出错。非严格读写(nonstrict-read-write): 非严格读写不能保证缓存与数据库中数据的一致性,如果存在两个事务并发地访问缓存数据的可能,则应该为该数据配置一个很短的过期时间,以减少读 ...
    某次面试,叫谈一下struts1.x与struts2.x区别,由于不太重视这次面试,临场组织得不好,回答得一般。    难以明白,明明两样不同的东西,有什么区别好讲的?    与其说struts1.x与struts2.x的区别,不如说MVC框架一般具有哪些功能?   大范围来讲MVC框架核心就是请求转发,通常C 和V都要我们去实现。    具体来讲,一般有如下功能: 1、接收客户端的请求,并对客户端的请求的数据进行收集与校验 2、支持返回多种视图    3、支持国际化 4、支持异常的统一处理 5、支持AOP技术,能对请次Action请求进行处理 6、支持resutlf ...
原文地址:猛击这里 人在华为,身不由己。版上太多的人讨论我司了,现在我也说说。 先说说华为的好处,试用期工资全额,每个月的工资是月中发的,不是下月发,主动辞职有N+1,还有就是传说中的年终奖和股票。坏处就是无休止的加班,加班到吐血,加班到一年抵一年半,加速衰老,家庭不和谐。对天发誓,有人和我说过,下班和老婆亲热的精力都没了。 步入正题,本人研发的,别的部门不讨论,全部是税前。 A女:硕士,三年,绩效一直是部门前三,也就是晚上两点都会从回龙观到上地解决问题的那种,工资8.5K,奖金50K,股票25K股(8.5*12+50+25*3==227K) B男: 本科,来华为前工作过两年,绩效一直是中等偏 ...
一、String,StringBuffer, StringBuilder 的区别是什么?String为什么是不可变的? 二、VECTOR,ARRAYLIST, LINKEDLIST的区别是什么? 三、HASHTABLE, HASGMAQ,TreeMap区别 四、ConcurrentMap和HashMap的区别 五、Tomcat,apache,jboss的区别 六、GET POST区别 七、SESSION, COOKIE区别 八、Servlet的生命周期 九、HTTP 报文包含内容 十、Statement与PreparedStatement的区别,什么是SQL注入,如何防止SQL注入 十一、red ...
因为工作需要,要给jboss配置一个虚拟目录,以前没搞过,于是google了一把,但是google到的都是5.0以下版本的。。网上也有不少的人问这问题,但是中文的都没什么好的解答,于是用e文 google了一把,果然找到了。。 在jboss   server\default\conf\bootstrap 找到profile.xml 然后翻到这一段   <bean name="BootstrapProfileFactory" class="org.jboss.system.server.profileservice.repository.StaticPro ...
Global site tag (gtag.js) - Google Analytics