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模型映射到 ...
随机推荐
- Eclipse搭建Gradle环境
转自:http://blog.sina.com.cn/s/blog_4b20ae2e0102uz4t.html 1.上Grandle官网下载Gradle,地址:http://www.gradle.or ...
- Unity3D如何减少安装包大小
译官方文档:http://docs.unity3d.com/Manual/ReducingFilesize.html PDF文档:http://www.rukawa.cn/Uploads/Attach ...
- U盘安装Centos7.0图解
用U盘安装Centos7.0 工具/原料 centos 7.0 64位系统:CentOS-7.0-1406-x86_64-DVD.iso ultraiso 一个至少8G的U盘 方法/步骤 1 1.先使 ...
- Linux内核的idle进程分析
1. idle是什么 简单的说idle是一个进程,其pid号为 0.其前身是系统创建的第一个进程.也是唯一一个没有通过fork()产生的进程. 在smp系统中,每一个处理器单元有独立的一个执行队列,而 ...
- delegate和event的区别 (zz)
一. delegate C#代理实际上类似于C++中的函数指针,因为C#中不存在指针,所以用代理可以完成一些原来在C++中用函数指针完成的操作,例如传递一个类A的方法m给另一个类B的对象,使得类B的对 ...
- [JS Compose] 3. Use chain for composable error handling with nested Eithers (flatMap)
We refactor a function that uses try/catch to a single composed expression using Either. We then int ...
- win7无法启动telnet服务
右键我的电脑 —> 管理 —>服务,找到服务telnet, 右键—>属性—>依赖关系 就可以看到其他服务的依赖关系,打开相关依赖的服务即可解决服务不能启动的情况
- PHP - AJAX 与 MySQL
PHP - AJAX 与 MySQL AJAX 可用来与数据库进行交互式通信. AJAX 数据库实例 下面的实例将演示网页如何通过 AJAX 从数据库读取信息: 本教程使用到的 Websites 表 ...
- 查找文件工具find
与locate.whereis命令相比,find具有本质的区别: 首先,find是从指定的位置进行遍历查找(可以理解为对文件和目录进行逐一查找). 其次,find可以查找具有某一类特征的文件(例如查找 ...
- spring错误汇总
在学习spring过程中遇见了种种不同的异常错误,这里做了一下总结.希望遇见类似错误的同学们共勉一下. 1. 错误一 Error creating bean with name 'helloServi ...