12c40c6004
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.
50 lines
2.0 KiB
Handlebars
50 lines
2.0 KiB
Handlebars
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
<mapper namespace="{{mapperNamespace}}">
|
|
|
|
<resultMap id="{{entityVarName}}ResultMap" type="{{entityFqcn}}">
|
|
{{#each columns}}
|
|
{{#if primaryKey}}<id property="{{propertyName}}" column="{{columnName}}"/>{{else}}<result property="{{propertyName}}" column="{{columnName}}"/>{{/if}}
|
|
{{/each}}
|
|
</resultMap>
|
|
|
|
<select id="select{{entityName}}List" resultMap="{{entityVarName}}ResultMap">
|
|
SELECT {{#each columns}}{{columnName}}{{#unless @last}}, {{/unless}}{{/each}}
|
|
FROM {{metadata.schema}}.{{tableName}}
|
|
ORDER BY {{primaryKeyColumn.columnName}} DESC
|
|
</select>
|
|
|
|
<select id="select{{entityName}}" parameterType="{{primaryKeyMyBatisType}}" resultMap="{{entityVarName}}ResultMap">
|
|
SELECT {{#each columns}}{{columnName}}{{#unless @last}}, {{/unless}}{{/each}}
|
|
FROM {{metadata.schema}}.{{tableName}}
|
|
WHERE {{primaryKeyColumn.columnName}} = #{{'{'}}{{primaryKeyProperty}}{{'}'}}
|
|
</select>
|
|
|
|
<insert id="insert{{entityName}}" parameterType="{{entityFqcn}}"{{#if primaryKeyColumn.autoIncrement}} useGeneratedKeys="true" keyProperty="{{primaryKeyProperty}}"{{/if}}>
|
|
INSERT INTO {{metadata.schema}}.{{tableName}} (
|
|
{{#each insertColumns}}
|
|
{{columnName}}{{#unless @last}},{{/unless}}
|
|
{{/each}}
|
|
)
|
|
VALUES (
|
|
{{#each insertColumns}}
|
|
#{{'{'}}{{propertyName}}{{'}'}}{{#unless @last}},{{/unless}}
|
|
{{/each}}
|
|
)
|
|
</insert>
|
|
|
|
<update id="update{{entityName}}" parameterType="{{entityFqcn}}">
|
|
UPDATE {{metadata.schema}}.{{tableName}}
|
|
SET
|
|
{{#each updateColumns}}
|
|
{{columnName}} = #{{'{'}}{{propertyName}}{{'}'}}{{#unless @last}},{{/unless}}
|
|
{{/each}}
|
|
WHERE {{primaryKeyColumn.columnName}} = #{{'{'}}{{primaryKeyProperty}}{{'}'}}
|
|
</update>
|
|
|
|
<delete id="delete{{entityName}}" parameterType="{{primaryKeyMyBatisType}}">
|
|
DELETE FROM {{metadata.schema}}.{{tableName}}
|
|
WHERE {{primaryKeyColumn.columnName}} = #{{'{'}}{{primaryKeyProperty}}{{'}'}}
|
|
</delete>
|
|
</mapper>
|