阅读更多

16顶
46踩

企业架构

原创新闻 SimpleJDBC 1.0发布

2011-03-09 09:36 by 见习记者 asklxf 评论(72) 有23727人浏览
DAO

SimpleJDBC是一个用于简化JDBC代码的简单框架,需Spring集成。SimpleJDBC让你用简单的SQL语句完成增删改查,同时支持强类型和Java泛型,仅需注入一个Db实例。例如:

 

 

// query:
List<User> users = db.query("select * from User");
User user = db.getById(User.class, 12345);
int count = db.queryForInt("select count(id) from User where age>?", 20);

// insert
User user = new User(12345, "Michael");
db.insert(user);

// update
user.setName("Bob");
user.setAge(29);
db.updateProperties(user, "name", "age");

// delete
User user = new User(12345);
db.delete(user);
 

 

 

设计思想

  1. 契约优于配置,表名和类名一致,字段名和属性名一致;
  2. 不需编写DAO,为一两行SQL编写一个DAO方法不值;
  3. 简单的SQL语句,而不是经过ORM改造的HQL;
  4. 没有Attach/Detach状态,均为原始Bean无CGLIB代理;
  5. 没有一级/二级Cache,Cache应当用memcached,用不上memcached则说明压力小到根本无需Cache;
  6. 外键也映射到简单字段,而非对象,不支持一对多或多对一的级联查询,永远不用担心查出额外对象;
  7. 泛型和强类型支持,有SQL语句,但无JDBC代码;
  8. 不支持join等复杂查询,必须增加表的冗余以便使用简单查询。

哪些项目无法使用SimpleJdbc

  1. 没有用MySQL做为数据库;
  2. 没有用Spring;
  3. 使用了EAR而不是WAR;
  4. 必须使用Join等复杂查询;
  5. 在遗留数据库上开发。

以上说明该项目不Simple,因此无法使用SimpleJdbc。

 

 

Maven用户可直接添加依赖:

 

<dependency>
    <groupId>org.expressme</groupId>
    <artifactId>SimpleJdbc</artifactId>
    <version>1.0</version>
    <type>jar</type>
    <scope>compile</scope>
</dependency>
 

其他用户可从http://code.google.com/p/simplejdbc/下载Jar及源码。

16
46
评论 共 72 条 请登录后发表评论
32 楼 lkj107 2011-03-09 16:56
经典,发明的汽车不用方向盘,当然也不允许拐弯
31 楼 youjianbo_han_87 2011-03-09 16:27
用处不大。。。。
30 楼 szmq2 2011-03-09 16:16

   1. 没有用MySQL做为数据库;
   2. 没有用Spring;
   3. 使用了EAR而不是WAR;
   4. 必须使用Join等复杂查询;
   5. 在遗留数据库上开发。

我想不到还能用它来做什么项目了?
29 楼 wendal 2011-03-09 16:15
我无语了,看到很多人K你,本来不想继续打击你的

哪些项目无法使用SimpleJdbc

   1. 没有用MySQL做为数据库;-->天啊,你封装了什么,要这种限制?
   2. 没有用Spring;         -->有JDBCTemplate,还用你这个干啥呢? 再封装一次?
   3. 使用了EAR而不是WAR;   -->你的代码这么特别???
   4. 必须使用Join等复杂查询;-->晕死,你只做过HelloWorld>?
   5. 在遗留数据库上开发。   -->更加无语, 我完全无法理解

设计思想

   1. 契约优于配置,表名和类名一致,字段名和属性名一致;
---> 直接可以无视你了
   2. 不需编写DAO,为一两行SQL编写一个DAO方法不值;
---> JDBCTemplate也不需要
   3. 简单的SQL语句,而不是经过ORM改造的HQL;
---> JDBCTemplate不就是这样的?
   4. 没有Attach/Detach状态,均为原始Bean无CGLIB代理;
---> 没人强迫你要cache啊
   5. 没有一级/二级Cache,Cache应当用memcached,用不上memcached则说明压力小到根本无需Cache;
---> 我见识了,直接上memcached??
   6. 外键也映射到简单字段,而非对象,不支持一对多或多对一的级联查询,永远不用担心查出额外对象;
--->  优点?缺点?!
   7. 泛型和强类型支持,有SQL语句,但无JDBC代码;
---> 这个功能,简单一个封装, 好多项目都有这样的代码啦
   8. 不支持join等复杂查询,必须增加表的冗余以便使用简单查询。
---> 你开发过商业项目??

结论:
    1. Helloworld 级别
    2. 作者没毕业? 或者这是毕业论文
    3. 封装了JDBCTemplate,但连JDBCTemplate都不如!
    4. 作者被Hibernate折磨,回归SQL的途中
28 楼 jwangk 2011-03-09 15:46
4.必须使用Join等复杂查询;

...有什么项目是不用join查询的。。。
27 楼 nighty 2011-03-09 14:06
有点egg pain,有Spring还封装什么?学生用吧。
26 楼 colver 2011-03-09 14:02
   下载下来看看,没有发现源码,哈哈,反编译也要学习下,我觉得手段不错,哈哈,看评价不高,不过还是值得学习的
25 楼 3694826 2011-03-09 13:44
像DBUtils
24 楼 Moore 2011-03-09 13:19
蛋疼,这种蛋疼的东西,哎
23 楼 freish 2011-03-09 13:05
DbUtils
22 楼 InnocentBoy 2011-03-09 13:05
spring的jdbctemplete要比这个好吧!没有任何限制。
21 楼 yin_bp 2011-03-09 13:00
看看bbossgroups项目中的持久层框架吧,没有SimpleJdbc这么多的限制,挺好用的,详情请见:
http://www.javaeye.com/news/20177-bbossmvc-bbossaop
20 楼 bellicism 2011-03-09 12:31
设计理念很不错,
在SpringJDBC上进行了一层封装,倒是把SpringJDBC的功能窄化了
要求表名和类名相同,有点不合适,数据库的实体命名有其特有的范式,不能将该范式强加于Java
应该要支持跨数据操作,除非你把它当作自己的小玩具
19 楼 shaomeng95 2011-03-09 11:39
使用面也太狭窄了吧
18 楼 zhachunling 2011-03-09 11:36
还是dbutil好用 
17 楼 littleJava 2011-03-09 11:35
直接springjdbc了,不用这么麻烦吧
16 楼 fcoffee 2011-03-09 11:33
15 楼 ricoyu 2011-03-09 11:24
引用
表名和类名一致,字段名和属性名一致;

光看这一条就觉得很搓, 类名UserTO, 有谁的表名是这么命名的?
表字段名user_name, 又又谁的TO里面属性是这么命名的?或者反过来,
TO的属性名userName, 表字段名userName? 虽然比前者好一点, 不过这也不符合数据库字段命名规则, 虽然没人强制你这么命名
14 楼 houxinyou 2011-03-09 11:04
很失望,只能在mysql上用和不能用Join等复杂查询还无所谓.但是为什么必须和Spring绑到一起.
虽然Spring是个轻量级框架,但是感觉如里一个程序用到Spring框架,需求上就肯定不是SimpleJdbc能够处理的了的!
框架定位不准!
如果是自己做的对JDBC简单封装,用的人可能真的会有,如果是对SPRING的封装,就.......
13 楼 ruderal 2011-03-09 11:04
以前我们公司的框架就长这模样...

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • Borland Together 用户指南

    Together是基于Eclipse的一款不可多得的开发工具

  • 《Borland Together特点与优势》

    Borland®1Borland® Together®技术特性与优势1)支持所有主要的UML™ 图形充分利用Unified Modeling Language™ (统一建模语言 —UML)搭建正确的架构,以便满足你的业务目标。每一个软件项目都需要一个蓝图,以保持整个小组向相同的方向前进并构建正确的软件。通过集成UML 能力的方式,Together 扩展了开发框架,简化了构建软件的复杂过程。Toge

  • 利用together学习《java与模式》

    together是模式中推荐使用的工具,通过网上搜索发现要使用还是能做到的。以下怎样安装为转载: Together for Eclipse2008学习-安装 博客分类: Java 这一段是从网上转载过来的,转载地址是http://www.knowsky.com/363032.html 我安装的时候,不是参考这份资料 但在搜索教程的时候,查到了这份资料,觉得不错 ...

  • 介绍Together

    介绍Together     最开始接触Together时,它是个能自动生成代码的建模工具。Borland公司收购Together之后,在建模方面增加了许多功能,同时增加了其它一些功能,如代码审计、度量等。OK,这么好的工具,我们就来了解一下吧。 一、功能特点    Together的功能大致有(摘自Together文档):    1、支持所有主要的UML图形    充分利用UML搭建正确的架构,

  • 学习使用Borland Together心得体会(一) (转)

    学习使用Borland Together心得体会(一) (转)[@more@]众所周知,大名鼎鼎的Borland公司最近收购了一家名为TogetherSoft的公司,之后Borland迅速的推出了名为Borland ALM So...

  • 学习使用Borland Together心得体会(二)

     一、使用Together绘制UML视图并产生代码框架!1、首先新建一个工程,如TEST.TPR2、每个工程都有一个default视图,可以使用鼠标右键单击default视图,如图所示:3、选择新建一个Package,这样在工程Explorer中你就会看见多了一个package视图。4、在新的Package中建立新的Class视图。这样在右边的Designer中就会看见一个空的视图

  • Together与Visual.Studio.NET的结合使用(转载)

    Together与Visual.Studio.NET的结合使用作者: bnPYSse(原创) 1、Borland Together Edition for Microsoft Visual Studio .NET 的安装

  • 常用CASE工具介绍

    一,概述  今天, 代码变得日益简单, 在Model的指导下, 思想, 设计, 分析都变得异常重要。企业业务建模工具, 产品非常多, 特别是在MDA日益流行的今天. WorkFlow是典型的业务及流程建模。 二,软件开发CASE工具简介 (一)图稿绘制:  1,visio:这是目前国内用得最多的case工具。它提供了日常使用中的绝大多数框图的绘画功能(包括信息领域的各种原理图,设计图),同时提供了

  • 最新版Borland Together Designer(UML建模工具)

    Together是一种建模工具 用Together只要精通uml,只需要少量的java知识就搞定业务需要,于是下来用用看,看了自代的一个例子,里面的uml只能看懂少部份,不过功能确实强大,自动生成java代码并运行。

  • 学习使用Borland Together心得体会(三)

    使用Borland Together Edition for Jbuilder         最近学习使用了Together Edition for Jbuilder,发现Together和Jbuilder结合起来开发程序的速度和品质无与伦比,以前发表的两篇文章都是介绍Together ControlCenter的,这个工具与现在要介绍的工具比较起来则更加的侧重于设计,分析。程序员使

  • borland together 2008 sp1 (part01)

    大名鼎鼎的UML建模工具,Borland的together 2008 sp1的安装文件(只是安装文件,不提供破解),原安装文件为533MB,由于附件体积的限制只能拆成23多份。 上传太累了,文件好多,干脆把链接给出来吧 http://downloadcenter.borland.com/12346/433/3049433/Together2008SP1WW_TR.exe?ftpRequestID=860391003&server=downloadcenter.borland.com&authparam=1254665716_2f4c17a019cf4d0b303f5086de6b19ce&ext=.exe 或者 ftp://ftpc.borland.com/12346/433/3049433/Together2008SP1WW_TR.exe

  • Borland Together Designer 2005 Crack

    Borland Together Designer 2005 Crack

  • Borland Together for Visual Studio 2005 .NET 破解

    请下载文件/Files/xiongeee/crack.rar按里面说明复盖掉原来的文件即可

  • 【收藏】c++编程常用工具集

    给c++程序员的一份礼物-常用工具集 给c++程序员的一份礼物-常用工具集 ■...开发环境  ---->Turbo c  DOS时代c语言开发的经典工具,目前适合两类人使用:c语言beginner(尤其是学生一族),具有怀旧情节的专业人士:)  ---->Visual C++ 6.0/7.0  稳定而强大的IDE开发环境,具有丰富的调试功能,定制宏的功能也是其一大

Global site tag (gtag.js) - Google Analytics