atitit.orm的缺点与orm框架市场占有率,选型attilax总结
atitit.orm的缺点与orm框架市场占有率,选型attilax总结
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总结的更多相关文章
- Atitit xml框架类库选型 attilax总结
Atitit xml框架类库选型 attilax总结 1. 1. XML类库可以分成2大类.标准的.这些类库通常接口和实现都是分开的1 2. Jdom 和dom4j1 2.1. 5.1. jdom1 ...
- atitit.loading的设计与实现控件选型attilax 总结
atitit.loading的设计与实现控件选型attilax 总结 1. Percentage Loader(推荐) 1 1.1. 起始百分比::调整 progress 1 2. CSS3 Loa ...
- atitit.新增编辑功能 跟orm的实现 attilax p31
atitit.新增编辑功能 跟orm的实现 attilax p31 1. 流程的实现 1 2. view的实现(dwr) 1 3. 获取表结构 1 4. grep filt req params 2 ...
- atitit。ocr框架类库大全 attilax总结
atitit.ocr框架类库大全 attilax总结 Tesseract Asprise JavaOCR 闲来无事,发现百度有一个OCR文字识别接口,感觉挺有意思的,拿来研究一下. 百度服务简介:文字 ...
- atitit.RESTful服务的概览and框架选型
atitit.RESTful服务的概览and框架选型 1. REST基础概念: 1 2. URL说明: 1 3. 1 4. RESTful框架选型 2 1. spring mvc( recomm) ...
- atitit.html编辑器的设计要点与框架选型 attilax总结
atitit.html编辑器的设计要点与框架选型 attilax总结 1. html编辑器的设计要求1 1.1. 障碍訪问 1 1.2. 强大Ajax上传 1 1.3. Word完美支持 2 1.4. ...
- Atitit.编程语言新特性 通过类库框架模式增强 提升草案 v3 q27
Atitit.编程语言新特性 通过类库框架模式增强 提升草案 v3 q27 1. 修改历史2 2. 适用语言::几乎所有编程语言.语言提升的三个渠道::语法,类库,框架,ide2 2.1. 单根继承 ...
- Django---Django的ORM的一对多操作(外键操作),ORM的多对多操作(关系管理对象),ORM的分组聚合,ORM的F字段查询和Q字段条件查询,Django的事务操作,额外(Django的终端打印SQL语句,脚本调试)
Django---Django的ORM的一对多操作(外键操作),ORM的多对多操作(关系管理对象),ORM的分组聚合,ORM的F字段查询和Q字段条件查询,Django的事务操作,额外(Django的终 ...
- SQLAlchemy01 /SQLAlchemy去连接数据库、ORM介绍、将ORM模型映射到数据库中
SQLAlchemy01 /SQLAlchemy去连接数据库.ORM介绍.将ORM模型映射到数据库中 目录 SQLAlchemy01 /SQLAlchemy去连接数据库.ORM介绍.将ORM模型映射到 ...
随机推荐
- Windows上安装Git替代cmd命令行程序
git是一个版本管理系统,利用好它,可以管理你项目文件,每个文件的更新删除修改,它都知道,还可以还原回历史的某个版本. msysgit是Windows版的Git. 1.下载地址:https://git ...
- ARMv7处理器各个模式之间是怎样切换的?模式切换时上下文的保存哪些是硬件在做?哪些是操作系统在做?
1.ARM处理器各个模式之间是怎样切换的? 答:除用户模式外的其它6种模式称为特权模式,这些模式中,程序能够訪问全部系统资源,也能够随意进行处理器模式的切换.处理器模式能够通过软件控制进行切换(直接设 ...
- MySQL Cluster(MySQL 集群) 初试
MySQL Cluster 是MySQL适合于分布式计算环境的高实用.高冗余版本.它采用了NDB Cluster 存储引擎,允许在1个 Cluster 中运行多个MySQL服务器.在MyQL 5.0及 ...
- 数学图形(2.5)Loxodrome曲线
这也是一种贴在球上的曲线 #http://www.mathcurve.com/courbes3d/loxodromie/sphereloxodromie.shtml vertices = 1000 t ...
- 使用swig将C/C++代码转为JAVA接口(Windows平台)
小弟一直没用过Linux. 平时的码也只是在WINDOW上用SWIG或CYGWIN进行编译. 下面的例子,先从网上找来一个.c文件. example.c /* File : example.c */ ...
- 使用 Python 创建你自己的 Shell (上)
我很想知道一个 shell (像 bash,csh 等)内部是如何工作的.于是为了满足自己的好奇心,我使用 Python 实现了一个名为yosh(Your Own Shell)的 Shell.本文章所 ...
- Oracle PL/SQL语句基础学习笔记(上)
PL/SQL是ORACLE对标准数据库语言的扩展,ORACLE公司已经将PL/SQL整合到ORACLE server和其它工具中了,近几年中很多其它的开发者和DBA開始使用PL/SQL,本文将讲述PL ...
- WCF 之 数据契约
前面几篇讲的都只能传递string类型的简单参数,数据契约就是用来解决如传递一个带有多个属性的Class类型的对象的. WCF推荐使用数据契约的方式实现数据的序列化.这部分的内容很好理解但是很重要,先 ...
- 【转】使用python进行多线程编程
1. python对多线程的支持 1)虚拟机层面 Python虚拟机使用GIL(Global Interpreter Lock,全局解释器锁)来互斥线程对共享资源的访问,暂时无法利用多处理器的优势.使 ...
- Google开源单元測试框架Google Test:VS2012 配置
由题目可知,Google Test(简称gtest)是Google公布的一个开源C/C++測试框架,被应用于多个开源项目及Google内部项目中,包括Chrome浏览器.LLVM编译器架构.Proto ...