- 博客(30)
- 资源 (9)
- 收藏
- 关注
java并发(二)对象的共享-不变形
满足同步需求的另一种方法是使用不可变对象。许多时候出现并发问题都是与多线程试图同时访问同一个可变的状态相关。如果对象的状态不会改变,那么这些问题与复杂性也就自然消失了。 如果某个对象在被创建后其状态就不能被改变,那么这个对象就称为不可变对象。线程安全性是不可变对象的固有属性之一,它们的不变性条件是由构造函数创建的,只要它们的状态不改变,那么这些不变性条件就能得以维持。 ...
2015-03-11 13:18:49
177
原创 java并发(二)对象的共享-线程封闭
当访问共享的可变数据的时候,通常需要使用同步。一种避免使用同步的方式就是不共享数据。如果仅在单线程内访问数据,就不需要同步。这种技术被称为线程封闭,他是实现线程安全的最简单的方式之一。当某个对象封闭在一个线程中时,这种用法将自动实现线程安全性,即使被封装的对象本身不是线程安全的。 线程封闭技术的一种常见的应用是JDBC的Connection对象。JDBC规范并不要求Connect...
2015-02-15 15:04:23
155
java并发(二)对象的共享-发布与逸出
“发布”一个对象的意思是指,使对象能够在当前作用域之外的代码中使用。当某个不应该发布的对象被发布时,这种情况就背称为“逸出”。发布对象的最简单的方法是将对象的引用保存到一个公有的静态变量中,以便任何类和线程都能看见该对象。例如:[code="java"]public static knownSecrets;public void initialize(){ kn...
2015-02-15 14:27:38
207
java并发(二)对象的共享-可见性
[code="java"]public class NoVisibility { private static boolean ready; private static int number; private static class ReaderThread extends Thread{ public void run(){ while(!ready...
2015-02-15 10:49:24
211
原创 java并发(一)线程安全性
要编写线程安全的代码,其核心就在于要对状态访问操作进行管理,特别是对共享的和可变的状态的访问。“共享”意味着变量可以由多个线程同时访问,而“可变”则意味着变量的值在生命周期内可以发生变化。 当多个线程访问某个状态变量并且其中有一个线程执行写入操作的时候,必须采用协同机制来系统这些线程对变量的访问。当多个线程访问某个类的时候,这个类始终都能表现出正确的行为,那么就称这个类是线程安全...
2015-02-14 13:19:16
121
原创 mysql和oracle之间的几个方法转换
一、mysql日期和字符相互转换方法date_format(date,'%Y-%m-%d') -------------->oracle中的to_char();str_to_date(date,'%Y-%m-%d') -------------->oracle中的to_date();%Y:代表4位的年份%y:代表2为的年份 %m:代表月, 格式为(01……...
2014-01-10 09:47:24
226
原创 去除指定空格
去除指定空格 转换成[quote]private String replaceBlank(String str) { String dest = ""; if (str!=null) { Pattern p = Pattern.compile("\\r+|\\t+|\\s+(?![^]*>)"); ...
2013-12-07 15:11:45
135
原创 Java synchronized详解(转载)
第一篇: 使用synchronized 在编写一个类时,如果该类中的代码可能运行于多线程环境下,那么就要考虑同步的问题。在Java中内置了语言级的同步原语--synchronized,这也大大简化了Java中多线程同步的使用。我们首先编写一个非常简单的多线程的程序,是模拟银行中的多个线程同时对同一个储蓄账户进行存款、取款操作的。在程序中我们使用了一个简化版本的Accou...
2013-06-27 10:12:44
109
原创 Servlet 跳转 redirect与forward跳转的区别(转载)
Servlet: 当然,在servlet中,一般跳转都发生在doGet, doPost等方法里面。 一、原理 1) redirect 方式 response.sendRedirect("/a.jsp"); 页面的路径是相对路径。sendRedirect可以将页面跳转到任何页面,不一定局限于本web应用中,如: response.sendRedirect("http://w...
2013-06-21 11:30:45
128
原创 spring之BeanFactoryAware接口(转载)
要直接在自己的代码中读取spring的bean,我们除了根据常用的set外,也可以通过spring的BeanFactoryAware接口实现,只要实现setBeanFactory方法就可以,private BeanFactory beanFactory;public void setBeanFactory(BeanFactory beanFactory)...
2013-06-14 16:25:35
107
原创 解析oracle的rownum(转载)
本人最近在使用oracle的rownum实现分页显示的时候,对rownum做了进一步的分析和研究。现归纳如下,希望能给大家带来收获。 对于rownum来说它是oracle系统顺序分配为从查询返回的行的编号,返回的第一行分配的是1,第二行是2,依此类推,这个伪字段可以用于限制查询返回的总行数,而且rownum不能以任何表的名称作为前缀。 举例说明:例如表:stude...
2013-05-30 16:09:55
127
nginx,apache和tomcat
今天配置nginx+tomcat了解了这么一个东西,nginx转发40000端口并配置证书,访问nginx的时候实际用的url是https://www.aaa.com,tomcat的端口配置成40000,工程里面的端口配置443.实际的访问是这个样子的,nginx解析url转发到40000端口的tomcat上,处理相应url的请求,内部nginx和tomcat用的是http的协议应用里面的端口和协...
2013-05-15 14:16:06
112
原创 tomcat 设置session失效时间(转载)
tomcat 在5.5以后,就没有自带admin项目了,如果要从http://localhost:8080界面进入tomcat管理页面,需要从网上下载对应的 tomcat-admin.zip,举个例子,如果你的tomcat是5.5.30的,需要从http://tomcat.apache.org /download-55.cgi下载(在下载页面的Binary Distributions栏下的第四大项...
2013-04-08 11:45:03
123
原创 web.xml配置详解(转发)
1 定义头和根元素 部署描述符文件就像所有XML文件一样,必须以一个XML头开始。这个头声明可以使用的XML版本并给出文件的字符编码。DOCYTPE声明必须立即出现在此头之后。这个声明告诉服务器适用的servlet规范的版本(如2.2或2.3)并指定管理此文件其余部分内容的语法的DTD(Document Type Definition,文档类型定义)。所有部署描述符文件的顶层(根...
2013-04-03 15:31:41
531
原创 vm虚拟机配置上网
1、用鼠标选中你要设置的虚拟机(有的可能装了了多个),点右键—“设置”—“硬件”—“以太网” 在“网路连接”那项选中“NAT”,点 确定2、点虚拟机菜单栏,也就是左上角的“编辑”,选中“虚拟网络设置”,点“自动桥接”,如果在该选项的小方框里打了勾的,请把勾去掉,没打勾的不用更改;点“DHCP”选择“开始”—“应用”;点“NAT”,再点“启动”—“应用”,最后点击“确定”保存即可,现在启动一下虚...
2012-10-24 11:11:59
133
原创 Windows下为Tomcat配置SSL单向认证
1.使用JDK自带的工具keytool来完成2.进入keytool所在路径:c:\Program Files\Java\jdk1.6.0\bin,执行命令 keytool -genkey -alias tomcat -keyalg RSA -keysize 1024 -validity 365 -keystore tomcat.keystore具体输入的请参照附件。注:ke...
2012-10-23 09:20:07
173
ajax异步请求
今天写了一个ajax的异步请求,遇到了一个无法正确提交的问题,找了半天最后发现是执行顺序的问题;[quote]jQuery.ajax( { type :"POST", url :"$!sslAppServer/account/check_register.htm", dataType :"text", data :{content:content}, succ...
2012-09-05 20:03:42
110
Date相关
[code="java"]package test;import java.util.Date;/** * 日期计算 */public class DataCompare { public static void main(String[]args){ System.out.println(new Date()); System.out.prin...
2012-08-20 16:48:46
91
jquery ui autocomplete
今天用了点jquery ui的autocomplete插件,过程中可谓是遇到了许多问题,坎坎坷坷总算是成功了;具体的实现方法参见"http://jqueryui.com/"。这里面写的很详细,我只说两点注意事项:1.注意jquery ui的版本,新的1.8+的实现方法和以前不同;2.我们多数需要自己组装数据源,可以是本地数据源为本地js数组或本地的json对象;3.形如[code="j...
2012-08-15 18:58:50
110
原创 url链接中文乱码
我在写get方法的时候发现如果链接带有中文参数,传递的时候是乱码.为了解决这个问题我看了下资料,自己配置了下tomcat解决了问题.[quote][/quote]我在server.xml中加了红色的部分解决了问题.什么是 URI 呢?java doc 的说明中如下说明:URI 是统一资源标识符,而 URL 是统一资源定位符。因此,笼统地说,每个 URL 都是 URI,但不一...
2012-07-04 10:53:10
220
java String获取指定值
今天遇到一个问题,如何将一个String类型的变量获取指定位置的值;这里说的是在没有split的情况下,如:String str = "CDZ";如何获取分开的字符;我这里想到的办法是将str转换成StringBuffer进行处理:[code="java"]public class Test { public static void main(String[] args)...
2012-05-31 09:19:58
868
原创 数据库设计思想(转帖)
1. 原始单据与实体之间的关系 可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体。在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单证对应多个实体,或多张原始单证对应一个实体。这里的实体可以理解为基本表。明确这种对应关系后,对我们设计录入界面大有好处。 〖例1〗:一份员工履历资料,在人力资源信息系统中,就对应三个基本表...
2012-05-23 21:25:38
245
原创 Ibatis java
Ibatis like写法有两种(以name为例):1. 是 (name like '%$name$%')2. 是用 || 连接字符串的方式,写成 (name like '%' || #name# || '%')但却不能写成 (name like '%'||$name$||'%') ,不然又要出错...
2012-05-17 15:06:30
89
java自定义抛出异常
[code="java"]package test;/** * 异常中定义抛出异常 * @author Administrator * */public class ExceptionThrows { static void exceptionThrow(Boolean a) throws Exception { if (a == false...
2012-04-24 16:39:28
167
原创 字符串组装-将时间转换成String并补足位数
[code="java"]package test;import java.text.NumberFormat;import java.text.SimpleDateFormat;import java.util.Date;/** * 生成编码 * @author Administrator * */public class Test { pu...
2012-04-23 10:29:22
128
java mina iobuffer转换成String
在做crc校验的过程中遇到了iobuffer转换成string的问题,自己找了点资料写了个简单的方法。 package minaUDP;import java.nio.ByteOrder;import java.nio.charset.CharacterCodingException;import org.apache.mina.core.buffer.IoBuffer;...
2012-03-16 10:24:41
475
原创 java 保留小数
今天一个小问题虽然很简单但搞的我很郁闷,所以就写下来。是关于保留小数的问题:[code="java"]import java.math.BigDecimal;/** * 小数保留问题 * @author * test.java, 2012-1-13 上午10:22:55 */public class Test { public static void m...
2012-03-13 16:42:57
112
原创 java ibatis isPropertyAvailable和isEmpty的使用(转载)
isPropertyAvailable和isNotEmpty 这个两个属性非常有用 isPropertyAvailable:入参有这个属性 isNotEmpty:入参的这个属性不为空 入参一般是一个封装了数据的DTO 如果希望一个属性无论为何值都符合条件则使用isPropertyAvailable 如果希望一个属性只是不为空的时候才符合条件就用isNotEmpty 例子如下: <update...
2012-03-05 16:43:29
316
原创 java ant(转载)
[size=large][size=large][/size][size=medium]1,什么是antant是构建工具2,什么是构建概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个3,ant的好处跨平台 --因为ant是使用java实现的,所以它跨平台使用简单--与ant的兄弟make比起来语法...
2012-02-24 15:21:03
106
原创 java 时间计算 时间加减
需要计算得出某个时间之前的几分钟:[code="java"]/** * 计算得出时间 * @param time(格式为HHmmss) * @param minutes * @return */ private String getCurrentTime(String time, int minutes){ ...
2012-02-21 19:07:38
845
spring2.0中文参考手册.chm
2012-09-16
锋利的jquery
2011-09-22
Spring Framework 开发参考手册
2011-09-08
Linux程序设计
2011-09-08
servlet api
2011-04-14
java设计模式 创建型 构造型 行为型
2011-04-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人