快速开发师 | derby数据库的强大 20160612

快速开发师 发布于 2016/06/12 19:32
阅读 469
收藏 0

       derby数据库是原SUN公司的产品,但无法媲美mysql, oracle,sqlserver,db2等中大型数据库的,很少有项目使用derby,不能说没有,还是有的,以前倒是遇到一个公司还不小,叫Infosys。

     derby或许是看中了自己小众所以来了个奇葩的功能,使用纯java代码定义函数和存储过程,对于一般来用户说也许觉得没什么大不了的。可对于我这样一个专门研究奇葩技术的人来说,这简直就是惊喜,我几乎马上就想到可以在这个存储过程里面调用模板引擎(freemarker)生成代码,代码作为查询字段的结果集成员返回。或者这样理解,写一个查询,查询一张表,然后得到UI组件,后台CRUD代码等;就这么简单,仅仅就是因为写了一个查询,不需要额外对查询返回的结果做特殊处理。这就是萤火,power的感觉。

    Select  input(username) as username, password(pwd) as pwd, datepiker(birthday) as birthday  from User;

输出代码:  

username pwd birthday
<input type="text" name="username" />                          <input type="password" name="pwd" />
<input id="birthday_id" name="birthday" type="text"/><img onclick="WdatePicker({el:'birthday_id'})" src="../skin/datePicker.gif" width="16" height="22" align="absmiddle">



你看懂了吗?



加载中
0
554330833a
554330833a
表示听不懂,能否再解释清楚点
快速开发师
快速开发师
跟新了,查询图解,希望你能看懂
0
f
freezingsky
你这个文章到底是想说模板引擎做代码自动生成呢,还是想讲数据库啊。。。。
快速开发师
快速开发师
对不起,下围棋下久了,连说话都是在迷惑别人,连想象力中都透露着阴谋
0
aqu
aqu
在数据库端生成UI,没有意义啊,我完全可以在应用端搞定,然后存到缓存里!
0
张亦俊
张亦俊
然而你就算把derby吹成神,derby这种嵌入式数据库,天然抗不来高并发……
0
乌龟壳
乌龟壳
说白了,LZ要是懂得自己设计编程语言,就不会那么多“惊喜”了。
乌龟壳
乌龟壳
回复 @快速开发师 : 为了快速开发,你可以设计一个类似HQL的东西就行了,就不用等到看到这可定制化的DB才惊喜了嘛。
快速开发师
快速开发师
之所以用sql是因为大家熟悉呀,熟悉对于任何事情来说都是致命地重要。
0
pseudo
pseudo
就是自定义了input, password, datepicker函数,把查询出来的值直接映射成了freemarker模板
快速开发师
快速开发师
错了,是在函数里调用freemarker模板,这个好处在于,我们只要改模板就行了,模板是不需要编译的,不需要重新打包,就是一个文件,所以可以不断地用记事本更新UI组件的模板文件,而函数可以不改。
返回顶部
顶部