摘要: 1、在遍历操作数量大大超过可变操作是(add,set等等)使用。原因是其可变操作是通过对底层数据进行一次新的复制来实现的。2、迭代器创建后,其不会反应列表的添加、移除或更改。其迭代器是”快照“风格的,其创建使用了对数组状态的引用,此数组在迭代器的生存期内不会更改;如在迭代器上进行元素更改操(remove、set、add)作,将会抛出UnsupportedOperationException.3、内存一致性效果:当存在其他并发 collection 时,将对象放入 CopyOnWriteArrayList 之前的线程中的操作 happen-before 随后通过另一线程从 CopyOnWrite 阅读全文
posted @ 2014-04-07 00:24 tutar 阅读(1615) 评论(0) 推荐(0) 编辑
摘要: JDBC API 包含以下几个核心部分:1:JDBC 驱动2:Connections (连接)3:Statements (声明)4:Result Sets (结果集)JDBC: 打开数据库连接Loading the JDBC Driver(加载数据库驱动)在打开数据库连接前必须先加载数据库驱动Class.forName("driverClassName");Opening the Connection(打开连接)String url = "jdbc:mysql://127.0.0.1:3306/appName";String user = "r 阅读全文
posted @ 2014-03-27 21:47 tutar 阅读(361) 评论(0) 推荐(0) 编辑
摘要: http://www.cnblogs.com/zhengxu/articles/2206894.html1.复制表结构及数据到新表CREATE TABLE新表SELECT*FROM旧表2.只复制表结构到新表CREATE TABLE新表SELECT*FROM旧表WHERE1=2即:让WHERE条件不成立.方法二:(由tianshibao提供)CREATE TABLE新表 LIKE 旧表3.复制旧表的数据到新表(假设两个表结构一样)INSERTINTO新表SELECT*FROM旧表4.复制旧表的数据到新表(假设两个表结构不一样)INSERTINTO新表(字段1,字段2,.......)SELECT 阅读全文
posted @ 2014-03-19 09:33 tutar 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 过滤器通过doFilter方法的第二个参数ServletResponse将输出发送给客户,但servletResponse参数没有为过滤器提供servlet或jsp页面的访问;执行doFilter方法时,servlet或jsp还没修改,当调用FilterChain的doFilter方法时,修改相应似乎为时已晚,以为数据已经发送给客户端,怎么办呢? 解决这个问题的办法是创建一个像HttpServletResponse的缓冲区,当servlet或jsp调用response.getWiter或者response.getOutputStream并发送输出时,输出实际上没有被发送到客户端,而是放到... 阅读全文
posted @ 2014-03-16 10:41 tutar 阅读(2819) 评论(0) 推荐(0) 编辑
摘要: 1、Java 基本数据类型和精度整数数据类型关键字描述大小格式byte字节长度整数8 位二进制补码从 +127 到 -128short短整型16 位二进制补码从 +32767 到 -32768int整数32 位二进制补码从 +2147483647 到 -2147483648long长整型64 位二进制补码从 +9223372036854775807 到 -9223372036854775808实数数据类型关键字描述大小格式float单精度浮点32 位 IEEE 754从 3.4028235E38 到 1.4E-45double双精度浮点64 位 IEEE 754从 1.797693134862 阅读全文
posted @ 2014-01-15 12:47 tutar 阅读(2086) 评论(0) 推荐(0) 编辑