随笔-26  评论-44  文章-20  trackbacks-0
  2008年11月4日
爱情是相知相交的默契,还是好奇加视觉冲击的新鲜感,是平等相待,还是占有和被保护。漫长的人生该和什么样的人渡过,离婚争吵难道无法避免?为什么对异性只是观看美丽,却无法去欣赏崇拜。如果不留心观察,只是流于表面,又怎么能找到另一半。我们沾染太多世俗,俨然社会的傀儡,怎么才能逃离社会阴暗的一面,追寻爱情抑或人生的归宿,只有留心观察,认真思考,不流于表面。
posted @ 2009-08-02 19:07 开机 阅读(181) | 评论 (0)编辑 收藏
     摘要:   阅读全文
posted @ 2008-11-10 21:45 开机 阅读(1757) | 评论 (1)编辑 收藏
在以前religionMIS基础(见我的随笔:extjs做的信息管理系统)上加的sping bean,同时删除的几个类。

代码:http://www.blogjava.net/Files/yijia/(%E5%8E%9F%E5%88%9B)spring_religionMIS.rar

spring包:http://www.blogjava.net/Files/yijia/spring.rar
解压后的spring.jar放到web-info/lib下即可。

数据库文件:http://www.blogjava.net/Files/yijia/reliongionmis 20080829 1731.rar
是mysql做的。

刚开始进系统的时候有点小问题,没数据显示,按一下里面的按钮,如添加,之后就能显示数据了。各个功能就正常的。以前没这个毛病,加了spring 后就这样的,也许是以前每次都创建新实例没问题,现在在spring容器配置后 单实例引起的问题,。总体来说,比以前好的不少。

posted @ 2008-11-06 13:32 开机 阅读(1330) | 评论 (0)编辑 收藏
public class Table {
    String tableName;
    String mainPropertyName;
    static int count=1;
    static DBExcute dbExcute=(DBExcute)new ClassPathXmlApplicationContext("applicationContext.xml").getBean("dbExcute");
   
    Table(String tableName,String mainPropertyName){
        this.tableName=tableName;
        this.mainPropertyName=mainPropertyName;
        System.out.println("construct table"+(count++)+" use:"+dbExcute);
    }
        .............
        .............
     public static void main(String []dsf){
     new Table("user","1");
  }
}

如上只new Table(..)一次:
结果却是:
construct table1 use:null
construct table2 use:null
construct table3 use:null
construct table4 use:null
construct table5 use:null
construct table6 use:com.yijia_ctgu.DB.DBExcute@535b58


奇怪中。。。。。。。


明白了,spring容器初始化的时候,初始化dbDAO bean会生成五个table,可能是先初始化,后才赋值给dbExcute,所以刚开始的五个都是null.

posted @ 2008-11-05 14:45 开机 阅读(257) | 评论 (1)编辑 收藏
我在普通类的main方法中调用bean:
Resource resource = new ClassPathResource("applicationContext.xml");
BeanFactory factory = new XmlBeanFactory(resource);
for(int i=1;i<5;i++){
          DB dbDAO = (DB)factory.getBean("dbDAO");
          System.out.println(dbDAO);
      }
每次执行程序(不停的调用main方法,不只是只看一次循环!)都是相同的引用:
com.yijia_ctgu.DB.DB@12a54f9
com.yijia_ctgu.DB.DB@12a54f9
com.yijia_ctgu.DB.DB@12a54f9
com.yijia_ctgu.DB.DB@12a54f9


但是在servlet中使用时:
Resource resource = new ClassPathResource("applicationContext.xml");
BeanFactory factory = new XmlBeanFactory(resource);
 dbDAO = (DB)factory.getBean("dbDAO");
每次操作创建的都是不同的引用:
如com.yijia_ctgu.DB.DB@16e1782
  com.yijia_ctgu.DB.DB@19be6ee

为何会是这样,是不是servlet每次都会重新生成spring容器?是servlet获取bean的方式有问题吗?还是servlet根本不可能每次使用相同的bean.

我懂了,必须用别的方式:先在web.xml中定义applicatincontext的位置,再用WebApplicationContextUtils获取ApplicationContext,在用它获取bean,这样就每次就是同样的bean了。

但是错误还是在继续,spring我没系统的学,所以总是有太多的问题。

posted @ 2008-11-05 10:34 开机 阅读(345) | 评论 (0)编辑 收藏
在web.xml中配置spring的contextconfigloaction时,总是定位不到src/applicationContext.xml或者
/src/applicationContext.xml(也许是我不懂父目录当前目录之类的)。算了,直接删除这个context-param,把applicationContext.xml文件复制到web-info下面,反正spring默认的就是那里。
要是刚开始myeclipse自动生成的applicationContext.xml文件的位置就在web-info下就不什么事都没了,不知道把它放到src有什么意图?

我晕啊,后来,程序还要到src下找applicationContext.xml文件,web-info下的也不能删,无语了。

我发布到tomcat的时候,是以WebRoot为根目录的,即tomcat的server.xml中是这样配置的:
<Context path="" docBase="D:\spring_religionMIS\WebRoot"/>
这也许就是定位不到src/..的原因吧,因为程序总是从WebRoot往下找,当然找不到,我又用../src/applicationContext.xml定位也找不到,不知错在哪里?
posted @ 2008-11-04 17:27 开机 阅读(2167) | 评论 (2)编辑 收藏