有没有java包可以sql 语句自动生成工具sql语句的

版权声明:本文为博主原创文章,未经博主允许不得转载。 /a/article/details/

Java注解是附加在代码中的一些元信息,用于一些工具在编译、运行时进行解析和使用,起到说明、配置的功能。而这些功能则可以使得我们在程序中能够快速简洁的配置程序的信息。

就比如现在,可以利用注解里面的配置信息来配置来为程序快速的建立数据库当中的表的信息

和接口是十分相似的,不过在注解当中,他只支持使用原子类型与String类型,其他的类型是不允许使用的,同时,我们可以使用一些注解来为这个注解的使用模式进行限定


@Target表示该注解可以用于什么地方,可能的ElementType参数有:
FIELD:域声明(包括enum实例)
TYPE:类、接口(包括注解类型)或enum声明
SOURCE:注解将被编译器丢弃,(只在源码当中给程序员当提示使用)
CLASS:注解在class文件中可用,但会被VM丢弃,也就是说不会被加载到程序当中,自然无法通过反射获取
RUNTIMEVM将在运行期间保留注解,因此可以通过反射机制读取注解的信息。

既然RUNTIME的注解能够在运行时可以给我们提供信息,那么我们自然可以利用注解来进行一些事情了,现在就以注解来进行快速的建立SQL语句

首先,由于SQL语句的语法是固定的,因此,有变化的仅仅是表名,列名以及where当中的搜索条件,因此,使用注解来为实体类建立与数据库表的映射关系是一种比较方便的方式

1,首先我们要对实体类进行加载,使用反射的方式,从而,能够获取类当中的注解。
2,判断注解的内容,若是数据库的实体类则进行后续的加载
3,根据实体类的注解获取表名与列名

从步骤来说是比较简单的,我们现在来看看代码的实现吧

然后是select语句的实现

获取表名的方法,实际上就是利用反射进行加载


 
获取表名的方法,由于表名是放在Type上的,因此可以直接从类当中获取


获取列与数据的方法,获取列与数据的话,由于列与数据都是在方法与变量的层级上的,因此,要获取列名的话就需要获取其中的变量名,而变量的数值则是需要获取其中的get方法(此处要求实体类一定要有相应的get方法)

同样的insert语句也是一样的

有了这个基本的思路,update,delete语句也是可以使用一样的方式建立的
这里我就只建立了两种SQL语句

}

如题,类似工具,我只用过myeclipse里的代码生成工具,但是最多也只能生成到service+dao+entity代码,而controller以及前端html/jsp页面没有生成,有没有一个生成整套代码的,用户只需在数据库中加个表,就可以在浏览器中使用这个表的增删改查功能。

可以了解下JBoss Seam, 可以从数据库直接到页面

很难有一个简单的答案。但是 Ruby On Rails 之类的框架都能够快速简洁的把数据模型、展示、行为快速粘合起来的。本质上说都是要快速开发,自动生成代码是因为代码很多且繁杂。而 Ruby On Rails 让你要写的代码很少。 如果原意花2天时间认真学习一下一定会有收获。

然后去征服世界,哈哈哈。

我们公司实现了,但只适合我们公司的产品,jsp是多样性的,不能作为一个标准输出,可以自己写个,使用模板自动生成

你好,思想是很对的,很多公司都有这样的工具。可是由于每个公司的情况不同,拿A公司的工具到B公司不可能完全适用,因此这样的通用工具是做不出来的。我这里有一个实现的思路:
通用模板的代码也好,JSP也好,本质上都是文本文件;
那么,通过某种规则生成的特点模型(但表不同或模型不同)生成的文本文件结果又不同却遵守某一规则;
这里显然可以用代码加freemarker这类的模板生成工具完成。
当然,毕竟不是真正的项目,只是公司内部使用的一个开发工具,那么用其他语言也可以实现。

了解下,不仅支持前后端代码生成, 还包括分页功能,多条件查询,外键支持,支持java,php,python,nodejs多种开发语言。

}

我要回帖

更多关于 sql语句自动生成序号 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信