使用Oracle数据库字典表生成MyBatis配置

来源:互联网 发布:毕向东java基础教程 编辑:程序博客网 时间:2024/05/22 16:49

oracle类型转java

生成JavaBean

语句如下,生成的字段中含注释信息(如果您的数据库表中含有注释)。需要手动生成getter and setter.

SELECT   'private '||JAVA_TYPE||' '||P_NAME||';'||  (CASE WHEN COMMENTS IS NOT NULL THEN '  //'||COMMENTS END)FROM (  SELECT SUBSTR(LOWER(S.COLUMN_NAME), 1, 1) ||         SUBSTR(REPLACE(INITCAP(LOWER(S.COLUMN_NAME)), '_', ''), 2, 500) P_NAME,         S.COLUMN_NAME,         S.DATA_TYPE,         S.DATA_SCALE,         CASE WHEN  DATA_TYPE = 'VARCHAR2' THEN 'String'               WHEN  DATA_TYPE = 'CHAR' THEN 'String'              WHEN  DATA_TYPE = 'LONG' THEN 'Long'               WHEN  DATA_TYPE = 'NUMBER' AND DATA_SCALE > 0 THEN 'Double'              WHEN  DATA_TYPE = 'DATE' THEN 'Date'              WHEN  DATA_TYPE = 'CHAR' THEN 'Char'              WHEN  DATA_TYPE = 'FLOAT' THEN 'Float'              WHEN  DATA_TYPE = 'NUMBER' THEN 'Integer'               ELSE 'String'         END JAVA_TYPE,         T.COMMENTS     FROM USER_TAB_COLS S,USER_COL_COMMENTS T   WHERE S.TABLE_NAME = 'table_name' AND S.TABLE_NAME = T.TABLE_NAME AND S.COLUMN_NAME = T.COLUMN_NAME   ORDER BY SEGMENT_COLUMN_ID)

结果如下

private Integer levelId;  //等级IDprivate String dept;  //部门private String remark;  //备注

生成MyBatis配置

SELECT '<result property="'||P_NAME||'" column="'||COLUMN_NAME||'" />' FROM(SELECT SUBSTR(LOWER(COLUMN_NAME), 1, 1) ||       SUBSTR(REPLACE(INITCAP(LOWER(COLUMN_NAME)), '_', ''), 2, 500) P_NAME,       COLUMN_NAME  FROM USER_TAB_COLS WHERE TABLE_NAME = 'table_name' ORDER BY SEGMENT_COLUMN_ID); 

结果如下

<result property="levelId" column="LEVEL_ID" /><result property="dept" column="DEPT" /><result property="remark" column="REMARK" />
3 1
原创粉丝点击