1.线程安全就是你可以在多线程环境下使用它,而不需要你来对它进行特殊的处理。action都是继承至servlet的,由于servlet就是线程不安全的(指多个线程共享一个servlet对象,所以),所以不要再action中定义类变量和实例变量,否则其他线程改变了这些值,可本线程还在使用
2.c   =   ActionServlet   
  m   =   DAO   Model   
  v   =   jsp   file3.HQL:Hibernate Qusery Language
条件查询Criteria  Query
原生SQL语句查询5load()与get()的区别   load()方法可能抛出无法恢复的异常(unrecoverable.如果类的映射使用了代理(proxy),load()方法会返回一个未初始化的代理,直到你调用。从数据库中装载该对象时同时装载相关联的那个对象,那么这种操作方式就用得上的了

解决方案 »

  1.   

    3:  action:业务
        actionServlet:核心技术
        form:就是一个BEAN,用来传值。
      

  2.   

    2. v  = struts标签<bean:write .../> <html:html /> 用struts标签页实现
       m  = formBean 里面的字段和v中的JSP 表单标签的property字段对应
       c  = action 业务逻辑 (execute方法)
    HTTP请求-->ActionServlet doGet() doPost()方法-->调用本类Process(request,response)方法-->获得请求处理器对象RequestProsessor调用它的process(request,response)方法;
    在内存中生成大量的映射HasMap 最后调用Action 类的 execute()方法.
      

  3.   

    4. 
    AOP Aspect Oriented Programming,面向方面编程。更大程度上的降低程序调用者和被调用者之间的耦合性。如Spring的TransactionInterceptor可以实现数据库库操作中事务的容器管理,而不用开发人员关心这些重复性的工作。IoC Inversion of Control,控制反转。将自己模块交给容器去控制,而不是由模块本身去处理。如Spring中的Bean的概念,开发人员将自己开发的Bean能过配置通知容器,容器可帮开发者加载、实例化,而不用开发者手动进行。
      

  4.   

    re:tiandiqing(天地情缘) struts 的actionServlet是线程安全的。servlet线程不安全的。
      

  5.   

    5.get()方法在加载对象时,如果该对象不存在就返回NULL,而load()方法在没有该对象时会抛出一个ObjectNotFoundException异常,
      

  6.   

    load会查找二级缓存,而get不会
      

  7.   

    action form 也属于v
      

  8.   

    struts 只提供了 v c 面没有提供m