并发中的同步锁(synchronized) 本文转载自:http://www.cnblogs.com/danbing/p/5319820.html为什么要使用同步锁? 在《Thinking in Java》中,是这么说的:对于并发工作,你需要某种方式来防止两个任务访问相同的资源(其实就是共享资源竞争)。 防止这种冲突的方法就是当资源被一个任务使用时,在其上加锁。第一个访问某项资源的任务必须锁定这项资源,使其他任务在其被解锁
java 运行cmd命令(执行多行) Java的Runtime.getRuntime().exec(commandStr)可以调用执行cmd指令。cmd /c dir 是执行完dir命令后关闭命令窗口。cmd /k dir 是执行完dir命令后不关闭命令窗口。cmd /c start dir 会打开一个新窗口后执行dir指令,原窗口会关闭。cmd /k start dir 会打开一个新窗口后执行dir指令,原窗口不会关
MyBatis 判断条件为等于的问题 在用MyBatis操作数据库的时候相信很多人都用到,当在判断null, 大于,大于等于,小于,小于等于,不等于时估计很多都用到,比较容易实现了,这里就省略了,但唯独判断条件为等于时估计蛮多人遇到坑了, 俺在这个问题上坑了差不多一天,于是把这个实验总结并简要记录一下;当MyBatis 判断条件为等于的时候,常量需要加 .toString() 来转换,这种方法是稳定的,推荐使用,比如:
java中double类型显示两个小数,比如12.00 本在载自:http://blog.csdn.net/chaozhidan/article/details/8161862Double类型的数据如何保留两位小数?各位大虾,现有Double类型的数据,如何转换为保留两位小数的数,返回值的类型仍然是Double类型的,而不是字符串类型。 比如 0,返回“0.00”; 提示:DecimalFormat df
使用Oracle trunc 来指定精确的年月日时分秒 函数trunc是一个Oracle内置的函数,可以对date类型数据进行“度身裁剪”,来适应不同类型的数据需求。 在前篇《Oracle日期类型操作几个问题》中,我们已经了解到date类型的基本知识。date类型是一种包括年、月、日、时、分和秒的数据类型,可以表示相对精确的时间信息。内部存储上,date类型是类似于数字类型的,可以通过加减操作实现对日期的推进和后退。 但是,日期格式的精
简单的webservlet 项目 简单的webservlet 项目,给来做测试的时候经常会用到本文转载自:http://www.cnblogs.com/xdp-gacl/p/3760336.html一、Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术。 Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向浏览
利用反射与dom4j读取javabean生成对应XML和读取XML得到对应的javabean对象集合 本文转载自:http://www.cnblogs.com/tclee/archive/2012/02/28/2012773.html在上面这篇文档中,作者使用了Java jdk中的反射来调用set方法。个人愚见:如果是javaBean的话,我们可以使用内省来操作属性,jdk中提供了:java.beans.Introspector和java.beans.PropertyDescrip
dom4j读取javabean生成对应XML和读取XML得到对应的javabean对象集合 首先实现生成对应的JAVAbean的XML文件方法 public void writeXmlDocument(T obj, ListT> entityPropertys, String Encode, String XMLPathAndName) { long lasting = System.currentTimeMil
Dom4j文件操作 本文转载自:http://blog.csdn.net/redarmy_chen/article/details/12969219http://www.360doc.com/content/14/0304/11/16021371_357597860.shtmlDom4j在线工具:http://tool.oschina.net/apidocs/apidoc?api=dom4j1.6
Spring框架中的定时器 如何使用和配置 1.包spring-2.0.6.jar Spring框架的核心包jta.jar 会用到包中的usertransaction,具体什么用此处暂时不论quartz-1.6.0.jar 会用到CronTrigger这个类,通过表达式实现精确的定时commons-logging-1.1.1.jar 日志管理包commo
xml解析性能比较 本文转载自:http://www.cnblogs.com/Qian123/p/5231303.htmlJava文件操作①——XML文件的读取阅读目录一、邂逅XML二、应用 DOM 方式解析 XML 三、应用 SAX 方式解析 XML 四、应用 DOM4J 及 JDOM 方式解析 XML五、四种解析方式比较分析回到顶部一、邂逅XML
不同环境下的str.getBytes().length!=str.length()区别 不同环境下的str.getBytes().length!=str.length()区别?在测试环境中判断是否有全角没有问题的。在正式环境就不一样的结果了。 两个都是Unix系统,但是系统语言不一样。 有没有办法使之在不同环境下运行结果一致? 也就是说要以什么编码去取,才会一致。 页面是以UTF-8编码的。 是否str.getBytes('UTF-8').length!=
String.length() 与 String.getBytes().length String.length()返回字符串的字符个数,一个中文算一个字符;String.getBytes().length返回字符串的字节长度,一个中文两个字节;String的getBytes()方法是得到一个字串的字节数组,这是众所周知的。但特别要注意的是,本方法将返回该操作系统默认的编码格式的字节数组。如果你在使用这个方法时不考虑到这一点,你会发现在一个平台上运行良好的系统,放到
windows cwrsync 安装配置 Rsync是一款不错的文件免费同步软件,可以镜像保存整个目录树和文件系统,同时保持原来文件的权限、时间、软硬链接。第一次同步时 rsync 会复制全部内容,下次只传输修改过的文件部分。传输数据过程中可以实行压缩及解压缩操作,减少带宽流量。支持scp、ssh及直接socket方式连接,支持匿名传输。支持Linux,Window平台。写本文的时候,window版最新版为4.0.5版官网:htt
mysql事务没有提交导致 锁等待Lock wait timeout exceeded异常 异常:Lock wait timeout exceeded; try restarting transaction解决办法:执行select * from information_schema.innodb_trx 之后找到了一个一直没有提交的只读事务, 找到对应的线程后,执行 kill thread id,再确认一直没有提交的只读事物被干掉了就OK了。在mysql中命令行
用js实现返回上一步操作 按钮式:链接式:返回上一步">返回上一步直接跳转式:window.location.href='http://www.ddhbb.com';开新窗口:JS跳转页面参考代码第一种:window.location.href="login.jsp?backurl="+window.location.href;第二种:alert("返回");
history.back()和history.go()的区别 Javascript:history.go()和history.back()的用法和区别 go(-1): 返回上一页,原页面表单中的内容会丢失;history.go(-1):后退+刷新;history.go(1) :前进back(): 返回上一页,原页表表单中的内容会保留;history.back():后退 ; history.back(0) 刷新;history.back
解决JS弹出新窗口被浏览器阻止的解决方案 本文转载自:http://blog.csdn.net/cntanghai/article/details/6643522在js中通过open弹出窗口可能会被阻止,我尝试这段代码: var flag = window.open(url,"",""); if(flag==null) { alert("您的浏览器启用弹出窗
mysql远程连接很慢解决办法 服务器重新启动了,不知道什么原因访问速度特别慢,因为是打开数据库操作多的页面特别明显,由于是局域网服务器连接,觉得数据库问题会比较多。 查找资料得到结果,默认安装的MYSQL开启了DNS的反向解析。域名解析也可以导致网络程序慢,MySQL在处理新的线程连接请求时,会尝试进行DNS解析,如果在host cache和Hosts里找不到,处理起来就会很慢,一般来说数据库服务器为安全起见是不能
JAVA List 移除元素 ArrayList list = new ArrayList(); list.add("one"); list.add("two"); list.add("two"); list.add("two"); list.add("two"); for(int i=0;i