3332221119(飘) ,你的意思是不要保存到context中吗?

解决方案 »

  1.   

    对,tag中取session
    HttpServletRequest request = (HttpServletRequest)pageContext.getRequest();
    HttpSession session = (HttpSession)request.getSession();
      

  2.   

    static 成员是可以修改的,static final 才不可修改。
      

  3.   

    qiaojiannan(JNQ) ,谢谢你,能说清楚一点吗?为什么要把标签库放在数据库?
      

  4.   

    我想了一下,用session的话就为每个客户都要分配一个hashmap,这样好象不太好我试了一下用static,在标签库中可以取到hashmap,看它的size()也是对的,但用:if (Servlet.dictionary.containsKey(dictionarypk)) {
                System.out.println("before return");
                return (dictionary) MainServlet.jdcxtzd.get(dictionarypk);
              } return null;时返回的是null,明明是有的,是怎么回事呢?相关的代码:
    servlet.java:
    public static HashMap dictionary;
    ...
    jdcxtzdMap.put(new dictionaryPK("001","002"),new dictionary("001","002","003","004"));ListTag.java:dictionaryPK dictionarypk = new dictionaryPK("001", "002);
    if (Servlet.dictionary.containsKey(dictionarypk)) {
                System.out.println("before return");
                return (dictionary) MainServlet.jdcxtzd.get(dictionarypk);
              } return null;