分享:用Java枚举类定义表,并且生成查询语句。
首先我们定义一个Student表,包含姓名、年级、班级等数据。
其中的数据类型可以再定义一个枚举类:
接着就是本文的重点了,生成SQL语句:
运行结果:
可以看出生成的CREATE最后多一个空格,我们可以进一步完善。
这里只是抛砖引玉,其实我们可以如法炮制,生成Insert,update等语句。
还可以通过这样的方法我们可以自己写一个简单的类似ORM的框架。
enum Student {
Name(Type.CHAR, 3),
Grade(Type.NUMBER, 2),
Class(Type.NUMBER, 2),
Lesson(Type.VARCHAR, 12),
Score(Type.NUMBER, 2), ;
Type type;
int length;
Student(Type _type, int _length) {
type = _type;
length = _length;
}
}其中的数据类型可以再定义一个枚举类:
enum Type {
CHAR, VARCHAR, NUMBER, SMALLINT;
}接着就是本文的重点了,生成SQL语句:
public class NewTest {
public static void main(String[] args) {
String sql = "CREATE TABLE " + Student.class.getName() + "{\n";
for (Student s : Student.values()) {
sql += "\t" + s + " ";
sql += s.type;
sql += "(" + s.length + "),\n";
}
sql += "}";
System.out.println(sql);
}
}运行结果:
CREATE TABLE Student{
Name CHAR(3),
Grade NUMBER(2),
Class NUMBER(2),
Lesson VARCHAR(12),
Score NUMBER(2),
}可以看出生成的CREATE最后多一个空格,我们可以进一步完善。
这里只是抛砖引玉,其实我们可以如法炮制,生成Insert,update等语句。
还可以通过这样的方法我们可以自己写一个简单的类似ORM的框架。
...全文
相关推荐
Python中模拟enum枚举类型的5种方法分享
以下几种方法来模拟enum:(感觉方法一简单实用) 复制代码 代码如下: # way1 class Directions: up = 0 down = 1 left = 2 right =3 print Directions.down # way2 dirUp, dirDown, dirLeft, dirRight = range(4) print dirDown # way3 import collections dircoll=collections.namedtuple(‘directions’, (‘UP’, ‘DOWN’, ‘LEFT’, ‘
java生成微信小程序分享图海报图的全过程 可作为util直接使用
java后台生成小程序海报、小程序分享图 png不变黑,java生成微信小程序分享图海报图的全过程 可作为util直接使用
java生成二维码并且给二维码添加logo
主要介绍了java生成二维码并且给二维码添加logo的实例代码,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
java生成随机数(字符串)示例分享
主要介绍了java生成随机数(字符串)示例分享,需要的朋友可以参考下
java链接生成二维码
Java根据链接生成二维码,用于微信朋友圈分享后扫一扫跳转页面,可以携带参数。


非技术区
