html游戏代码_实现了代码自动生成,开发效率妥妥的提升,升职加薪跟上
目錄
1、應用場景:
2、實戰
1.環境搭建
2.代碼
3.運行結果
3、官方網站
4、總結:
關注我公眾號【香菜聊游戲】
序言:繼續接上篇的live template ,idea騷操作雖然好,但是使用范圍有限,只能是一段代碼,無法對一些重復的邏輯,重復的類進行處理,既然我們遇到了這個問題別人也會遇到,那有沒有現成的技術方案吶?of course !今天就介紹下偷懶大殺器——Freemaker。【FreeMarker 是一款 模板引擎:即一種基于模板和要改變的數據, 并用來生成輸出文本(HTML網頁,電子郵件,配置文件,源代碼等)的通用工具。它不是面向最終用戶的,而是一個Java類庫,是一款程序員可以嵌入他們所開發產品的組件】。官方的解釋真的是高級,用一句話來說就是給程序員使用的,用來做內容生成的。
1、應用場景:
FreeMarker最初的設計,是被用來在MVC模式的Web開發框架中生成HTML頁面的,它沒有被綁定到 Servlet或HTML或任意Web相關的東西上。它也可以用于非Web應用環境中。在我們的游戲項目中有一些緩存類,和查詢數據庫的代碼是重復的機械性代碼,因此用來生成項目內的一些通用代碼結構,提高了生產效率,也減少了出錯的可能性,機智。
2、實戰
不管是Jsp 還是freemaker 都是內容替換,用公式來表達就是:模板 + 數據模型 = 輸出。
你要做的就是理解,然后記住那些該死的標簽,用完然后忘掉,重復,輪回,o(╯□╰)o。
1.環境搭建
創建maven 項目,或者直接下載 下面對應的包加入你的項目中,看你方便,建議使用maven,自動下載包,多happy。
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.30</version>
</dependency>
2.代碼
模板文件:
package ${packagePath};
public class ${className} {
public static void main(String[] args) {
System.out.println("${helloWorld}");
}
}
生成代碼
package org.pdool.d20201010;
import freemarker.template.Configuration;
import freemarker.template.Template;
import java.io.*;
import java.util.HashMap;
import java.util.Map;
public class Aain {
private static final String TEMPLATE_PATH ="src/main/java/org/pdool/d20201010";
private static final String CLASS_PATH ="src/main/java/org/pdool/d20201010/gen/";
private static final String PACKAGE_PATH = "org.pdool.d20201010.gen";
public static void main(String[] args) throws Exception {
Configuration configuration = new Configuration();
String genClassName = "HelloFreeMaker";
configuration.setDirectoryForTemplateLoading(new File(TEMPLATE_PATH));
Map<String, Object> dataMap = new HashMap<>();
dataMap.put("packagePath", PACKAGE_PATH);
dataMap.put("className", genClassName);
dataMap.put("helloWorld", "hello freeMaker,from 香菜");
Template template = configuration.getTemplate("helloFreemaker.ftl");
File docFile = new File(CLASS_PATH + genClassName + ".java");
Writer out = new BufferedWriter(new OutputStreamWriter(newFileOutputStream(docFile)));
template.process(dataMap, out);
System.out.println(genClassName + ".java 文件創建成功 !");
}
}
3.運行結果
3、官方網站
上面介紹了基本的使用,在你使用的過程中可能需要一些其他的標簽,可以查閱官方網站。
官方網站的鏈接:http://freemarker.foofun.cn/index.html,網站上有完整的介紹,今天主要還是介紹下怎么快速的入門,官方的網站上太全,等你遇到問題再去查也不著急。
4、總結:
關注我公眾號【香菜聊游戲】,專注游戲技術,還有源碼可以領取哦。
不過是內容替換而已,相信會Java的同學基本一眼就能看明白,和Jsp 同理,跟著規則來,將生成的內容寫入到文件,免去一些日常的代碼操作。
瘋狂提升開發效率,留點時間劃劃水,找朋友聊聊天,帶其他的同學飛,展示下你的技術,何樂而不為。
使用步驟:
第一步:創建一個Configuration對象,直接new一個對象。
第二步:設置模板文件所在的路徑。
第三步:設置模板文件使用的字符集。一般就是utf-8。
第四步:加載一個模板,創建一個模板對象。
第五步:創建一個模板使用的數據集。一般是Map。
第六步:創建一個Writer對象,一般創建一FileWriter對象,指定生成的文件名。
第七步:調用模板對象的process方法輸出文件。
第八步:關閉流。
作者:公眾號一香菜聊游戲
鏈接:https://blog.csdn.net/nanhuaibeian/article/details/108959397
總結
以上是生活随笔為你收集整理的html游戏代码_实现了代码自动生成,开发效率妥妥的提升,升职加薪跟上的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql delete exists用
- 下一篇: ipv6 端口号_计算机网络之IP、MA