很想有种像javascript语法的服务器脚本语言

09-10-28 tianqiq
    

javascript一直是我非常喜欢的语言。 最近突发奇想 试着用javascript编写asp。 在编写的过程中让我感到很多的乐趣。

structs有自动收集表单的功能,前提是我们必须写好actionform。但是我们又用了orm。 这个时候orm中entity和

actionform太多的相同。 这个一直让我觉得很不爽。 但是我在用javascript中写asp时。让我很轻易的就解决了这

个问题,就下面这段代码。

getForm:function(){

var o=0;

var app = new Enumerator(Request.Form);

while(!app.atEnd()){

o=o||{};

var value = Request.Form.Item(app.item()).Item;

if(value.indexOf(",")>-1){

o[app.item()]=value.split(",");

}else{

o[app.item()]=value;

}

app.moveNext();

}

return o;

},

我相信对javascript比较了解的,一看就知道。我就不解释。我只说说他的作用。他的作用很简单,就是把任意

表单提交过来的的信息,转换为对象。

我再来说说orm的问题。在用javascript中我们根本就不需要什么orm。(当然你需要也可以)。我们完全就可以根

据你的sql查询出来的信息,自动生成对象。这里我也给出一段简单的代码例子。

convert:function(result){

var list=[];

var i=0;

var o=0;

while(!result.EOF){

var e=new Enumerator(result.Fields);

o={};

while(!e.atEnd()){

o[e.item().Name]=new String(e.item()).trim();

e.moveNext();

}

list=o;

i++;

result.MoveNext();

}

return list;

},

这个方法的作用就是根据从数据库查询出来的result自动生成对象列表。很简单我们就完成了表到对象的映射关

系。这个根本就不算orm。但是你硬是要实现向hibernate那种,也是非常简单的。

曾经在java中我们不晓得要多少代码,多少配置才能完成的任务。 在javascript简短几句代码就完成了。 可能

看到这里的人,很多人会认为我把问题相当太简单,太肤浅。我也承认。 但是他简单性确实是java中无法比拟

的。如果javascript写服务器代码,还有以下2个好处。

1: 服务器代码,客户端代码共用。比如说表单验证。

2: 对json原生支持。

当然如果说用javascript写asp用来做项目。简单的还是可以。但是大了就不行了。毕竟(asp)功能不够强大

安全性也较差。所以我非常希望有一种能有javascript这种能力,但是又功能强大的语言。

    

banq
2009-10-29 19:57

是有一种观点,保留JVM,使用脚本语言在JVM上运行,javascript可以进行服务器端编码,比如进行IOC/AOP功能的粘结作用。

针对某个业务行业,比如电信BOSS,可以基于NGOSS实现一种脚本语言,只要运营商采取Javascript,确定哪些是产品 服务和资源,就会纳入整个流程,有一种GingJa就是这种语言。是SUN公司和巴西电信合作,大概。