feat(board-generator): add board code generator and sample CRUD artifacts

Add Node.js CLI tool with Handlebars templates for generating standard CRUD artifacts: Java entity, service, DAO, controller, MyBatis mapper XML, and Vue frontend pages.
Also generate the full SampleTableBoard CRUD reference implementation, update README with backend execution instructions, and add project plan documentation.
This commit is contained in:
2026-05-31 13:22:03 +09:00
parent d5ac812703
commit 12c40c6004
25 changed files with 3305 additions and 1 deletions
@@ -0,0 +1,52 @@
package {{implPackage}};
import java.util.List;
import org.springframework.stereotype.Service;
import {{rootPackage}}.{{serviceName}};
import {{daoPackage}}.{{daoName}};
import {{entityFqcn}};
@Service
public class {{serviceImplName}} implements {{serviceName}} {
private final {{daoName}} {{entityVarName}}Dao;
public {{serviceImplName}}({{daoName}} {{entityVarName}}Dao) {
this.{{entityVarName}}Dao = {{entityVarName}}Dao;
}
@Override
public List<{{entityName}}> get{{entityName}}List() {
return {{entityVarName}}Dao.select{{entityName}}List();
}
@Override
public {{entityName}} get{{entityName}}({{primaryKeyJavaType}} {{primaryKeyProperty}}) {
return {{entityVarName}}Dao.select{{entityName}}({{primaryKeyProperty}});
}
@Override
public {{entityName}} create{{entityName}}({{entityName}} {{entityVarName}}) {
{{entityVarName}}Dao.insert{{entityName}}({{entityVarName}});
return {{entityVarName}}Dao.select{{entityName}}({{entityVarName}}.{{primaryKeyGetterName}}());
}
@Override
public {{entityName}} update{{entityName}}({{entityName}} {{entityVarName}}) {
{{entityVarName}}Dao.update{{entityName}}({{entityVarName}});
return {{entityVarName}}Dao.select{{entityName}}({{entityVarName}}.{{primaryKeyGetterName}}());
}
@Override
public void delete{{entityName}}({{primaryKeyJavaType}} {{primaryKeyProperty}}) {
{{entityVarName}}Dao.delete{{entityName}}({{primaryKeyProperty}});
}
}