1 Star 0 Fork 0

OSCHINA-MIRROR/darkidiot-CodeHelper

Join Gitlife
Discover and participate in excellent open source projects with over 10 million developers. Private repositories are also completely free :)
Join for free
This repository does not have a declared open-source license file (LICENSE). Please refer to the specific project description and its code upstream dependencies when using.
Clone/Download
Contribute code
Sync code
Cancel
Hint: Since Git does not support empty folders, creating a folder will generate an empty .keep file.
Loading...
README.md

Инструмент для генерации кода MyBatis

  • ① Визуализация конфигурации подключения к базе данных.
  • ② Автоматическое создание кода для слоя service и dao.

ps: Поддерживаются два стиля конфигурации — Mapper и sqlSession.

  • ③ Простая структура кода, отсутствие зависимостей, возможность индивидуальной настройки.

Использование:

    git clone https://git.oschina.net/darkidiot/CodeHelper.git
    java -jar ./CodeHelper/dist/CodeHelper.jar

Image description

Как настроить собственный CodeHelper?

Анализ кода:

Java:

    private String getMyBatisCode(Table table, String pack, String author) throws Exception {
		String xml = Util.read(getDaoTemplateLocation());
		String daoTemplate = Util.matchs(xml, "<class>([\\w\\W]+?)</class>", 1).get(0);
        ... ... ...
        return daoTemplate.toString();
	}

xml:

<mapper namespace="#class.package#.mapper.#class.name#Mapper">
    <resultMap id="BaseResultMap" type="#class.package#.model.#class.name#">
		#columns.mapping#
	</resultMap>
    ... ... ...
	<sql id="tb">
		#table.name#
	</sql>
    
	<sql id="cols_all">
		#id#, <include refid="cols_exclude_id" />
	</sql>
    ... ... ...
	<select id="load" parameterType="long" resultMap="BaseResultMap">
		SELECT
		<include refid="cols_all" />
		FROM
		<include refid="tb" />
		WHERE #id# = #{id}
	</select>
	... ... ...
	<insert id="create" parameterType="#class.package#.model.#class.name#">
	    INSERT INTO 
	    <include refid="tb" /> (<include refid="cols_all"/>)
	    VALUES(<include refid="vals_all"/>)
	</insert>
	... ... ...
	<update id="update" parameterType="#class.package#.model.#class.name#">
	    UPDATE <include refid="tb" />
	    <set>
	    	#commaIfEntrys#
	    </set>
	    WHERE #id# = #idVal#
	</update>
	... ... ...
	<delete id="delete" parameterType="long">
		DELETE FROM <include refid="tb" />
		WHERE #id# = #{id}
	</delete>	
</mapper>

Вы можете изменить этот код для создания любого кода по своему усмотрению.

Конец

Comments ( 0 )

You can comment after Login

Introduction

1. Визуализация конфигурации соединения с базой данных. 2. Автоматическая генерация кода на уровне сервиса и слоя DAO: поддерживается два стиля конфигурации — Mapper и SQLSession. 3. Простая структура кода, отсутствие зависимостей, возможность простой индивидуальной настройки. Expand Collapse
Cancel

Releases

No releases yet

Contributor

All

Recent Activities

Load more
No more results to load
1
https://gitlife.ru/oschina-mirror/darkidiot-CodeHelper.git
git@gitlife.ru:oschina-mirror/darkidiot-CodeHelper.git
oschina-mirror
darkidiot-CodeHelper
darkidiot-CodeHelper
master