服务化可编排的在线模板生成系统及方法技术方案

技术编号:22307955 阅读:56 留言:0更新日期:2019-10-16 08:05
本发明专利技术提出一种服务化可编排的在线模板生成系统及方法,该系统通过浏览器提供交互窗口,业务服务器通过浏览器与用户交互,获取用户的业务请求,然后根据业务请求生成符合模板引擎服务器规定的操作指令;模板引擎服务器根据操作指令调用预先封装好的功能模块生成用户所需的模板文件。本发明专利技术中,模板制作过程可直接面向终端用户,更加便捷,入门门槛低。直接在现有模板拷贝或手动在编辑器中制作,排版,插入书签即可,无需要求用户手写div tb for循环等开发代码;且制作过程中能够随时预览,随时调整样式。

On line template generation system and method of service-oriented and choreographable

【技术实现步骤摘要】
服务化可编排的在线模板生成系统及方法
本专利技术涉及互联网
,尤其是一种服务化可编排的在线模板生成系统及方法。
技术介绍
现有的模板引擎主要有:Thymeleaf、Freemarker和Velocity;Thymeleaf是一个JavaXML/XHTML/HTML5模板引擎,可以在Web(基于servlet)和非Web环境中工作。它更适合在基于MVC的Web应用程序的视图层提供XHTML/HTML5,但它甚至可以在脱机环境中处理任何XML文件。Freemarker是一个基于Java的模板引擎,最初专注于使用MVC软件架构生成动态网页。但是,它是一个通用的模板引擎,不依赖于servlets或HTTP或HTML,因此它通常用于生成源代码,配置文件或电子邮件。Velocity是一个基于java的模板引擎。它允许任何人使用一个简单而强大的模板语言引用对象中定义的Java代码。以Freemarker为例,Freemarker的模板生成流程为:1)制作模板。前端开发人员编写HTML静态页面代码,插入占位符(内容以${}包围,如图1中的${name})用于freemarker引擎识别,替换为业务数据;2)数据准备。后端准备业务数据,按照约定好的格式,这里是Java对象(如图1中,name:World);3)模板渲染。将模板和数据作为输入项,传入freemarker引擎,输出替换后的真实文件(如图1中的output,${name}已经替换成World)。现有的几种模板引擎存在如下缺点:1、需要专业的开发人员编写代码来制作模板,所以该模板引擎无法直接面向不懂代码的终端普通用户;2、同一个模板无法进行版本控制,模板一旦修改无法回滚,且不支持多个版本并行存在,无法解决技术更新过渡期新、旧模板需并行一段时间存在的业务需求;3、无法根据用户需求动态的进行多个模板的编排、合并等高级操作;4、模板引擎自身只能是HTML格式,无法提供不同格式的输出,如doc、pdf等。
技术实现思路
专利技术目的:为克服现有技术的缺陷,本专利技术提出一种服务化可编排的在线模板生成系统及方法。本专利技术中,模板制作过程可直接面向终端用户,更加便捷,入门门槛低。直接在现有模板拷贝或手动在编辑器中制作,排版,插入书签即可,无需要求用户手写divtbfor循环等开发代码;且制作过程中能够随时预览,随时调整样式。技术方案:为实现上述技术效果,本专利技术提出以下技术方案:一种服务化可编排的在线模板生成系统,包括浏览器、业务服务器、模板引擎服务器;业务服务器获取用户的业务请求,然后根据业务请求生成符合模板引擎服务器规定的操作指令;模板引擎服务器根据操作指令调用预先封装好的功能模块生成用户所需的模板文件;模板引擎服务器的功能模块包括:制作模块、检索模块、生成模块、渲染模块;制作模块直接与业务服务器交互,根据操作指令生成用户所需的特定模板文件的参数,检索模块根据模板文件的参数在线配置生成模板文件,然后返回给业务服务器;生成模块通过业务服务器获取需要填入模板中的数据,并按照模板规定的格式将数据封装到模板里的键值对中,生成实际需要的文件;渲染模块将生成的文件按照用户请求的格式进行渲染。进一步地,制作模块包括三个子功能模块,分别为模板域、模块特性、书签;三个子功能模块均根据业务服务器给出的操作指令进行调用,其中,模板域用于为不同的业务创建各自的域以实现不同业务之间的隔离;模块特性用于为模板增加特性属性;书签以键值对形式插入在模板中,由用户通过模板参数自定义,书签的键即插入模板文件内容中特殊格式的占位符;书签的值为特定格式的具体实例数据。进一步地,还包括浏览器,业务服务器通过浏览器与客户交互,获取用户的业务请求。本专利技术还提出一种基于服务化可编排的在线模板生成系统的模板生成方法,包括顺序执行的步骤(1)至(5):(1)用户打开浏览器,向业务服务器进行业务请求;(2)业务服务器根据业务请求去模板引擎服务器检索模板,模板引擎服务器在线配置生成所需模板并返回满足条件的模板和该模板中所引用的书签列表;(3)根据不同场景,由用户手动输入或选择步骤(2)中返回的书签键对应的值或者由程序从数据库拉取需要的数据,组装成模板引擎服务器规定的键值对集合格式,加上模板唯一标识一并传给模板引擎服务器;(4)模板引擎服务器接收到步骤(3)发送的数据后,进行键、值替换操作,生成文件;(5)根据用户的业务请求对生成的文件进行渲染。进一步的,用户向业务服务器进行业务请求时,执行以下步骤:在制作模块中创建用于数据隔离的模板域D,为模板域D配置特性F。进一步的,当用户需要修改模板时,通过制作模块进行修改,生成新的模板快照,原模板保留在模板引擎服务器的数据库中。进一步的,书签以Key-Value格式存在,其中Key用于定义数据属性,包括名称、用途,Value用于定义存储数据的格式,书签类型包括文本、下拉框、日期控件、表格。进一步的,模板支持配置一个或多个特性。进一步的,渲染格式包括HTML、PDF。有益效果:与现有技术相比,本专利技术具有以下优势:1)模板制作过程可直接面向终端用户,更加便捷,入门门槛低。直接在现有模板拷贝或手动在编辑器中制作,排版,插入书签即可,无需要求用户手写divtbfor循环等开发代码;且制作过程中能够随时预览,随时调整样式;2)引入了模板域的概念,可用于不同业务进行权限认证和数据隔离,使数据更加安全;3)通过模板特性给模板的使用场景进行多维度的分类,便于后台管理,尤其是模板数量很多的情况下;4)支持多版本控制,每次制作的快照都会保留,方便随时回滚到指定版本,且支持多版本并行访问;如:访问1.0和2.0版本的模板时,只要参数中加个版本号即可。5)不仅支持程序从数据库及其他数据源中拉取数据组装书签键值对,还支持用户从界面上选择、输入相关数据;且该页面支持后台配置。即页面的数据来源于模板返回的携带的书签集合;当涉及到书签数目或类型修改时,无需修改页面,管理后台修改书签属性即可动态加载;6)支持多个子模板编排、合并成新的大模板;解决复杂业务不同团队分工协作的难题;7)自身支持多个渲染方式,HTML、PDF等,由用户自定义,支持插件扩展;8)PDF格式支持自定义水印等附加功能,标明出处,方便维权等。附图说明图1为现有模板生成引擎Freemarker的模板生成原理图;图2为本专利技术服务化可编排的在线模板生成系统的整体流程图;图3为本专利技术中制作模块的工作流程图。具体实施方式下面结合附图和具体实施例对本专利技术作更进一步的说明。本专利技术提出一种服务化可编排的在线模板生成系统,如图2所示,包括浏览器、业务服务器、模板引擎服务器;浏览器提供交互窗口,业务服务器通过浏览器与用户交互,获取用户的业务请求,然后根据业务请求生成符合模板引擎服务器规定的操作指令;模板引擎服务器根据操作指令调用预先封装好的功能模块生成用户所需的模板文件;模板引擎服务器的功能模块包括:制作模块、检索模块、生成模块、渲染模块;制作模块直接与业务服务器交互,根据操作指令生成用户所需的特定模板文件的参数,检索模块根据模板文件的参数在线配置生成模板文件,然后返回给业务服务器;生成模块通过业务服务器获取需要填入模板中的数据,并按照模板规定的格式将数据封装到模板里本文档来自技高网
...

【技术保护点】
1.一种服务化可编排的在线模板生成系统,其特征在于,包括浏览器、业务服务器、模板引擎服务器;业务服务器获取用户的业务请求,然后根据业务请求生成符合模板引擎服务器规定的操作指令;模板引擎服务器根据操作指令调用预先封装好的功能模块生成用户所需的模板文件;模板引擎服务器的功能模块包括:制作模块、检索模块、生成模块、渲染模块;制作模块直接与业务服务器交互,根据操作指令生成用户所需的特定模板文件的参数,检索模块根据模板文件的参数在线配置生成模板文件,然后返回给业务服务器;生成模块通过业务服务器获取需要填入模板中的数据,并按照模板规定的格式将数据封装到模板里的键值对中,生成实际需要的文件;渲染模块将生成的文件按照用户请求的格式进行渲染。

【技术特征摘要】
1.一种服务化可编排的在线模板生成系统,其特征在于,包括浏览器、业务服务器、模板引擎服务器;业务服务器获取用户的业务请求,然后根据业务请求生成符合模板引擎服务器规定的操作指令;模板引擎服务器根据操作指令调用预先封装好的功能模块生成用户所需的模板文件;模板引擎服务器的功能模块包括:制作模块、检索模块、生成模块、渲染模块;制作模块直接与业务服务器交互,根据操作指令生成用户所需的特定模板文件的参数,检索模块根据模板文件的参数在线配置生成模板文件,然后返回给业务服务器;生成模块通过业务服务器获取需要填入模板中的数据,并按照模板规定的格式将数据封装到模板里的键值对中,生成实际需要的文件;渲染模块将生成的文件按照用户请求的格式进行渲染。2.根据权利要求1所述的一种服务化可编排的在线模板生成系统,其特征在于,所述制作模块包括三个子功能模块,分别为模板域、模块特性、书签;所述三个子功能模块均根据业务服务器给出的操作指令进行调用,其中,模板域用于为不同的业务创建各自的域以实现不同业务之间的隔离;模块特性用于为模板增加特性属性;书签以键值对形式插入在模板中,由用户通过模板参数自定义,书签的键即插入模板文件内容中特殊格式的占位符;书签的值为特定格式的具体实例数据。3.根据权利要求1所述的一种服务化可编排的在线模板生成系统,其特征在于,还包括浏览器,业务服务器通过浏览器与客户交互,获取用户的业务请求。4.一种基于权利要求1至3任意一项所述的服务化可编排的在线模板生成系统的模板生成方法,其特征在于,包括顺...

【专利技术属性】
技术研发人员:杨斌易锋
申请(专利权)人:政采云有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1