JAE提供了KISSY的部分功能,以便开发者方便的使用。 这里的KISSY并非完全类似于淘宝的KISSY框架,而只是提供一部分供你使用。如果你是开发移动部分,强烈建议你使用kissy core模块中的Node模块,他提供了类似于jQuery 的链式API,对于很多从jQuery开发来的同学会有一些熟悉。
详细参见:http://tpap.shopmodule.jaeapp.com/javascript/1.3.0/core/ajax/index.html 参考这里面的 kissy core 这个模块(注意, 不要去看KISSY gallery等)
前端调用实例:
开发者可以像平时一样开发代码,但是只能使用JavaScript API的子集和KISSY提供的一些方法,HTML/CSS也是受到白名单控制的,首先创建一个php/jsp/html 页面,在body标签后面引入 <cajamodules include="kissy/1.4.0/core" /> 这一行你可以简单的理解,我可以使用KISSY的方法了,你可能要疑惑,为什么多此一举,因为我们系统会开放更多KISSY的UI层面的组件,包括懒加载,日历,图标等等功能,这些功能是否使用,都是在这个cajamodules中进行配置的,这相当于一个前端的模块加载器一样。避免过大的文件一次被全部载入,而我们可能并不需要,然后创建一个js文件,比如叫 my.js,在页面中写一个<script src="path/my.js"></script> 注意这里只能写script标签并且src引入,不可以内联script最后,在my.js中编写console.log(1);console.log(KISSY);console.log(jQuery);不出意外,你会看到打印出1,KISSY变量和一个错误,因为jQuery在此环境中不可以使用。好了,就这样,一个简单的页面跑起来了。
JAE服务API列表:
服务名称 |
接口名称 |
说明 |
CacheService |
Serializable get(String key) |
通过key获取其关联缓存的内容 |
Serializable getAndTouch(String key, int expire); |
通过key获取其关联缓存的内容,并重置过期时间。 |
|
boolean put(String key, Serializable value); |
通过缓存key关联被缓存的文本内容。 |
|
boolean put(String key, Serializable value, int expire); |
通过缓存key关联被缓存的文本内容。 |
|
boolean delete(String key); |
删除缓存key关联的缓存内容 |
|
StoreService |
byte[] getBinaryFile(String path) |
通过指定文件路径,获取其文件的二进制内容。 |
String getTextFile(String path); |
通过指定文件路径,获取其文件的文本内容 |
|
String getTextFile(String path, String encoding); |
通过指定文件路径和文件编码,获取其文件的文本内容。 |
|
void saveBinaryFile(byte[] content, String path); |
将二进制内容保存到指定文件 |
|
void saveTextFile(String content, String path); |
将文本内容保存到指定路径的文件中 |
|
void saveTextFile(String content, String encoding, String path); |
将文本内容保存到指定路径的文件中。 |
|
int deleteFile(String path); |
删除指定路径的文件 |
|
void moveFile(String srcFilePath, String destinationFilePath); |
移动文件 |
|
boolean isFileExist(String path); |
判断文件是否存在 |
|
FetchUrlService |
String get(String url) |
对指定的url,发起HTTP GET请求,获取HTTP相应的内容 |
String post(String url, Map<String, String> requestParametersMap); |
对指定的url,发起HTTP POST请求,获取HTTP相应的内容 |
|
MessageService |
void send(Serializable message); |
发送消息 |
Serializable receive(); |
接收一条消息 |
对于服务API的使用方式如下:
1、线上环境
用户可以无需关心实际的服务地址信息,直接通过服务别名来获取服务。
2、本地实现(SDK)
a.配置本地SDK,指定目录下服务配置信息文件。
b.启动应用,容器会读取服务信息配置文件,生成服务实例,把服务实例,绑定到JDNI。
c.应用代码通过JDNI拿到服务实例,开始使用。