解决方案 »

  1.   

    你从数据库查询数据时把数据放入map不行吗?
      

  2.   


    用hql查出来的vo类   能转成List<Map<String,String>>类型吧?   之后呢
      

  3.   

    那就依赖数据本身的方式Exist,把数据存入临时表,然后通过SQL语句处理!
      

  4.   

    我也觉得可以这样,..  可是怎么存入临时表啊
    你在用JAVA代码进行SQL操作的时候,先进行创建临时表,然后再插入数据,再使用SQL语句进行对比!
      

  5.   

    我也觉得可以这样,..  可是怎么存入临时表啊
    你在用JAVA代码进行SQL操作的时候,先进行创建临时表,然后再插入数据,再使用SQL语句进行对比!
    大神你教教我...  我比较菜  现在有一个list  里边是vo对象   怎么创建临时表...
      

  6.   

    一楼的方向是对的呢,通过第一次加载,将list中的Id放到缓存中吧。
    可以创建一个单例完成存入缓存,从缓存中查找等操作;public class ObjectHelper {
    private static List objects = null;
    private static Map<Integer, Integer> map = new HashMap<Integer, Integer>();//key存的是主鍵id

    private static ObjectHelper instance;//创建单例实例

    public void setInstance(ObjectHelper objectHelper) {
    instance = objectHelper;
    instance.refresh();
    }

    /**
     * 清空缓存,并重新导入表中所有的数据
     */
    public synchronized void refresh() {
    if (objects!= null) {
    objects.clear();
    }

    if (map != null) {
    map.clear();
    }

    objects = dao.getAll();  //从表中导入所有的信息
    for (Integer o : objects) {
    map.put(o, o);
    }
    }
    // 获取实例对象
    public static ObjectHelper get() {
    return instance;
    }

    /**
     * 构造函数
     */
    private ObjectHelper () {

    }
          /**
     * 根据id从map中查找,具体的楼主根据自己需求
     */
    public Integer getId(Integer id) {
    return map.get(id);
    }
           /**
     * 返回缓存中的所有值
     */
    public final List all() {
    return objects;
    }
    }//代码不一定正确,具体框架大致是这个样子,希望对你有帮助~~
      

  7.   

    额...   可能我想的太简单 或者没说清楚  list里是vo对象  然后他有好多属性  其中一个是数据库里另一个表的ID  现在要表里的一个字段的值   是对应的...   唉..  麻烦大哥了/....