• crm项目总结


    1.struts2上传文件

    上传文件需要几个条件:

         1.必须是post   还需改变enctype属性 enctype="multipart/form-data"

         2.input  file

         3.在action中配置用于接收的文件,文件名属性及其get  set方法

         4.调用FileUtils.copefile(file1,file2)方法   file1本地文件  file2为存储在服务中的文件

         5.struts2上传文件的大小的限制  2M    通过常量的配置,但是不能根本的解决,struts2中有一种机制超过上传文件大小的配置result  input来指定到错误页面   

    2.多对多配置方式

    配置hibernate时,缺陷:第三张表只有两个字段

    拆分成两个一对多

    3.离线对象使用

       1分页

        public List<Custermer> pageBean(int start, int pageRecord) {
            // TODO Auto-generated method stub
            DetachedCriteria criteria=DetachedCriteria.forClass(Custermer.class);
            List<Custermer> list=(List<Custermer>) this.getHibernateTemplate().findByCriteria(criteria, start, pageRecord);
            if(list!=null&&list.size()!=0){
                return list;
            }
            return null;
        }

       2.多条件查询 

       

        public List<LinkMan> findContion(LinkMan linkMan) {
            // TODO Auto-generated method stub
            DetachedCriteria criteria=DetachedCriteria.forClass(LinkMan.class);
            if(linkMan.getCustermer().getCid()!=0&&!"".equals(linkMan.getCustermer().getCid())){
                criteria.add(Restrictions.eq("custermer.cid", linkMan.getCustermer().getCid()));
            }
            if(linkMan.getLkmName()!=null&&!"".equals(linkMan.getLkmName())){
                criteria.add(Restrictions.eq("lkmName", linkMan.getLkmName()));
            }
            if(linkMan.getLkmGender()!=null&&!"".equals(linkMan.getLkmGender())){
                criteria.add(Restrictions.eq("lkmGender", linkMan.getLkmGender()));
            }
            return (List<LinkMan>) this.getHibernateTemplate().findByCriteria(criteria);
        }
    
            

    4.调用底层sql实现

      由于hibernate模版不能进行复杂的查询,要实现要调用底层的hibernate代码

    多表的查询(内连接)   分组查询

    1.得到Session

    2.创建SQLQuery

    3.由于list集合中默认的为数组的形式但是这样取值很不方便  ,所以需要改变他的结果形式   setResultTransacformer(Transacformers的方法)

    4.得到list集合

    5.BaseDao抽取

    1.创建一个接口  接口中有那些需要提取的方法   T指代任意数据类型

    2.创建接口的实现类  还要继承HibenrateDaoSupport类

    术语:在构造方法中实现

          1.首先得到是正在执行的具体的接口实现类

         2.得到参数类型BaseDaoImple<Custermer>

         3.得到实际参数custermer

    3.在具体的接口继承BaseDao接口即可

    4.在具体的接口实现类继承BaseDao接口的实现类

    6.配置实体类之间的关系没必要都进行配置要根据需求来进行书写

    数据字典与实体类的配置

       什么是数据字典呢?通俗来说一些特定的称谓来建一个表来查询

       要根据需求来进行配置

  • 相关阅读:
    关于LoginFilter的问题
    MyEclipse:各种提示图标的含义
    Js获取当前日期时间及其它操作
    微信jsApI及微信分享对应在手机浏览器的调用总结。
    js 刷新页面window.location.reload();
    applicationContext.xml
    网页打开微信的链接
    myeclipse竖行删除
    实现算法2.15、2.16的程序(一个数组只生成一个静态链表)
    循环链表
  • 原文地址:https://www.cnblogs.com/fupengpeng/p/6941279.html
Copyright © 2020-2023  润新知