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支持》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

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

JSP 应用开发详解(第二版)

JSP 应用开发详解(第二版)

飞思科技产品研发中心 / 电子工业出版社 / 2004-1-1 / 55.00

本书结合JSP和Servlet的最新规范,从基本的语法和规范入手,以经验为后盾,以实用为目标,以实例为导向,以实践为指导,深入浅出地讲解了JSP 开发中的种种问题。以精简的内容介绍了JSP的语法、Servlet技术、JDBC技术、标签库技术、表达式语言、Struts、JavaServer Face等技术;对于JSP开发中常遇到的典型的难点,专门设置了专题进行集中讨论。本书的最后一篇围绕一个电子商务......一起来看看 《JSP 应用开发详解(第二版)》 这本书的介绍吧!

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具