码迷,mamicode.com
首页 > 数据库 > 详细

使用oracle脚本生成VO和Dao

时间:2019-06-16 00:40:31      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:使用   time   nts   date   mes   rac   string   name   comment   

话不多说直接上代码。

  生成VO的脚本:

SELECT ‘/**‘ || T2.COMMENTS || ‘*/ @Column(name="‘ || T1.COLUMN_NAME || ‘")‘ ||
       ‘private ‘ || CASE
         WHEN T1.DATA_TYPE LIKE ‘VARCHAR%‘ THEN
          ‘String ‘
         WHEN T1.DATA_TYPE LIKE ‘DATE%‘ THEN
          ‘Date ‘
         WHEN T1.DATA_SCALE <> NULL OR T1.DATA_SCALE <> 0 THEN
          ‘Double ‘
         WHEN T1.DATA_TYPE LIKE ‘NUMBER%‘ THEN
          ‘int ‘
         WHEN T1.DATA_TYPE LIKE ‘Timestamp%‘ THEN
          ‘Timestamp ‘
       END || LOWER(SUBSTR(T1.COLUMN_NAME, 1, 1)) ||
       SUBSTR(REPLACE(INITCAP(T1.COLUMN_NAME), ‘_‘, ‘‘), 2) || ‘;‘
  FROM USER_TAB_COLUMNS T1, USER_COL_COMMENTS T2
 WHERE T1.TABLE_NAME = T2.TABLE_NAME
   AND T1.COLUMN_NAME = T2.COLUMN_NAME
   AND T1.TABLE_NAME IN (‘表名‘)

  生成DaO的脚本:

  

SELECT ‘/**‘ || T2.COMMENTS || ‘*/ ‘ ||
       ‘private ‘ || CASE
         WHEN T1.DATA_TYPE LIKE ‘VARCHAR%‘ THEN
          ‘String ‘
         WHEN T1.DATA_TYPE LIKE ‘DATE%‘ THEN
          ‘Date ‘
         WHEN T1.DATA_SCALE <> NULL OR T1.DATA_SCALE <> 0 THEN
          ‘Double ‘
         WHEN T1.DATA_TYPE LIKE ‘NUMBER%‘ THEN
          ‘int ‘
         WHEN T1.DATA_TYPE LIKE ‘Timestamp%‘ THEN
          ‘Timestamp ‘
       END || LOWER(SUBSTR(T1.COLUMN_NAME, 1, 1)) ||
       SUBSTR(REPLACE(INITCAP(T1.COLUMN_NAME), ‘_‘, ‘‘), 2) || ‘;‘
  FROM USER_TAB_COLUMNS T1, USER_COL_COMMENTS T2
 WHERE T1.TABLE_NAME = T2.TABLE_NAME
   AND T1.COLUMN_NAME = T2.COLUMN_NAME
   AND T1.TABLE_NAME IN (‘表名‘)

将生成出来的数据复制到Java类里,格式化就OK了。

使用oracle脚本生成VO和Dao

标签:使用   time   nts   date   mes   rac   string   name   comment   

原文地址:https://www.cnblogs.com/pluto-charon/p/11029405.html

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!