#BlackDream — платформа для создания генераторов файлов
В интернете существует множество разнообразных генераторов кода, которые отличаются своей функциональностью. Некоторые из них позволяют создавать проекты одним нажатием кнопки. Однако у таких генераторов есть существенный недостаток: они представляют собой готовые решения с фиксированными правилами генерации.
Эти примеры касаются только генерации Java-проектов, но ограничения могут распространяться и на другие языки программирования, такие как C, C++, C#, Python, HTML, JavaScript и т. д.
BlackDream представляет собой платформу для создания и совместного использования генераторов файлов. На начальном этапе она может быть использована внутри компании или для личного пользования, когда объём данных невелик. В этом случае данные хранятся в формате XML без использования базы данных.
package com.lite.blackdream.po;
#set($typeSet = $classTool.inspect("java.util.LinkedHashSet").getType().newInstance())
#foreach($property in $po.association)
#if($property.propertyType == "Date" && $typeSet.add("java.util.Date"))#end
#end
#foreach($type in $typeSet)
import $type;
#end
/**
* $!{po.properties.comment}
* @author ${global.user.userName}
*/
public class ${po.name}Po {
#foreach($property in $po.association)
/**
* $!{property.propertyComment}
*/
private ${property.propertyType} ${property.propertyName};
#end
public ${po.name}Po() {
}
#foreach($property in $po.association)
#set($propertyNameUpperCase = ${property.propertyName.substring(0, 1).toUpperCase().concat($property.propertyName.substring(1))})
public ${property.propertyType} get${propertyNameUpperCase}() {
return ${property.propertyName};
}
public void set${propertyNameUpperCase}(${property.propertyType} ${property.propertyName}) {
this.${property.propertyName} = ${property.propertyName};
}
#end
}
Пример генератора в blackdream/src/site — JavaBean-генератор кода.
**Скачайте JavaBean-генератор кода: ** JavaBean-генератор кода.
Поскольку данные, необходимые для генератора, могут быть введены только вручную, невозможно реализовать автоматизированные требования, например, импортировать данные через таблицы базы данных.
Пример проекта демонстрирует, как использовать простой miniSDK для управления данными определённого генератора blackdream.
Sample/src/site/Employee.sql — это скрипт SQL, который удобно использовать для создания тестовых таблиц.
sample/src/site/java — данные слоя кода генератора более сложный, чем в руководстве. После успешной установки его можно импортировать. Пример проекта управляет данными с помощью программного интерфейса.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )