引用<回谈OPS概念的问题>

这几天听朋友问我,OPS到底有什么作,好像也没什么作用吗?
我想,是时候整理一下最近写的1-x系列的介绍了。我也希望,这篇介绍,它能让朋友们了明白OPS有什么作用。

在以往的介绍当中,我强调过.OPS有点像表单的格式机,可以把页面的表表单数据整理成一个XML字符串;

在2-x系统的文档里,已经介绍了很多的JS操控表单数据的示例;这边为了说明OPS的作用.我写一段伙代码:

<html>
<head>
    <script>
 var ajax = new AjaxService(); //该对象,专为数据的存储服务;
 var ps   = new PsContainer();
 
 //
 //通过ajax 进行数据保存
 //
 function save1()
 {
  var opsData = ps.toXml();
  
  ajax.Save(opsData);
 }
 
 //
 //通过ajax 来进行数据装载
 //
 function load1()
 {
  var opsData = ajax.Load().value;
  
  ps.load(opsData);
 }
 /*-----------------------------------------------------------*/
 //
 //通过一个hidden控件 在 asp.net 页面里,把opsXml数据提交到后台;
 //
 function save2()
 {  
  $("ops_hid").value = ps.toXml();
 }
 function load2()
 {
  ps.load($(ops_hid).value);
 }
 /*
 //
 //如果是asp.net 则在WINDOW LOAD里把处理绑定上去;
 //
 window.onload = load2;
 */
 </script>
</head>
<body>
    <form action="p.aspx" moth="post">
  <input id="text001" />
  <!=- 为了突显示OPS的意义,假设这个页面上有100个输入框 -->
  <input id="text100" />
  
  <input name="ops_hid" type="hidden" id="ops_hid" runat="server"
         ops:psundo="1"
      ops:note="该控件为前后台数据交素的桥梁" />
     
  <input type="button" value=" 保存1 " onclick="save1();" />
  <input type="button" value=" 保存2 " onclick="save2();" id="button" runat="server" />
  <input type="button" value=" 装载1 " onclick="load1();" />
 </form>
</body>

</html>

后台 AjaxService:

public class AjaxService
{
    public void Save(string opsXml)
 {
  string sql = "INSERT INTO t(data) value('"+opsXml+"')";
  
  SqlRun.Exec(sql);
 }
 
 public string load()
 {  
  return SqlRun.Exec("select top 1 data from t").ToString();
 }

}
DataBase:
T{id [int ,index], data[text]}

ASP.NET 在页面的后台代码,这边就不给出了.请参考这个ASP.NET项目的DEMO;

现在,归纳一下.OPS在这个示例里的作用。

首先,它的的确确起到了一个格式机的作用。ps.toXml(),这个方法把整个页面的数据进行了格式化;
这个是它本身的作用。以这个作用为基古,引申开来的意义,就是相当的广。

1。减化了数据库设计;
2。大最减少了业务层跟数据层操作的代码;
3。跟AJAX可实现实美的协作;

以上,三点,是从这个示例里体出来。
当然在这个示例里,细心的朋友也会发现,那这些数据,我要统计或查询的时候怎么样?

本身一个OPS 脚本库,并不是一个框架。整个OPS框架里,主要有三个元素:
1。OPS 脚本库
2。OPS 后台支持库(目前有。NET版本,很希望有志愿者加入开发JAVA版本的)
3。OPS 工具

同时,为了更好的支持OPS 应用。我还专门开发了一个全面支持OPS的O/RM工具

在OPS 作用方面的介绍,请关注“2-x”系经里的脚本库应用示列,以及10-x系列的关于在ASP。NET在应用。
在10-x系统里,将大量介绍OPS 后台支持库与工具的应用。来实现完美的快速开发;