GoSqlGo 1.2.0 发布,添加Node.js支持

栏目: 软件资讯 · 发布时间: 6年前

内容简介:GoSqlGo ( https://gitee.com/drinkjava2/gosqlgo) 天下武功,唯快不破,程序无非就是接收用户输入、存到数据库。GoSqlGo能让前端直接存取数据库,独立完成项目开发。 GoSqlGo是一个运行于服务端的工具,它的最大...

GoSqlGo ( https://gitee.com/drinkjava2/gosqlgo)

天下武功,唯快不破,程序无非就是接收用户输入、存到数据库。GoSqlGo能让前端直接存取数据库,独立完成项目开发。

GoSqlGo是一个运行于服务端的工具,它的最大特点就是在运行期动态编译客户端 Java 代码,所有 SQL 和Java代码都可以在前端Html页面完成,可以彻底甩掉后端。开发完成后再利用打包 工具 将SQL和Java从前端移到后端,以实现安全。忘掉MVC吧,因为现在架构变成MV两层了;忘掉FreeMaker之类模板吧,因为Java内嵌到HTML里去了;忘掉后端 程序员 吧,因为前端把后端的活给干了;忘掉前端校验吧,因为后端校验这活也归前端了,前端校验能偷懒就偷吧。

本次v1.2.0版更新内容:添加了对Node.js脚本的支持,以下为使用示例:

<!DOCTYPE html>
<html>
<head>
<script src="/js/jquery-1.11.3.min.js"></script>
<script src="/js/jquery-ajax-ext.js"></script>
<script src="/js/gosqlgo.js"></script>
</head>
<body>
	...略...
	<div>
		<script>
			document.write($script(`
			        const process = require('process'); 
					var i= parseInt($1)+ parseInt($2); 
			        result="当前Node.js版本号:"+process.version+"<br/> 运行结果1+2="+ i;`, 
			        1, 2));
		</script>
	</div>
</body>
</html>

 从上面的例子未尾可以看到,Node.js服务端的Javascript可以用一个script方法,直接写在客户端的Javascript里了。简单地说,就是Javascript可以嵌入Javascript了,惊不惊喜? 意不意外?  
它的原理是GoSqlGo对于script方法传来的片段,先编译出一个Java文件在服务端,然后每次调用这个Java时,会将调用转发到Node.js服务端上,Node.js服务端根据调用的ID,从磁盘或缓存里读取script文本片段,并用eval方法转为Javascript来执行。 
在发布阶段,用goServ.bat或goServForce命令,将所有的Javascript片段会抽取成服务端的Java源文件,以实现安全性,防止客户端进行Javascript的eval方法的注入攻击。
示例中的nodeServer.js是我临时学了Node.js之后现编的,没有加上DAO存取数据库的功能,如果对它不满意,Node.js高手们请自已上。

GoSqlGo下一个目标是加入对 php 的支持,以后在Javascript里可以直接嵌入php,或者大家有什么更好的目标及建议也可以提出来。 

另外考虑到有些人不清楚GoSqlGo是干什么的,下面简单贴上另一个GoSqlGo的使用示例,它允许在前端html里直接写SQL和Java进行服务端操作:

<!DOCTYPE html>
<html>
 ...略...  
<body>
    <script> 
	  document.write($java(`return new WebBox("/page/menu.html").setAttribute("title", $1);`, "Transaction demo, use jQuery")); 
	  function getUserListHtml(){ 
		  var users=$$qryMapList(`select * from account where amount>=? order by id`,0);
		  var html="User List:<br/>";
		  for(var i=0;i<users.length;i++) 
			  html+="User ID:" +  users[i].ID+", AMOUNT:"+ users[i].AMOUNT+"<br/>"; 
	      return html;		   
	  } 
	</script>   
 ...略...
</body>
</html>


以上示例用到了Java、Sql、Javascript三种语言。详细的介绍可以参见项目主页#GoSqlGo

另外请大家顺手在码云点个赞,开源不容易,这么优秀的开源项目更是不容易碰到。额,好吧我承认,第一次拉赞助没经验,这么说显得太诚实、太谦虚了,以后会改进。


以上所述就是小编给大家介绍的《GoSqlGo 1.2.0 发布,添加Node.js支持》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据挖掘导论

数据挖掘导论

(美)Pang-Ning Tan、Michael Steinbach、Vipin Kumar / 机械工业出版社 / 2010-9 / 59.00元

本书全面介绍了数据挖掘的理论和方法,着重介绍如何用数据挖掘知识解决各种实际问题,涉及学科领域众多,适用面广。 书中涵盖5个主题:数据、分类、关联分析、聚类和异常检测。除异常检测外,每个主题都包含两章:前面一章讲述基本概念、代表性算法和评估技术,后面一章较深入地讨论高级概念和算法。目的是使读者在透彻地理解数据挖掘基础的同时,还能了解更多重要的高级主题。 本书特色 ·包含大量的图表、......一起来看看 《数据挖掘导论》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具