Atitit.wrmi web rmi框架新特性
Atitit.wrmi web rmi框架新特性
1.3. 增加了globale 传递隐含参数req resp等1
1. V1d 新特性
1.1. 增加了精确参数
1.2. 增加了req参数,命名参数模式。。
增加了对req参数的处理
var mp=$("form").serialize();
mp=mp+"&$method=com.attilax.bet.BetService.bet&$callback=get_posts_callback¶m1=$req";
1.3. 增加了globale 传递隐含参数req resp等
1.4. Cs bs两个版本的实现
作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://www.cnblogs.com/attilax/
2. V2 新特性
2.1. $req对象预定义参数的支持
2.2. 动态ioc IocXq214
package com.attilax.wrmi;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.reflect.ConstructorUtils;
import org.apache.commons.lang3.reflect.MethodUtils;
//import com.attilaax.encode.EncodeX; sould recomm q229 ati
import com.attilax.core;
import com.attilax.ioc.IocXq214;
import com.attilax.lang.Global;
import com.attilax.lang.ParamX;
import com.attilax.ref.refx;
import com.attilax.web.ReqX;
import com.google.common.collect.Maps;
/**
* $method=com.attilax.jsna.test.add
* @author Administrator
*
*/
public class Wrmi {
/**
* def output raw type ..if list map object use json fmt
*
* @param req
* @return
*/
@SuppressWarnings("all")
public String exe(Map m) {
//Map m=Maps.newLinkedHashMap();
//if(req2 instanceof String) //cs envi
// m = new ParamX().urlParams2Map((String) req2);
//
Object[] params_objArr = getParamsArr(m);
String meth = (String) m.get("$method");
String classname = refx.getClassName(meth);
String meth_name = refx.getMethodName(meth);
Object o;
try {
// String apptype=System.getProperty("apptype");
o = IocXq214.getBean(classname);
Object invokeMethod_ret = com.attilax.reflect.MethodUtils.invokeMethod(o, meth_name,
params_objArr);
String ret = "";
if (invokeMethod_ret instanceof String)
ret = (String) invokeMethod_ret;
if (invokeMethod_ret instanceof Integer || invokeMethod_ret instanceof Double)
ret = invokeMethod_ret.toString();
else
ret = core.toJsonStrO88(invokeMethod_ret);
return ret;
} catch (Throwable e) {
e.printStackTrace();
return core.toJsonStrO88(e);
}
}
private Object[] getParamsArr(Map m) {
List paras_li = new ArrayList();
//m.get("param")
if (m.get("param") != null)
paras_li.add(convertReqObjParams( m.get("param")));
for (int i = 0; i < 7; i++) {
String param_index = "param" + String.valueOf(i);
if (m.get(param_index) != null)
paras_li.add(convertReqObjParams(m.get(param_index)));
}
Object[] params_objArr = paras_li.toArray();
return params_objArr;
}
private Object convertReqObjParams(Object object) {
if(object.toString().trim().equals("$req"))
return Global.req.get();
return object;
}
}
2.3. end
Atitit.wrmi web rmi框架新特性的更多相关文章
- Atitit..jdk java 各版本新特性 1.0 1.1 1.2 1.3 1.4 1.5(5.0) 1.6(6.0) 7.0 8.0 9.0 attilax 大总结
Atitit..jdk java 各版本新特性 1.0 1.1 1.2 1.3 1.4 1.5(5.0) 1.6(6.0) 7.0 8.0 9.0 attilax 大总结 1.1. Java的编年史2 ...
- atitit.js 各版本 and 新特性跟浏览器支持报告
atitit.js 各版本 and 新特性跟浏览器支持报告 一个完整的JavaScript实现是由以下3个不同部分组成的 •核心(ECMAScript)--JavaScript的核心ECMAScrip ...
- Atitit.js模块化 atiImport 的新特性javascript import
Atitit.js模块化 atiImport 的新特性javascript import 1. 常见的js import规范amd ,cmd ,umd1 1.1. Require更多流行3 2. at ...
- Atitit. WordPress 4.2.2新特性对比 attilax总结
Atitit. WordPress 4.2.2新特性对比 attilax总结 1. WordPress 2.9带来的新特性 1 2. WordPress3.0最为突出的五个新特征 2 3. WordP ...
- Atitit dsl exer v3 qb3 新特性
Atitit dsl exer v3 qb3 新特性 /atiplat_cms/src/com/attilax/dsl/DslParser.java V3 支持typeed参数,与简化的notyp参数 ...
- Atitit js版本es5 es6新特性
Atitit js版本es5 es6新特性 Es5( es5 其实就是adobe action script的标准化)1 es6新特性1 Es5( es5 其实就是adobe action scrip ...
- SSM框架新特性关于用Java配置类完全代替XML
项目目录结构 从Spring3.0,@Configuration用于定义配置类,可替换xml配置文件,被注解的类内部包含有一个或多个被@Bean注解的方法, 这些方法将会被AnnotationConf ...
- Atitit js es5 es6新特性 attilax总结
Atitit js es5 es6新特性 attilax总结 1.1. JavaScript发展时间轴:1 1.2. 以下是ES6排名前十的最佳特性列表(排名不分先后):1 1.3. Es6 支持情况 ...
- Atitit.业务系统的新特性 开发平台 新特性的来源总结
Atitit.业务系统的新特性 开发平台 新特性的来源总结 1.1. 语言新特性(java c# php js python lisp c++ oc swift ruby go dart1 1.2. ...
随机推荐
- ubuntu 下终端关于调试C++的命令
先确定安装了vim 和gcc (c语言)或者g++(c++) 如果没有安装可以在终端输入以下命令: sudo apt-get install build-essential sudo apt-get ...
- 显示/隐藏Mac系统中所有的隐藏文件
显示: 在终端输入:defaults write com.apple.finder AppleShowAllFiles YES 隐藏: 在终端输入:defaults write com.apple.f ...
- Ubuntu 14 下,命令行终端显示短路径
Ubuntu的终端命令行默认是长路径,即把路径深度全部显示出来,操作起来不是很方便,下面介绍命令行显示短路径的操作: $ vi ~/.bashrc 找到PS1= 的行,将\w(小写)改成\W(大写 ...
- MathType输入矩阵或者向量的注意事项
如图A区域是换行搞得,BC是插入矩阵,AC明显看着不一样,就是说行间不要使用换行,列间隔不要用空格(ctrl+shift+space),直接插入矩阵,向量就是矩阵的行或者列数目是1. 还有就是需要注意 ...
- SVN安装中遇到的问题
新的版本:1.9.5 必须使用Apache Portable Runtime Utility 1.5.4 Released没有安装的话需要先安装 需要安装apr.apr-util sqlite zli ...
- 【tomcat】FileNotFoundException: C:\Program Files\Java\apache-tomcat-8.5.11-geneshop3\webapps\ROOT\index.html (拒绝访问。)
新装系统后,tomcat启动起来 提示如下错误: Caused by: java.io.FileNotFoundException: C:\Program Files\Java\apache-tomc ...
- UITextField的returnkey点击事件
关于隐藏软键盘,网上的办法良莠不齐,大多是通过实现UITextFieldDelegate来隐藏软键盘,该方法代码较多,且在文本框很多的时不好处理.我经过搜索与摸索,找到了最佳的处理办法.(引用的)一. ...
- ztree jquery 树 控件
插件地址:http://www.ztree.me 数据:[{"id":1,"pId":-1,"name":"根目录"}, ...
- WebLogic Server 12.2.1 多租户安装配置
1.安装WebLogic 12.2.1版本 下载安装的时候记住选择Fusion Middleware Infrastructer Installer. 2.安装OTD OTD需要单独下载安装,安装的时 ...
- SlickGrid资料
SlickGrid简单介绍 : https://github.com/mleibman/SlickGrid/wiki 快速入门 : https://github.com/mleibman/SlickG ...