表格大小(Mo)与休眠

时间:2015-08-24 10:43:53

标签: mysql spring hibernate size

事实上,我正在使用spring mvc和hibernate作为持久性框架开发我的Web应用程序的仪表板页面。我必须获取表大小(Mo)才能将其呈现给管理员。 我一直在寻找这样一个话题但是徒劳无功,我只是想知道hibernate是否可以提供表大小,因为它可以执行以下SQL命令:

SELECT 
 CONCAT(ROUND(sum(DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024), 2), 'Mo')

FROM information_schema.TABLES 

WHERE TABLE_SCHEMA = 'nom_base_de_donnees'

AND table_name='nom_table'

我一直在忙于其他事情,现在我尝试过并且效果很好。我发布dao方法以防有人需要它。

 @Override
public List getTableSize() {
    Session session =sessionFactory.openSession();
    String sql="SELECT round(sum(data_length+index_length)/1024/1024,2) FROM information_schema.tables WHERE table_schema = 'email_center_v2'AND table_name = 'message'";
    Query query=session.createSQLQuery(sql);
    List result=query.list();
    session.colse();
    return result;
}

只需调用Controller中的方法并将结果添加到相应的视图

0 个答案:

没有答案