atitit.atiOrmStoreService 框架的原理与设计 part1 概述与新特性
atitit.atiOrmStoreService 框架的原理与设计 part1 概述与新特性
1. 新特性如下
支持生成sql在无数据库连接的情况下
2. Orm设计
主要的俩个以来service如下
@Inject
Dsl2sqlService dsl2sqlSvr;
@Inject
DBX dbSvr;
作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://www.cnblogs.com/attilax/
3. code
/atiPlatf_bet/src/com/attilax/store/OrmStoreService.java
package com.attilax.store;
import java.util.List;
import java.util.Map;
import com.attilax.db.DBX;
import com.attilax.io.filex;
import com.attilax.ioc.IocXq214;
import com.attilax.json.AtiJson;
import com.attilax.lang.MapX;
import com.attilax.orm.AOrm;
import com.attilax.orm.Aorm4view;
import com.attilax.orm.View;
import com.attilax.sql.Dsl2sqlService;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.inject.Inject;
public class OrmStoreService extends StoreService {
public static void main(String[] args) {
System.setProperty("apptype", "bet");
OrmStoreService ormSvr = IocXq214.getBean(OrmStoreService.class);
Map m = Maps.newLinkedHashMap();
m.put("$table", "orderView");
m.put("$tabletype", "view");
m.put("$view_store_path","com/attilax/order");
m.put("$op", "insert");
m.put("good_id","2005");
m.put("order_id",filex.getUUidName());
List<String> insertSql = ormSvr.insertSql(m);
System.out.println( AtiJson.toJson( insertSql));
System.out.println("--f1");
}
@Inject
Dsl2sqlService dsl2sqlSvr;
@Inject
DBX dbSvr;
public List<String> insertSql(Map m) {
List<String> li = Lists.newArrayList();
if (m.get("$tabletype") != null && m.get("$tabletype").equals("view")) {
String[] tabs = new View(m.get("$table"), m.get("$view_store_path"))
.getTables();
for (String tab : tabs) {
Map m2 = MapX.clone(m);
m2.put("$table", tab);
String s = get_insert_singleTable_sql(m2);
li.add(s);
}
return li;
}
return li;
}
public void insert(Map m) {
List<String> li = insertSql(m);
for (String sql : li) {
dbSvr.execSql(sql);
}
}
public String get_insert_singleTable_sql(Map m) {
String sql = dsl2sqlSvr.dsl2sql(m);
return sql;
}
}
atitit.atiOrmStoreService 框架的原理与设计 part1 概述与新特性相关推荐
- Atitit.eclipse 4.3 4.4 4.5 4.6新特性
Atitit intellij idea的使用总结attilax 1. ideaIC-2016.2.4.exe1 1.1. Ij vs eclipse市场份额1 1.2. Ij的优点(方便的支持gro ...
- Atitit 插件机制原理与设计微内核 c# java 的实现attilax总结
Atitit 插件机制原理与设计微内核 c# java 的实现attilax总结 1. 微内核与插件的优点1 2. 插件的注册与使用2 2.1. Ioc容器中注册插件2 2.2. 启动器微内核启动3 ...
- 华为18级大牛倾情奉送:分布式服务框架和微服务设计原理实战文档,啃完发现涨薪如此简单
前言 分布式服务框架不仅仅包含核心的运行时类库,还包括服务划分原则.服务化最佳实践.服务治理.服务监控.服务开发框架等,它是一套完整的解决方案,用来协助应用做服务化改造,以及指导用户如何构建适合自己业 ...
- 从零开始实现RPC框架 - RPC原理及实现
从零开始实现RPC框架 - RPC原理及实现 RPC概述 RPC(Remote Procedure Call)即远程过程调用,允许一台计算机调用另一台计算机上的程序得到结果,而代码中不需要做额外的编程 ...
- atitit.jQuery Validate验证框架详解与ati Validate 设计新特性
atitit.jQuery Validate验证框架详解与ati Validate 设计新特性 1. AtiValidate的目标1 2. 默的认校验规则1 2.1. 使用方式 1.metadata用 ...
- aop实现原理_从宏观的实现原理和设计本质入手,带你理解 AOP 框架的原理
点击上方"Java知音",选择"置顶公众号" 技术文章第一时间送达! 作者:FeelsChaotic juejin.im/post/5c57b2d5e51d45 ...
- Atitit. 数据约束 校验 原理理论与 架构设计 理念模式java php c#.net js javascript mysql oracle...
Atitit. 数据约束 校验 原理理论与 架构设计 理念模式java php c#.net js javascript mysql oracle 1. 主键1 2. uniq index2 3. ...
- 从宏观的实现原理和设计本质入手,带你理解 AOP 框架的原理
点击上方"Java知音",选择"置顶公众号" 技术文章第一时间送达! 作者:FeelsChaotic juejin.im/post/5c57b2d5e51d45 ...
- 底层框架_你有必要了解一下Flink底层RPC使用的框架和原理
1. 前言 对于Flink中各个组件(JobMaster.TaskManager.Dispatcher等),其底层RPC框架基于Akka实现,本文着重分析Flink中的Rpc框架实现机制及梳理其通信流 ...
最新文章
- SAP WM中阶Storage Type的Capacity Check – Usage check based on material
- 甘肃宕昌山货“触网”外销:山民乐衷创业“等客来”
- BZOJ 3597 SCOI2014 方伯伯送椰子 网络流分析+SPFA
- 斐波那契数列递归解法
- Linux下判断字符串长度
- c#中windows验证连接字符串
- 【转】SAP 条形码
- C语言什么时候必须用到二级指针?(需要调用函数为一维空指针确定值的情况下,需要传入二维指针,也就是那个一维指针的指针)
- oracle学习笔记(十八) PL/SQL 游标
- vue如何在用户要关闭当前网页时弹出提示
- OpenCV运行ReID网络的实例(附完整代码)
- imgaug批量椒盐噪声 python_python图像扩增-imgaug
- axis2与cxf区别
- Android使用Zxing库生成PDF417扫描后多一个字符A
- PC版Android系统声卡驱动,android下调试声卡驱动之概述
- 星期、月份英文缩写对照表
- 封面型网页html,网站设计常用网页版式
- 【一步教学,一步到位】拼多多社招三面多久给结果
- 还在996?等着进ICU?程序员不服!
- api与密度转换公式_API重度和密度换算公式.doc
热门文章
- java实训遇到问题解决_「instantiationexception」关于java出现 java.lang.InstantiationException异常的分析与解决方案 - seo实验室...
- oracle asm 分布式存储,分布式数据中心数据库和存储部署解决方案
- linux定时任务每两天执行,Linux定时任务 crontab每秒执行 实现2种方法
- java 安卓视频播放器_java - 学习做一个安卓视频播放器,有一些小问题!忘大家请教...
- pyquery获取不到网页完整源代码_python动态网页爬取:爬取pexel上的图片
- android studio vfs,Android Studio:尝试呈现XML布局的InvalidVirtualFileAccessException
- js_long.php,protobuf.js 与 Long.js的使用详解
- linux mdev -s没有运行,mdev详解
- jwt java 项目实例_JWT(JsonWebToken)+SpringMVC项目demo
- C语言(CED)如何用sort函数根据结构体里的某一属性进行排序