模板

IDEA②:类注解和方法注解(自定义模板)

孤街醉人 提交于 2021-01-02 06:25:08
注解 类注解 1. 位置:File -> sesstings... => Editor -> File and Code Templates 2. 在 Files 标签下找到 Class 文件,其中:#parse("File Header.java") 指示的就是类注解引用的文件 3. 在 Includes 标签找到上面引用的文件 4. 修改: a. 直接修改:会影响其他引用该文件的文件的注解 b. Files 左上角有一个 "+" 号,自定义一个吧! c. 可使用的函数可以在下面 Description 里面找到 自定义模板 其实就是自定义一个可用模板,比如 main 函数的 psvm, 此处以自定义一个方法模板为例: 1. 位置:File -> sesstings... => Editor -> Live Templates 2. 点击右侧 "+" ,选择 "2.Template Group" 新建一个自己的模板分组,如:"MyGroup" 3. 选中刚新建的分组,继续点击右侧 "+" ,选择 "1.Live Template" 新建一个自己的分组: a. "Abbreviation" 栏填入调用时使用的缩写,如:"mma" b. "Description" 栏填入完整描述,如:"My Method Annotation" c. "Template text" 栏填入模板,如:

freemarker 读取字符串模板,(非文件)

若如初见. 提交于 2020-02-29 10:01:14
最近在做个一个规则匹配,从我多年使用freemarker 的经验决定使用freemarker来做,基于我需要很多规则模板定义,每个规则单独写一个文件太麻烦,于是我感觉freemarker 应该可以使用字符串作为模板,这样我就可以在一个xml定义很多模板,查了查网上资料 大致都是更改templateLoader ,代码如下 package com.venustech.generate; import freemarker.cache.StringTemplateLoader; import freemarker.template.Configuration; import freemarker.template.Template; import freemarker.template.TemplateException; import java.io.IOException; import java.io.StringWriter; import java.io.Writer; import java.util.HashMap; import java.util.Map; /** * Created with IntelliJ IDEA. * User: skyline{http://my.oschina.net/skyline520} * Date: 13-1-9 * Time:

beego模板语法 go语言模版语法

落花浮王杯 提交于 2019-12-18 10:15:08
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> Go 语言的默认模板采用了 {{ 和 }} 作为左右标签,但是我们有时候在开发中可能界面是采用了 AngularJS 开发,他的模板也是这个标签,故而引起了冲突。在 beego 中你可以通过配置文件或者直接设置配置变量修改: beego.TemplateLeft = "<<<" beego.TemplateRight = ">>>" 使用 . 来访问当前位置的上下文 使用 $ 来引用当前模板根级的上下文 使用 $var 来访问创建的变量 模板中支持的 go 语言符号 {{"string"}} // 一般 string {{`raw string`}} // 原始 string {{'c'}} // byte {{print nil}} // nil 也被支持 其他的基本语法我也不在这里写了,大家去查看beego的 官方文档 我只写一下我遇到的问题, 一、默认路径问题 我的模板中有很多文件都是在一个统一的目录下,这个目录的名称有可能会变化,所以我选择在baseController的Prepare中 self.Data["viewpath"] = "/static" 在index.tpl中 <script src="{{.viewpath}}/Js/jquery-1.8.0.min.js"></script> 二

设计模式之行为型模式

Deadly 提交于 2019-12-17 19:19:58
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 我们在前面已讨论了12种设计模式。其中涉及的是:变与不变,对变化如何处理,以及调用关系,对不可调用,如何方便实现成为可以调用。剩下的11个模式,都是与行为传递有关的,即不是变与不变的问题,也不是调用关系问题。而是调用流程控制的问题。这是因为,我们使用了类,使用了SOLID原则,调用流程不再是if else 或 switch case。 处理好这样的流程控制,则更易于我们的代码的简化。 Chain of Responsibility(责任链) :为解除请求的发送者和接受者之间耦合,而使多个对象都有机会处理这个请求。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它。 这样的做法,使得每一个类中的流程控制得以统一。并且,可以将这样的流程控制封装到对应的类中,而不是由调用者来处理,因而调用者不再需要了解这个链中有多少个程员,该按怎样的顺序调用。从而丢开了调用者与被调用者之间的紧密耦合。 实现方式:被调用者作为具体代码,其类中增加$next属性,保存下一个有责任的类。被调的方法中,判断,有没有$next,如果有,则调用$next中的同名方法。 总结:一次性同时调用多个类中的同一个方法。(类方法递归) 选择模式:通过类的链,实现方法选择的组合。 Command(命令) :将一个请求封装为一个对象

一个精巧的Javascript Template引擎

£可爱£侵袭症+ 提交于 2019-12-10 16:43:08
基于MVC模式的web框架在渲染页面时,都会提供可以内嵌后端语言的模板引擎,用于使用动态数据生成页面。在某些场景下,无法使用后端的模板引擎,但又需要使用动态数据渲染页面内容,这时便可选择基于Javascript的模板引擎。 背景:之前公司有一套C/S产品线,后来为了产品的web化,在中间件上封装了一个Restful service接口,用以响应web前端的数据请求。前端只提供了供Javascript调用的数据接口,返回的数据格式为序列化的JSON。因此页面的渲染只能在前端,由Javascript调用Restful service接口获得动态数据之后才能进行。 基于这种场景,考虑寻找一个Javascript的模板引擎进行页面渲染。由于本次需求(一个网站)相对简单,因此没有选择功能强大且复杂的模板引擎,而是采用了一个极其简单的引擎。 这个模板引擎是John Resig在 几年前 写的( 这里 ),代码非常简洁。jquery之前有几个版本提供了模板引擎的功能,后来又去掉了,我没有实际用过jquery的模板功能,只搂了一眼使用方式,猜测跟这个模板引擎应该是有渊源的。John在他的书《 Secrets of the JavaScript Ninja》里也对这段代码做了介绍。下面是这个模板引擎的全部代码: /* * javascript template from John Resig *

翻译:introduce to tornado

别等时光非礼了梦想. 提交于 2019-12-05 01:30:11
在上一章节中,我们看到了如何使用tornado去创建和配置一个简单的web应用。我们学习了:handlers、http方法和tornado的整体框架结构。在这个章节,我们将要开始学习如何在web应用中使用更多更强大的功能。 和大部分web的框架一样,tornado设计的其中一个目标就是帮助你通过tornado更快的完成应用程序,实现代码的高可用和整洁。tornado非常灵活,它几乎支持所有的模板语言,它包括了一个轻量级、快速、灵活的模板。 简单的例子Poem Maker Pro 让我们通过这个名为Poem Maker Pro的例子开始吧!Poem Maker Pro 是一个web应用,它会通过一个html表格去接收用户填写的东西。并且将结果重新在网页中显示出来。 例2-1 poemmaker.py Code View Copy Print import os .path import tornado.httpserver import tornado.ioloop import tornado.options import tornado.web from tornado.options import define, options define(“port”, default=8000, help=”run on the given port”, type = int )

VS中丢失ArcGis 控件和模板的解决方法

送分小仙女□ 提交于 2019-12-03 22:33:11
VS 中丢失 ArcGis 控件和模板的解决方法(看了网上一些方法,多多少少对解决问题有些帮助,集合大家的成果),以下大部分问题是因为先装 vs 后装 ArcGis 或 AE 出现。所有这些问题其实都可以通过在装好 vs 的基础上重装 ArcGis 来解决,但是,如果你不想重装的话,可以试试下面的方法。 问题一:工具箱中没有 ArcGis Windows Forms 解决方法: 解法一: 第一步:添加选项卡,命名为 ArcGis Windows Forms 或者其他你喜欢的名字 第二步,点击工具》》选择工具箱项 第三步:在 .NET Framework 组件中选中相关控件,打钩然后确定 解法二: 第一步:添加选项卡,命名为 ArcGis Windows Forms 或者其他你喜欢的名字 第二步:在安装目录的 bin 下面找到相关的控件,以 .ocx 为后缀,选中直接拖入工具箱中。 问题二: vs 中没有 arcgis 模板 —vs 新建项目时,项目类型中没有 ArcGis 一项 这里 ArcGis 模板下面有两项, DeskTop 和 Engine , 安装 ArcMap 时,安装 ArcGis DeskTop SDK for the Microsoft.NET Framework 后出现 ArcGis 模板中的 DeskTop 。 安装 ArcGis Engine SDK for

Tiny快速入门之Web界面快速开发实践

╄→гoц情女王★ 提交于 2019-12-03 17:48:49
前面讲了基于Tiny做 服务 ,这篇来讲讲用Tiny怎么做界面。f 下面是一些常用的链接,供大家使用: GIT地址(必须是OSC家的): https://git.oschina.net/tinyframework/tiny 问题报告: https://git.oschina.net/tinyframework/tiny/issues 官方网站: http://www.tinygroup.org 更多内容,请看本人博客,不一样的内容,一样的精彩! 本来想改改OSChina的界面,但是研究了一下,OSChina界面实在是高大上呀,不是做不出来,只是工作量比较大,因此还是做个简单的网站来展示一下用Tiny开发界面的过程,同时在展示过程的同时,会把相关的知识做一个充分的介绍 。 一、寻找网站模板 要做网站,不能没有模板,自己不会做网页设计,咋办?问谷歌找百度呗,找了一阵,看到下面这个模板不错,就它了。 http://www.tooplate.com/zip_files/2042_the_block.zip 相仔细了解这篇文章的同学,建议把原板的下载下来,对比着看,会更有感觉。 二、开工制作 1.编写default.layout布局文件 位置:/default.layout <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional/

TinyTemplate(Velocity Plus版)即将火热推出~~~

牧云@^-^@ 提交于 2019-12-03 04:17:41
本来是没有自己写一个模板引擎的计划的,因为按我的理解,一直认识这种“语言”级的引擎,难度是非常大的。总感觉自己的水平不够,因此不敢有这个念头。直到大量使用Velocty的时候,碰到velocty诸多尽如人意的地方,但是又无能为力,退回到JSP吧,又心不有甘。于是就期望着寻找一种语法结构接近velocty,但是又没有Velocity这些不方便之处的模板语言。于是进到一个模板语言群,一群大佬们个个至少是一个模板语言的作者,于是作者在里面表达了自己的期望,大佬们都介绍了自己的模板引擎,于是作者一个接一个的看源码,看文档。说实际,看文档,感觉都非常不错,都有自己的特色,看语法也都不错,除了一部分自己特别关注的点没有之外,其部分都非常不错了。但是距离自己的诉求还是有差距,怎么办呢?于是就准备找一个最接近的模板引擎来进行一定的扩展,挑来挑去就挑中了jetbrick这个模板语言(在此对Jetbrick致以强烈的衷心的感谢!!)。 之所以挑这个呢,是因为以下几个原因: Antlr语言文件编写非常清晰,对于我这种Antlr盲来说,也可以看得懂,甚至可以照葫芦画瓢修改修改,这个非常重要,在后期作者进行了相当的语法改进,这个方面有极度体现 代码质量较好,使用sonar进行进行分析,给的结果都还是相当不错的,在作者看过的所有的模板语言中,算上成之选 语法结构与Velocity的非常接近,这点对我也非常重要

悠然乱弹:“最好的模板引擎”Beetl 剖析及与Tiny模板引擎对比

早过忘川 提交于 2019-12-03 04:17:29
Beetl的环境搭建 输入命令 git clone https://git.oschina.net/xiandafu/beetl2.0.git 不一会儿,输出了下面的内容 Cloning into 'beetl2.0'... remote: Counting objects: 5807, done. remote: Compressing objects: 100% (2145/2145), done. remote: Total 5807 (delta 3050), reused 5383 (delta 2733) Receiving objects: 100% (5807/5807), 14.60 MiB | 684.00 KiB/s, done. Resolving deltas: 100% (3050/3050), done. Checking connectivity... done. 嗯嗯,好的开头是成功的一半,不错,代码取下来了。 cd beetl2.0 mvn install 输出结果: [WARNING] [WARNING] Some problems were encountered while building the effective settings [WARNING] 'servers.server.id' must be unique but