HibernateのEntityクラスからテーブル情報を逆引きする

何の因果かタイトルのような必要にせまられましたので、調べた結果などを書いておきます。
ググってもなかなかこれというのに出会えず、Hibernateのソースを見たりして調べました。
Hibernateのバージョンは3。試しに作ってみたのは以下のようなソースです。

public class Test {

    public static void main(String[] args) {
        Test me = new Test();
        Table table = me.getTable(SomeEntity.class);
        System.out.println(table.getName());
    }
    
    public Table getTable(Class<?> clazz) {
        Configuration config =
                new Configuration().configure("hibernate.cfg.xml");
        PersistentClass classMapping = 
                config.getClassMapping(clazz.getName());
        return classMapping.getTable();
    }
}

Hibernateの設定ファイルを喰わせた Configuration から、クラス名(設定ファイルに記述してあるEntityクラス)指定で PersistentClass を取得します。
この PersistentClass から getTable() すると返ってくる Table に、テーブル名やカラム名が入っているので、あとはご随意に。