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

 2023-09-09 阅读 21 评论 0

摘要:atitit. hb 原生sql跨数据库解决原理 获得hb 数据库类型执行期获得Dialect #-----原理 Hibernate 执行期获得Dialect 2010-07-28 12:59:58| 分类: 软件开发 |举报 |字号 订阅 String dialect = ((SessionFactoryImpl) session.getSessionFactory()).getDialect
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)
 
 
 

转载于:https://www.cnblogs.com/yfceshi/p/7213917.html

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/1/21499.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息