zoukankan      html  css  js  c++  java
  • 高速创建和mysql表相应的java domain实体类

        今天创建了一个表有十几个字段,创建完之后必定要写一个与之相应的java domain实体类。

    这不是反复的工作吗?为什么不先把这个表的全部的字段查出来,然后放到linux环境下,用sed工具在每一行的前面加上“private String ”,每一行的后面加入“;”。这样能够节省非常多反复工作。以下上sql代码和sed命令。

        查询一个mysql表全部列的列名的sql代码例如以下:

    SELECT COLUMN_NAME 
    FROM information_schema.COLUMNS
    WHERE table_name = 'table_name';

        运行结果如图:


        OK,拿到全部的列名之后,上Linux环境创建一个新的文件,把这个列名复制进去。

    保存退出。

        在Linux上用sed对这个每一行是一个列名的文件进行处理。命令例如以下:

    [root@node3 tmp]# sed -i "s/^/private String /g" web.txt 
    [root@node3 tmp]# sed -i "s/$/; /g" web.txt
    

        第一条命令的意思是在每一行的开头加入“private String ”, “^”这个符号在正則表達式里表示开头的意思。

    第二条命令会在每一行的末尾加入“;”,“$”dollar美元符号在正則表達式里表示行尾的意思。

        再cat一下这个文件,输出例如以下:

    [root@node3 tmp]# cat web.txt 
    private String id; 
    private String name; 
    private String seq; 
    private String redirect_url; 
    private String isAll; 
    private String percentage; 
    private String user_pin_list; 
    private String user_level_list; 
    private String pid_list; 
    private String path_list; 
    private String param_list; 
    private String created; 
    private String creater; 
    private String modified; 
    private String modifier; 

        好,OK。把这些代码贴进你的IDE里去。由于String类型的变量居多。所以统一加上“String”。以下的工作就是字段类型不正确的就改类型。

        这个流程能够少敲非常多代码。并且在使用Ibatis这个ORM的情况下,类的属性名和数据库表的字段名假设是一样的话。那么你不用写不论什么ResultMap。

        最后在类名上加上“@Data”注解(lombok的注解),这样就为全部的字段生成Getter, Setter方法。整个类就非常简洁了。

        

  • 相关阅读:
    (mysql)卸载5.0安装6.05出现“Error Nr. 2003 : Can't connect to MySQL server on 'localhost' (10061). ”的解决办法
    (Redundancy)关于服务器冗余的几个疑问,请知道的帮忙解答.
    (C#)XML文件操作3
    POJ 3635 Full Tank(最短路径变形 + 优先队列)
    POJ 2286 The Rotation Game(DFS + 迭代加深)
    POJ 1141 Brackets Sequence(区间DP + 打印路径)
    POJ 3460 Booksort(IDA* + 估价函数设计)
    POJ 2908 Quantum(BFS + 优先队列)
    NOI 1997 积木游戏(解题报告)
    NYOJ 110 决斗(区间DP + 黑书例题)
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/5276148.html
Copyright © 2011-2022 走看看