atitit.orm的缺点与orm框架市场占有率,选型attilax总结

1. attilax的orm框架要求 1

2. orm框架市场占有率 2

3. spring jdbc templt 3

4. eclipselink /toplink  不好用 4

5. jooq 的总结 4

6. attilax的选择 atiorm 4

7. 参考 4

1. attilax的orm框架要求

1.无需配置文件或注解。。直接从map、json生成sql

2.直接获取sql。。无需连接数据库。。方便调试。或这sql传输。

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://blog.csdn.net/attilax

2. orm框架市场占有率

orm frameworks in use

hb 67

jdbc  22

spring jdbc template 20

eclipselink 13

mybatis 7

jooq 2

datasource:::REBELLABS (  WEBSITE RESEARCH )

结论如图。

但无论如何,仅仅就使用ORM框架而言,楼主大可放心去学习,不用担心时间成本的问题,不会占太多时间的

3. spring jdbc templt

2、使用NamedParameterJdbcTemplate类,实现JDBC,参数是用Map集合传递的

·    @Override

·      public void insert(User entity) {

·          // TODO Auto-generated method stub

·          String sql="insert into user(name,age,sex) values(:name,:age,:sex)";

·          Map<String,Object> map=new HashMap<String,Object>();

·          map.put("name", entity.getName());

·          map.put("age", entity.getAge());

·          map.put("sex", entity.getSex());

·          int temp=npjt.update(sql, map);

·          if(temp>0){

·              System.out.println("插入成功!");

·          }else{

·              System.out.println("插入失败!");

·          }

·      }

·    @Override

·      public void update(User entity) {

·          // TODO Auto-generated method stub

·          String sql="update user set name=:name,age=:age,sex=:sex where id=:id";

·          Map<String,Object> map=new HashMap<String,Object>();

·          map.put("name", entity.getName());

·          map.put("age", entity.getAge());

·          map.put("sex", entity.getSex());

·          map.put("id", entity.getId());

·          int temp=npjt.update(sql, map);

·          if(temp>0){

·              System.out.println("更新成功!");

·          }else{

·              System.out.println("更新失败!");

·          }

·      }

4. eclipselink /toplink  不好用

5. jooq 的总结

1. create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())

2.       .from(T_AUTHOR)

3.       .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))

4.       .where(T_BOOK.LANGUAGE.equal("DE"))

5.       .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))

6.       .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)

7.       .having(count().greaterThan(5))

8.       .orderBy(T_AUTHOR.LAST_NAME.asc().nullsFirst())

9.       .limit(1, 2)

10.       .forUpdate();

jooq使用ide会方便。。但是不能自动map json to ,所以,还是麻烦。

6. attilax的选择 atiorm

看起来spring temple最好使用...使用累挂三,好香要事务才能使用了...马transac,走不能保存...

子好嘎自orm兰..

7. orm的优点在接口使用中

直接提供的走十json的接口,,直接转换成个orm走十好用啊..

8. 参考

Spring中使用JDBC做的增删改查 - - ITeye技术网站.htm

atitit.orm的缺点与orm框架市场占有率,选型attilax总结的更多相关文章

  1. Atitit xml框架类库选型 attilax总结

    Atitit xml框架类库选型 attilax总结 1. 1. XML类库可以分成2大类.标准的.这些类库通常接口和实现都是分开的1 2. Jdom 和dom4j1 2.1. 5.1. jdom1 ...

  2. atitit.loading的设计与实现控件选型attilax 总结

    atitit.loading的设计与实现控件选型attilax 总结 1. Percentage Loader(推荐) 1 1.1. 起始百分比::调整  progress 1 2. CSS3 Loa ...

  3. atitit.新增编辑功能 跟orm的实现 attilax p31

    atitit.新增编辑功能 跟orm的实现 attilax p31 1. 流程的实现 1 2. view的实现(dwr) 1 3. 获取表结构 1 4. grep filt req params 2 ...

  4. atitit。ocr框架类库大全 attilax总结

    atitit.ocr框架类库大全 attilax总结 Tesseract Asprise JavaOCR 闲来无事,发现百度有一个OCR文字识别接口,感觉挺有意思的,拿来研究一下. 百度服务简介:文字 ...

  5. atitit.RESTful服务的概览and框架选型

    atitit.RESTful服务的概览and框架选型 1. REST基础概念: 1 2. URL说明: 1 3.  1 4. RESTful框架选型 2 1. spring mvc( recomm) ...

  6. atitit.html编辑器的设计要点与框架选型 attilax总结

    atitit.html编辑器的设计要点与框架选型 attilax总结 1. html编辑器的设计要求1 1.1. 障碍訪问 1 1.2. 强大Ajax上传 1 1.3. Word完美支持 2 1.4. ...

  7. Atitit.编程语言新特性 通过类库框架模式增强 提升草案 v3 q27

    Atitit.编程语言新特性 通过类库框架模式增强 提升草案 v3 q27 1. 修改历史2 2. 适用语言::几乎所有编程语言.语言提升的三个渠道::语法,类库,框架,ide2 2.1. 单根继承  ...

  8. Django---Django的ORM的一对多操作(外键操作),ORM的多对多操作(关系管理对象),ORM的分组聚合,ORM的F字段查询和Q字段条件查询,Django的事务操作,额外(Django的终端打印SQL语句,脚本调试)

    Django---Django的ORM的一对多操作(外键操作),ORM的多对多操作(关系管理对象),ORM的分组聚合,ORM的F字段查询和Q字段条件查询,Django的事务操作,额外(Django的终 ...

  9. SQLAlchemy01 /SQLAlchemy去连接数据库、ORM介绍、将ORM模型映射到数据库中

    SQLAlchemy01 /SQLAlchemy去连接数据库.ORM介绍.将ORM模型映射到数据库中 目录 SQLAlchemy01 /SQLAlchemy去连接数据库.ORM介绍.将ORM模型映射到 ...

随机推荐

  1. [翻译] PBJNetworkObserver 网络监控

    PBJNetworkObserver 网络监控 https://github.com/piemonte/PBJNetworkObserver Introduction 'PBJNetworkObser ...

  2. 第一章 在linux下python读串口 存MYSQL数据库(703N)

    import MySQLdb//定义引用数据库的驱动文件 import serial import time ser = serial.Serial('/dev/ttyATH0', 115200, t ...

  3. poj 3264 Balanced Lineup 题解

    Balanced Lineup Time Limit: 5000MS   Memory Limit: 65536KB   64bit IO Format: %I64d & %I64u Subm ...

  4. WEB漏洞挖掘技术总结

    漏洞挖掘技术一直是网络攻击者最感兴趣的问题,漏洞挖掘的范围也在随着技术的提升而有所变化.在前期针对缓冲区溢出.格式化字符串.堆溢出.lib库溢出等技术都是针对ELF文件(Linux可执行文件)或者PE ...

  5. JQuery中简约的进度条插件推荐

    JQuery Progress Bar是基于JQuery开发的进度条插件,秉承了JQuery的简约哲学.不仅容易使用,而且可以轻松定制外观.对于使用了JQuery框架的项目来说,需要使用进度条控件时这 ...

  6. MSSQL 触发器 暂停 和 启动

    开启关闭触发器 禁用: ALTER TABLE member DISABLE TRIGGER trig1 GO 恢复: ALTER TABLE member ENABLE TRIGGER trig1 ...

  7. Qt正则表达式提取数据

    这几天在上嵌入式课程设计,需要用到Qt,这个是信号与槽的,寒假的时候也简单学习了一些,但是没有怎么深入,又回过来看了看Qt,发现Qt的ui界面配置与Android的好像,当然Qt也可以拿来开发Andr ...

  8. iOS tabbar 图片,最佳大小方式

    iOS tabbar 图片,最佳大小方式 文档大小 30 *30 retaina 60 *60 最佳大小 48 *32 参考:http://stackoverflow.com/questions/15 ...

  9. 页面刷新 vuex 数据重新被初始化

    1.原因 vuex里用来存储的也只是一个全局变量,当页面刷新,该全局变量自然不存在了. 2.解决 使用localStorage存储一份 (1)storage.js /** * vuex localSt ...

  10. webpack 编译图片文件 file-loader

    1.安装插件 npm i file-loader --save-dev  npm i url-loader --save-dev  npm install image-webpack-loader - ...