`
文章列表
import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.BlockingQueue; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; /**     本例介绍一个特殊的队列:BlockingQueue,如果BlockQueue是空的,从BlockingQueue取东西的操作将会被阻断进入等待状态,直到BlockingQueue进了东西才会被唤醒.同样,如果Blocki ...
详细介绍 Hibernate 泛型 DAO 及其使用方法 编写Spring+Hibernate框架下的应用,总是离不了编写一个通用的泛型GenericHibernateDao。查阅了网上不少的GenericHibernateDao实现,归纳整理为如下实现,供后续编码参考。 首先定义接口泛型DAO接口 GenericDao package com.th.huz; import java.io.Serializable; import java.util.Collection; import java.util.Iterator; import java.util.List; import o ...
一、main()函数的形式      在最新的 C99 标准中,只有以下两种定义方式是正确的:         int main( void )--无参数形式          {          ...          return 0;          }                  int main( int ar ...
HashMap使用Hash算法,所以在解剖HashMap之间,需要先简单的了解Hash算法,Hash算法一般也成为散列算法,通过散列算法将任意的值转化成固定的长度输出,该输出就是散列值,这是一种压缩映射,也就是,散列值的空间远远小于输入的值空间。 简单的说,hash算法的意义在于提供了一种快速存取数据的方法,它用一种算法建立键值与真实值之间的对应关系,(每一个真实值只能有一个键值,但是一个键值可以对应多个真实值),这样可以快速在数组等里面存取数据。
散列码就是通过一种不可逆的散列(Hash)算法,对一个数据进行计算,获得一个“唯一”的值。这个值可以对这个数据进行标识,在查找数据的时候,可以通过这个值来快速定位数据,从而有效减少开销。 由于散列长度是有限和固定的,因此在数据极多的情况下散列值会出现重复,用术语讲就是“碰撞”。这个时候就需要其它方法来消除这种碰撞,比如再散列、拉链算法等。 举个例子,设计一个散列算法,这个算法是把比划数相加。 “知道”的散列值就是20, “你好”的散列值就是13。(我数对没有? :))
ENUM 类型 ENUM 是一个字符串对象,其值通常选自一个允许值列表中,该列表在表创建时的列规格说明中被明确地列举。 在下列某些情况下,值也可以是空串("") 或 NULL: 如果将一个无效值插入一个 ENUM (即,一个不在允许 ...
一、MySQL 字段数据类型/长度 1、数值类型 列类型              需要的存储量 TINYINT                1 字节 SMALLINT             2 个字节 MEDIUMINT          3 个字节 INT                       4 个字节 INTEGER             4 个字节 BIGINT                 8 个字节 FLOAT(X)           4 如果 X < = 24 或 8 如果 25 < = X < = 53 FLOAT      ...
package com.abin.info.service; public interface TeamService { public static enum TeamType {   TeamName("NameOfTeam"), TeamNumber("NumberOfTeam"), TeamArea(     "AreaOfTeam"), TeamTrue("TrueOfTeam"), TeamFalse("FalseOfTeam"), TeamInitialize(     &qu ...
//枚举接口 package com.abin.info.service; public interface UserService { public static enum UserType{   Basic("基本信息"),   UserName("用户姓名"),   UserAge("用户年龄"),   UserSex("用户性别");     private String info;   UserType(String _info){    this.info=_info;   }   public ...
背景 前段时间一个项目中因为涉及大量的线程开发,把jdk cocurrent的代码重新再过了一遍。这篇文章中主要是记录一下学习ThreadPoolExecutor过程中容易被人忽略的点,Doug Lea的整个类设计还是非常nice的 正文 先看一副图,描述了ThreadPoolExecutor的工作机制: 整个ThreadPoolExecutor的任务处理有4步操作: 第一步,初始的poolSize < corePoolSize,提交的runnable任务,会直接做为new一个Thread的参数,立马执行 第二步,当提交的任务数超过了corePoolSize ...
缓存是介于应用程序和物理数据源之间,其作用是为了降低应用程序对物理数据源访问的频次,从而提高了应用的运行性能。缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事 ...
MongoDB管理工具: http://www.mongodb.org/display/DOCS/Admin+UIs
延迟加载:    延迟加载机制是为了避免一些无谓的性能开销而提出来的,所谓延迟加载就是当在真正需要数据的时候,才真正执行数据加载操作。在Hibernate中提供了对实体对象的延迟加载以及对集合的延迟加载,另外在Hibernate ...
不是吧 你这个是list和iterate的不同吧 在hibernate中,如果使用了延迟加载(比如常见的load方法),那么除访问主键以外的其它属性时, 就会去访问数据库(假设不考虑hibernate的一级缓存),此时session是不允许被关闭。 5个最 ...
spring事务的传播行为是面试中经常被问到的问题,要将事务的传播行为与隔离级别熟练的掌握,在实际开发过程中,特别是在并发高、更新数据量大、关系表比较多的情况下,经常会遇到关于事务的问题。 首先,要了解的是什 ...
Global site tag (gtag.js) - Google Analytics