zoukankan      html  css  js  c++  java
  • atitit. hb 原生sql跨数据库解决原理 获得hb 数据库类型运行期获得Dialect

    atitit. hb 原生sql跨数据库解决原理 获得hb 数据库类型运行期获得Dialect  


    #-----原理

    Hibernate 运行期获得Dialect  

    2010-07-28 12:59:58|  分类: 软件开发 |举报 |字号 订阅

        String dialect = ((SessionFactoryImpl) session.getSessionFactory()).getDialect()
        .getClass().getName();
    //     //org.hibernate.dialect.MySQLDialect
     

    如果是spring + hibernate则可以:

     String dialect = ((SessionFactoryImpl) getHibernateTemplate().getSessionFactory()).getDialect()
      .getClass().getName();
     
     
        
          作者 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com
    转载请注明来源: http://blog.csdn.net/attilax
     
     
     #----实际代码

        private boolean ifMysql() {
            // attilax 老哇的爪子 上午10:24:49 2014年5月10日
            String dialect = ((SessionImpl) getSession()).getFactory().getDialect()
                    .getClass().getName();
            // org.hibernate.dialect.MySQLDialect
            System.out.println(dialect);
            if (dialect.contains("MySQLDialect"))
                return true;
            else
                return false;
        }


        Session session = getSession();
            String sqlString = "SELECT   *   FROM  t_mb_awardweixin   where activityId="
                    + actid
                    + " and openId='"
                    + uid
                    + "' and   DATEDIFF(d,createTime,GETDATE())=0";
            // 以SQL语句创建SQLQuery对象
            if(ifMysql())
                sqlString= "SELECT   *   FROM  t_mb_awardweixin   where activityId="
                        + actid
                        + " and openId='"
                        + uid
                        + "' and  date(createTime)   =   curdate(); ";

            List l = session.createSQLQuery(sqlString)
     
     
     

  • 相关阅读:
    rest framework 认证 权限 频率
    rest framework 视图,路由
    rest framework 序列化
    10.3 Vue 路由系统
    10.4 Vue 父子传值
    10.2 Vue 环境安装
    10.1 ES6 的新增特性以及简单语法
    Django 跨域请求处理
    20190827 On Java8 第十四章 流式编程
    20190825 On Java8 第十三章 函数式编程
  • 原文地址:https://www.cnblogs.com/attilax/p/15199224.html
Copyright © 2011-2022 走看看