成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

IDEA插件EasyCode及MyBatis最優配置步驟詳解

瀏覽:217日期:2024-08-03 09:34:24

具體安裝步驟,不再贅述,僅附上個人工作、學習中的對 EasyCode 的詳細配置。插件鏈接地址:https://gitee.com/makejava/EasyCode

Type Mapper

varchar((d+))?java.lang.Stringchar((d+))?java.lang.Stringtextjava.lang.Stringdecimal((d+))?java.lang.Doubledecimal((d+,d+))?java.lang.Doubleintegerjava.lang.Integerint((d+))?java.lang.Integerint4java.lang.Integerint8java.lang.Longbigint((d+))?java.lang.Longdatetime((d+))?java.time.LocalDateTimetimestampjava.time.LocalDateTimebooleanjava.lang.Booleantinyint((d+))?java.lang.Integersmallint((d+))?java.lang.Integerdouble((d+))?java.lang.Doubledouble((d+,d+))?java.lang.Double

Template Setting

entity.java

##初始化定義$!init##引入宏定義$!define##使用宏定義設置回調(保存位置與文件后綴)#save('/entity', '.java')##使用宏定義設置包后綴#setPackageSuffix('entity')##使用全局變量實現默認包導入$!autoImportimport java.io.Serializable;##使用宏定義實現類注釋信息#tableComment('實體類')public class $!{tableInfo.name} implements Serializable { private static final long serialVersionUID = $!tool.serial(); #foreach($column in $tableInfo.fullColumn) #if(${column.comment})/** * ${column.comment} */#end private $!{tool.getClsNameByFullName($column.type)} $!{column.name}; #end public $!{tableInfo.name}() { } public $!{tableInfo.name}(#foreach($column in $tableInfo.fullColumn)$!{tool.getClsNameByFullName($column.type)} $!column.name #if($velocityCount != $tableInfo.fullColumn.size()), #end#end) { #foreach($column in $tableInfo.fullColumn) this.$!column.name = $!column.name;#end }#foreach($column in $tableInfo.fullColumn)##使用宏定義實現get,set方法 #getSetMethod($column)#end @Override public String toString() { StringBuilder str = new StringBuilder(); str.append('$!{tableInfo.name}{'); #foreach( $column in $tableInfo.fullColumn ) str.append('$!column.name=').append(this.$!column.name)#if( $foreach.hasNext ).append(', ')#end; #end str.append(’}’); return str.toString(); }}

DTO.java

##導入宏定義$!define##保存文件(宏定義)#save('/dto', 'DTO.java')##包路徑(宏定義)#setPackageSuffix('dto')##自動導入包(全局變量)$!autoImport##import com.baomidou.mybatisplus.extension.activerecord.Model;import java.io.Serializable;import lombok.Data;##import com.baomidou.mybatisplus.annotation.IdType;##import com.baomidou.mybatisplus.annotation.TableId;##表注釋(宏定義)#tableComment('DTO')@Datapublic class $!{tableInfo.name}DTO implements Serializable { private static final long serialVersionUID = $!tool.serial();#foreach($column in $tableInfo.fullColumn) #if(${column.comment})/**${column.comment}*/#end private $!{tool.getClsNameByFullName($column.type)} $!{column.name};#end}

mapper.java

##定義初始變量#set($tableName = $tool.append($tableInfo.name, 'Mapper'))##設置回調$!callback.setFileName($tool.append($tableName, '.java'))$!callback.setSavePath($tool.append($tableInfo.savePath, '/mapper'))##拿到主鍵#if(!$tableInfo.pkColumn.isEmpty()) #set($pk = $tableInfo.pkColumn.get(0))#end#if($tableInfo.savePackageName)package $!{tableInfo.savePackageName}.#{end}mapper;import $!{tableInfo.savePackageName}.entity.$!{tableInfo.name};import org.apache.ibatis.annotations.Mapper;import org.apache.ibatis.annotations.Param;import java.util.List;#set($time=$!time.currTime())#set($time=$time.substring(0,11))#set($time=$time.replace('-','/'))/** * <p> * $!{tableInfo.comment}($!{tableInfo.name})表數據庫訪問層 * </p> * * @author:$!author * @date:$!time */@Mapperpublic interface $!{tableName} { /** * 通過ID查詢單條數據 * * @param $!pk.name 主鍵 * @return 實例對象 */ $!{tableInfo.name} queryById($!pk.shortType $!pk.name); /** * 通過實體作為篩選條件查詢 * * @param $!tool.firstLowerCase($!{tableInfo.name}) 實例對象 * @return 對象列表 */ List<$!{tableInfo.name}> queryAll($!{tableInfo.name} $!tool.firstLowerCase($!{tableInfo.name})); /** * 通過實體作為篩選條件查詢條數 * * @param $!tool.firstLowerCase($!{tableInfo.name}) 實例對象 * @return 條數 */ int queryAllCount($!{tableInfo.name} $!tool.firstLowerCase($!{tableInfo.name})); /** * 新增數據 * * @param $!tool.firstLowerCase($!{tableInfo.name}) 實例對象 * @return 影響行數 */ int insert($!{tableInfo.name} $!tool.firstLowerCase($!{tableInfo.name})); /** * 新增選擇列 * * @param $!tool.firstLowerCase($!{tableInfo.name}) 實例對象 * @return 影響行數 */ int insertSelective($!{tableInfo.name} $!tool.firstLowerCase($!{tableInfo.name})); /** * 修改數據 * * @param $!tool.firstLowerCase($!{tableInfo.name}) 實例對象 * @return 影響行數 */ int update($!{tableInfo.name} $!tool.firstLowerCase($!{tableInfo.name})); /** * 通過主鍵刪除數據 * * @param $!pk.name 主鍵 * @return 影響行數 */ int deleteById($!pk.shortType $!pk.name); /** * 批量新增 * @param recordList * @return 影響行數 */ int batchInsert(@Param('recordList') List<$!{tableInfo.name}> recordList); /** * 批量修改 * @param recordList * @return 影響行數 */ int batchUpdate(@Param('recordList') List<$!{tableInfo.name}> recordList); /** * 根據主鍵批量刪除 * @param ids 主鍵s * @return 影響行數 */ int batchDelete(@Param('ids') String[] ids); }

serviceImpl.java

##初始化定義$!init##定義初始變量#set($tableName = $tool.append($tableInfo.name, 'ServiceImpl'))##設置回調$!callback.setFileName($tool.append($tableName, '.java'))$!callback.setSavePath($tool.append($tableInfo.savePath, '/service/impl'))##拿到主鍵#if(!$tableInfo.pkColumn.isEmpty()) #set($pk = $tableInfo.pkColumn.get(0))#end#if($tableInfo.savePackageName)package $!{tableInfo.savePackageName}.#{end}service.impl;import $!{tableInfo.savePackageName}.mapper.$!{tableInfo.name}Mapper;import $!{tableInfo.savePackageName}.service.$!{tableInfo.name}Service;import org.springframework.stereotype.Service;import org.springframework.beans.factory.annotation.Autowired;#set($time=$!time.currTime())#set($time=$time.substring(0,11))#set($time=$time.replace('-','/'))/** * <p> * $!{tableInfo.comment}($!{tableInfo.name})表服務實現類 * </p> * * @author:$!author * @date:$!time */@Service('/$!tool.firstLowerCase($!{tableInfo.name})Service')public class $!{tableName} implements $!{tableInfo.name}Service { @Autowired private $!{tableInfo.name}Mapper $!tool.firstLowerCase($!{tableInfo.name})Mapper;}

service.java

##定義初始變量#set($tableName = $tool.append($tableInfo.name, 'Service'))##設置回調$!callback.setFileName($tool.append($tableName, '.java'))$!callback.setSavePath($tool.append($tableInfo.savePath, '/service'))##拿到主鍵#if(!$tableInfo.pkColumn.isEmpty()) #set($pk = $tableInfo.pkColumn.get(0))#end#if($tableInfo.savePackageName)package $!{tableInfo.savePackageName}.#{end}service;#set($time=$!time.currTime())#set($time=$time.substring(0,11))#set($time=$time.replace('-','/'))/** * <p> * $!{tableInfo.comment}($!{tableInfo.name})表服務接口 * </p> * * @author:$!author * @date:$!time */public interface $!{tableName} {}

controller.java

##定義初始變量#set($tableName = $tool.append($tableInfo.name, 'Controller'))##設置回調$!callback.setFileName($tool.append($tableName, '.java'))$!callback.setSavePath($tool.append($tableInfo.savePath, '/controller'))##拿到主鍵#if(!$tableInfo.pkColumn.isEmpty()) #set($pk = $tableInfo.pkColumn.get(0))#end#if($tableInfo.savePackageName)package $!{tableInfo.savePackageName}.#{end}controller;import $!{tableInfo.savePackageName}.service.$!{tableInfo.name}Service;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.*;#set($time=$!time.currTime())#set($time=$time.substring(0,11))#set($time=$time.replace('-','/'))/** * <p> * $!{tableInfo.comment}($!{tableInfo.name})表控制層 * </p> * * @author:$!author * @date:$!time */@RestController@RequestMapping('/$!tool.firstLowerCase($tableInfo.name)')public class $!{tableName} { @Autowired private $!{tableInfo.name}Service $!tool.firstLowerCase($tableInfo.name)Service;}

mysql-mapper.xml

##引入mybatis支持$!mybatisSupport##設置保存名稱與保存位置$!callback.setFileName($tool.append($!{tableInfo.name}, 'Mapper.xml'))$!callback.setSavePath($tool.append($modulePath, '/src/main/resources/mapper'))##拿到主鍵#if(!$tableInfo.pkColumn.isEmpty()) #set($pk = $tableInfo.pkColumn.get(0))#end<?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='$!{tableInfo.savePackageName}.mapper.$!{tableInfo.name}Mapper'> <resultMap type='$!{tableInfo.savePackageName}.entity.$!{tableInfo.name}' id='$!{tableInfo.name}Map'>#foreach($column in $tableInfo.fullColumn) <result property='$!column.name' column='$!column.name' jdbcType='$!column.ext.jdbcType'/>#end </resultMap><!-- 偽列 --><sql id='columns'>#foreach($column in $tableInfo.fullColumn) a.$!column.obj.name AS $!column.name #if($velocityCount != $tableInfo.fullColumn.size()),#end#end </sql> <!-- 查詢條件 --><sql id='whereSql'> <where>#foreach($column in $tableInfo.fullColumn) <if test='$!column.name != null#if($column.type.equals('java.lang.String')) and $!column.name != ’’#end'> and a.$!column.obj.name = #{$!column.name} </if>#end </where> </sql> <!-- 通過ID查詢單條數據 --> <select resultType='$!{tableInfo.savePackageName}.entity.$!{tableInfo.name}'> select <include refid='columns'/> from $!{tableInfo.obj.parent.name}.$!tableInfo.obj.name a where a.$!pk.obj.name = #{$!pk.name} </select> <!-- 通過實體作為篩選條件查詢 --> <select resultType='$!{tableInfo.savePackageName}.entity.$!{tableInfo.name}'> select <include refid='columns'/> from $!{tableInfo.obj.parent.name}.$!tableInfo.obj.name a <include refid='whereSql' /> </select> <!-- 通過實體作為篩選條件查詢條數 --> <select resultType='java.lang.Integer'> select count(1) from $!{tableInfo.obj.parent.name}.$!tableInfo.obj.name a <include refid='whereSql' /> </select> <!-- 新增數據 --> <insert keyProperty='$!pk.name' useGeneratedKeys='true'> insert into $!{tableInfo.obj.parent.name}.$!{tableInfo.obj.name}(#foreach($column in $tableInfo.fullColumn)$!column.obj.name#if($velocityHasNext), #end#end) values (#foreach($column in $tableInfo.fullColumn)#{$!{column.name}}#if($velocityHasNext), #end#end) </insert> <!-- 新增選擇列 --> <insert keyProperty='$!pk.name' useGeneratedKeys='true'> insert into $!{tableInfo.obj.parent.name}.$!{tableInfo.obj.name} <trim prefix='(' suffix=')' suffixOverrides=',' >#foreach($column in $tableInfo.fullColumn) <if test='$!column.name != null#if($column.type.equals('java.lang.String')) and $!column.name != ’’#end'> $!column.obj.name, </if>#end </trim> <trim prefix='values (' suffix=')' suffixOverrides=',' >#foreach($column in $tableInfo.fullColumn) <if test='$!column.name != null#if($column.type.equals('java.lang.String')) and $!column.name != ’’#end'> #{$!column.name,jdbcType=$!column.ext.jdbcType}, </if>#end </trim> </insert> <!-- 修改數據 --> <update id='update'> update $!{tableInfo.obj.parent.name}.$!{tableInfo.obj.name} <set>#foreach($column in $tableInfo.otherColumn) <if test='$!column.name != null#if($column.type.equals('java.lang.String')) and $!column.name != ’’#end'> $!column.obj.name = #{$!column.name}, </if>#end </set> where $!pk.obj.name = #{$!pk.name} </update> <!-- 通過主鍵刪除數據 --> <delete id='deleteById'> delete from $!{tableInfo.obj.parent.name}.$!{tableInfo.obj.name} where $!pk.obj.name = #{$!pk.name} </delete> <!-- 批量新增 --> <insert parameterType='java.util.List'> insert into $!{tableInfo.obj.parent.name}.$!{tableInfo.obj.name} ( #foreach($column in $tableInfo.fullColumn)$!column.obj.name#if($velocityHasNext), #end#end ) values <foreach collection='recordList' index='index' item='item' separator=','> ( #foreach($column in $tableInfo.fullColumn)#{item.$!{column.name}}#if($velocityHasNext), #end#end ) </foreach> </insert> <!-- 批量修改 --> <update parameterType='java.util.List'> update $!{tableInfo.obj.parent.name}.$!{tableInfo.obj.name} <trim prefix='set' suffixOverrides=','>#foreach($column in $tableInfo.otherColumn) <trim prefix='$!column.obj.name =case $!pk.obj.name' suffix='end,'> <foreach collection='recordList' index='index' item='item'> <if test='item.$!column.name !=null '> when #{item.$!pk.name} then #{item.$!column.name} </if> <if test='item.$!column.name ==null '> when #{item.$!pk.name} then $!{tableInfo.obj.name}.$!column.obj.name </if> </foreach> </trim>#end </trim> where $!pk.obj.name in( <foreach collection='recordList' index='index' item='item' separator=','> #{item.$!pk.name} </foreach> ) </update> <!-- 根據主鍵批量刪除 --> <delete parameterType='java.lang.String'> delete from $!{tableInfo.obj.parent.name}.$!{tableInfo.obj.name} where $!pk.obj.name in ( <foreach collection='ids' index='index' item='item' separator=','> #{item} </foreach> ) </delete> </mapper>

oracle-mapper.xml

##引入mybatis支持$!mybatisSupport##設置保存名稱與保存位置$!callback.setFileName($tool.append($!{tableInfo.name}, 'Mapper.xml'))$!callback.setSavePath($tool.append($tableInfo.savePath, '/src/main/resources/mapper'))##拿到主鍵#if(!$tableInfo.pkColumn.isEmpty()) #set($pk = $tableInfo.pkColumn.get(0))#end<?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='$!{tableInfo.savePackageName}.mapper.$!{tableInfo.name}Mapper'> <resultMap type='$!{tableInfo.savePackageName}.entity.$!{tableInfo.name}' id='$!{tableInfo.name}Map'>#foreach($column in $tableInfo.fullColumn) <result property='$!column.name' column='$!column.name' jdbcType='$!column.ext.jdbcType'/>#end </resultMap><!-- 偽列 --><sql id='columns'>#foreach($column in $tableInfo.fullColumn) a.$!column.obj.name AS $!column.name #if($velocityCount != $tableInfo.fullColumn.size()),#end#end </sql> <!-- 查詢條件 --><sql id='whereSql'> <where>#foreach($column in $tableInfo.fullColumn) <if test='$!column.name != null#if($column.type.equals('java.lang.String')) and $!column.name != ’’#end'> and a.$!column.obj.name = #{$!column.name} </if>#end </where> </sql> <!-- 通過ID查詢單條數據 --> <select resultType='$!{tableInfo.savePackageName}.entity.$!{tableInfo.name}'> select <include refid='columns'/> from $!{tableInfo.obj.parent.name}.$!tableInfo.obj.name a where a.$!pk.obj.name = #{$!pk.name} </select> <!-- 通過實體作為篩選條件查詢 --> <select resultType='$!{tableInfo.savePackageName}.entity.$!{tableInfo.name}'> select <include refid='columns'/> from $!{tableInfo.obj.parent.name}.$!tableInfo.obj.name a <include refid='whereSql' /> </select> <!-- 通過實體作為篩選條件查詢條數 --> <select resultType='java.lang.Integer'> select count(1) from $!{tableInfo.obj.parent.name}.$!tableInfo.obj.name a <include refid='whereSql' /> </select> <!-- 新增數據 --> <insert keyProperty='$!pk.name' useGeneratedKeys='true'> insert into $!{tableInfo.obj.parent.name}.$!{tableInfo.obj.name}(#foreach($column in $tableInfo.fullColumn)$!column.obj.name#if($velocityHasNext), #end#end) values (#foreach($column in $tableInfo.fullColumn)#{$!{column.name}}#if($velocityHasNext), #end#end) </insert> <!-- 新增選擇列 --> <insert keyProperty='$!pk.name' useGeneratedKeys='true'> insert into $!{tableInfo.obj.parent.name}.$!{tableInfo.obj.name} <trim prefix='(' suffix=')' suffixOverrides=',' >#foreach($column in $tableInfo.fullColumn) <if test='$!column.name != null#if($column.type.equals('java.lang.String')) and $!column.name != ’’#end'> $!column.obj.name, </if>#end </trim> <trim prefix='values (' suffix=')' suffixOverrides=',' >#foreach($column in $tableInfo.fullColumn) <if test='$!column.name != null#if($column.type.equals('java.lang.String')) and $!column.name != ’’#end'> #{$!column.name,jdbcType=$!column.ext.jdbcType}, </if>#end </trim> </insert> <!-- 修改數據 --> <update id='update'> update $!{tableInfo.obj.parent.name}.$!{tableInfo.obj.name} <set>#foreach($column in $tableInfo.otherColumn) <if test='$!column.name != null#if($column.type.equals('java.lang.String')) and $!column.name != ’’#end'> $!column.obj.name = #{$!column.name}, </if>#end </set> where $!pk.obj.name = #{$!pk.name} </update> <!-- 通過主鍵刪除數據 --> <delete id='deleteById'> delete from $!{tableInfo.obj.parent.name}.$!{tableInfo.obj.name} where $!pk.obj.name = #{$!pk.name} </delete> <!-- 批量新增 --> <insert parameterType='java.util.List'> insert into $!{tableInfo.obj.parent.name}.$!{tableInfo.obj.name} ( #foreach($column in $tableInfo.fullColumn)$!column.obj.name#if($velocityHasNext), #end#end ) ( <foreach collection='recordList' index='index' item='item' separator=','> ( select #foreach($column in $tableInfo.fullColumn)#{item.$!{column.name}}#if($velocityHasNext), #end#end from dual ) </foreach> ) </insert> <!-- 批量修改 --> <update parameterType='java.util.List'> begin <foreach collection='recordList' index='index' item='item' separator=';'> update $!{tableInfo.obj.parent.name}.$!{tableInfo.obj.name} <set>#foreach($column in $tableInfo.otherColumn) $!column.obj.name = #{item.$!column.name}#end </set> where ID = #{item.$!pk.obj.name} </foreach> ;end; </update> <!-- 根據主鍵批量刪除 --> <delete parameterType='java.lang.String'> delete from $!{tableInfo.obj.parent.name}.$!{tableInfo.obj.name} where $!pk.obj.name in ( <foreach collection='ids' index='index' item='item' separator=','> #{item} </foreach> ) </delete> </mapper>

Global Config

init

##初始化區域##去掉表的t_前綴#if($tableInfo.obj.name.startsWith('t_')) $!tableInfo.setName($tool.getClassName($tableInfo.obj.name.substring(2)))#end##參考阿里巴巴開發手冊,POJO 類中布爾類型的變量,都不要加 is 前綴,否則部分框架解析會引起序列化錯誤#foreach($column in $tableInfo.fullColumn) #if($column.name.startsWith('is') && $column.type.equals('java.lang.Boolean')) $!column.setName($tool.firstLowerCase($column.name.substring(2))) #end#end##實現動態排除列#set($temp = $tool.newHashSet('testCreateTime', 'otherColumn'))#foreach($item in $temp) #set($newList = $tool.newArrayList()) #foreach($column in $tableInfo.fullColumn) #if($column.name!=$item) ##帶有反回值的方法調用時使用$tool.call來消除返回值 $tool.call($newList.add($column)) #end #end##重新保存 $tableInfo.setFullColumn($newList)#end##對importList進行篡改#set($temp = $tool.newHashSet())#foreach($column in $tableInfo.fullColumn) #if(!$column.type.startsWith('java.lang.')) ##帶有反回值的方法調用時使用$tool.call來消除返回值 $tool.call($temp.add($column.type)) #end#end##覆蓋#set($importList = $temp)

define

##(Velocity宏定義)##定義設置表名后綴的宏定義,調用方式:#setTableSuffix('Test')#macro(setTableSuffix $suffix) #set($tableName = $!tool.append($tableInfo.name, $suffix))#end##定義設置包名后綴的宏定義,調用方式:#setPackageSuffix('Test')#macro(setPackageSuffix $suffix) #if($suffix!='')package #end#if($tableInfo.savePackageName!='')$!{tableInfo.savePackageName}.#{end}$!suffix;#end##定義直接保存路徑與文件名簡化的宏定義,調用方式:#save('/entity', '.java')#macro(save $path $fileName) $!callback.setSavePath($tool.append($tableInfo.savePath, $path)) $!callback.setFileName($tool.append($tableInfo.name, $fileName))#end##定義表注釋的宏定義,調用方式:#tableComment('注釋信息')#macro(tableComment $desc)#set($time=$!time.currTime())#set($time=$time.substring(0,11))#set($time=$time.replace('-','/'))/** * <p> * $!{tableInfo.comment}($!{tableInfo.name})$desc * </p> * * @author:$!author * @date:$!time */#end##定義GET,SET方法的宏定義,調用方式:#getSetMethod($column)#macro(getSetMethod $column) public $!{tool.getClsNameByFullName($column.type)} get$!{tool.firstUpperCase($column.name)}() { return $!{column.name}; } public void set$!{tool.firstUpperCase($column.name)}($!{tool.getClsNameByFullName($column.type)} $!{column.name}) { #if(${column.type.equals('java.lang.String')})this.$!{column.name} = $!{column.name}== null ? null : $!{column.name}.trim(); #else this.$!{column.name} = $!{column.name};#end} #end

mybatisSupport

##針對Mybatis 進行支持,主要用于生成xml文件#foreach($column in $tableInfo.fullColumn) ##儲存列類型 $tool.call($column.ext.put('sqlType', $tool.getField($column.obj.dataType, 'typeName'))) #if($tool.newHashSet('java.lang.String').contains($column.type)) #set($jdbcType='VARCHAR') #elseif($tool.newHashSet('java.lang.Boolean', 'boolean').contains($column.type)) #set($jdbcType='BOOLEAN') #elseif($tool.newHashSet('java.lang.Byte', 'byte').contains($column.type)) #set($jdbcType='BYTE') #elseif($tool.newHashSet('java.lang.Integer', 'int', 'java.lang.Short', 'short').contains($column.type)) #set($jdbcType='INTEGER') #elseif($tool.newHashSet('java.lang.Long', 'long').contains($column.type)) #set($jdbcType='INTEGER') #elseif($tool.newHashSet('java.lang.Float', 'float', 'java.lang.Double', 'double').contains($column.type)) #set($jdbcType='NUMERIC') #elseif($tool.newHashSet('java.util.Date', 'java.sql.Timestamp', 'java.time.Instant', 'java.time.LocalDateTime', 'java.time.OffsetDateTime', 'java.time.ZonedDateTime').contains($column.type)) #set($jdbcType='TIMESTAMP') #elseif($tool.newHashSet('java.sql.Date', 'java.time.LocalDate').contains($column.type)) #set($jdbcType='TIMESTAMP') #else ##其他類型 #set($jdbcType='OTHER') #end $tool.call($column.ext.put('jdbcType', $jdbcType))#end##定義宏,查詢所有列#macro(allSqlColumn)#foreach($column in $tableInfo.fullColumn)$column.obj.name#if($velocityHasNext), #end#end#end

到此這篇關于IDEA插件EasyCode MyBatis最優配置步驟詳解的文章就介紹到這了,更多相關idea 插件EasyCode 內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: IDEA
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
伊人夜夜躁av伊人久久| 亚洲一区在线视频观看| 久久精品视频网| 日韩综合小视频| 欧美日韩一区二区三区四区在线观看 | 久久久九九九九| 日本成人中文字幕| 欧美va亚洲va日韩∨a综合色| 欧美性极品少妇| 国产日韩欧美综合在线| 一个色妞综合视频在线观看| 北条麻妃一区二区三区| 欧美视频一区在线观看| 亚洲一区二区三区精品在线| 色综合色综合色综合| 在线综合视频播放| 亚洲第一激情av| 亚洲网址在线| 久久人人97超碰com| 精品在线观看视频| 久久久久久久久久码影片| 国产日韩欧美精品在线| 麻豆视频一区二区| 国产精品免费一区二区三区在线观看 | 国产一区在线观看视频| 香蕉精品999视频一区二区| 精品女同一区二区| 国产主播一区二区三区| 噜噜噜久久亚洲精品国产品小说| 国产精品灌醉下药二区| 91在线观看视频| 在线成人av网站| 另类小说视频一区二区| 久久久久久夜| 一区二区三区欧美日韩| 精品二区久久| 成人免费在线播放视频| 欧美激情一区| 久久综合色之久久综合| 国产精品小仙女| 欧美日韩国产综合草草| 日本午夜一区二区| 免费日韩精品中文字幕视频在线| 17c精品麻豆一区二区免费| 牛夜精品久久久久久久99黑人| 日韩精品一区二区三区四区视频| 国产在线精品免费| 欧美日韩在线三级| 免费人成网站在线观看欧美高清| 一本一本久久a久久精品综合妖精| 欧美一区二区免费| 麻豆国产一区二区| 欧美在线看片a免费观看| 日韩精品1区2区3区| 久久aⅴ国产紧身牛仔裤| 亚洲国产aⅴ成人精品无吗| 亚洲伦伦在线| 亚洲另类在线制服丝袜| 国产精品久久久亚洲一区| 亚洲综合成人在线视频| 久久www成人_看片免费不卡| 亚洲国产你懂的| 色婷婷一区二区三区四区| 视频在线观看国产精品| 一本久道久久综合中文字幕| 日韩在线卡一卡二| 久久精品欧美| 偷拍日韩校园综合在线| 午夜亚洲一区| 五月激情综合色| 久久综合九色99| 美女在线观看视频一区二区| 精品视频123区在线观看| 国产精品91xxx| 久久综合999| 国产精品av久久久久久麻豆网| 亚洲视频在线一区二区| 国产欧美午夜| 日韩二区在线观看| 欧美日韩国产区一| 国产激情偷乱视频一区二区三区| 日韩亚洲欧美在线| 99国产精品久久久久久久久久久| 久久免费午夜影院| 欧美日韩影院| 亚洲乱码中文字幕综合| 亚洲专区免费| 日本女人一区二区三区| 欧美人动与zoxxxx乱| 成人午夜电影小说| 亚洲精品美国一| 久久久国产精品一区二区三区| 美国av一区二区| 欧美电影免费观看高清完整版| 欧美阿v一级看视频| 一区二区三区产品免费精品久久75| 久久久久一区二区| 国产一区二区不卡在线| 国产欧美视频在线观看| 国产精品久久三区| 国产成人在线观看免费网站| 精品日韩99亚洲| 91浏览器入口在线观看| 亚洲视频免费在线| 国产亚洲一级| 日精品一区二区| 欧美日韩一区二区欧美激情| 成人黄页毛片网站| 中文字幕亚洲一区二区va在线| 香蕉视频成人在线观看| 国产一区二区不卡在线| 国产女主播视频一区二区| 制服诱惑一区二区| 激情图片小说一区| 国产精品久久毛片av大全日韩| 亚洲综合社区| 国产精品88av| 中文字幕一区二区三区av| 91国偷自产一区二区开放时间 | 亚洲老妇xxxxxx| 欧美日韩在线免费视频| 欧美精品三区| 首页国产欧美日韩丝袜| 日韩午夜激情电影| 在线观看亚洲| 久久99精品久久久久久动态图| 欧美精品一区二区三区一线天视频| 亚洲国产婷婷香蕉久久久久久99| 美女一区二区三区| 国产亚洲视频系列| 色婷婷久久久综合中文字幕| 成人深夜在线观看| 亚洲一区二区av在线| 欧美成人伊人久久综合网| 欧美日韩日日夜夜| 亚洲国产一区二区在线| 久久99热99| 亚洲人亚洲人成电影网站色| 欧美在线不卡视频| 国产精品激情电影| 久久精品国产一区二区三| 欧美精彩视频一区二区三区| 亚洲精品中文在线影院| 欧美一区二区三区免费| 亚洲区一区二| 国产成人高清视频| 亚洲黄色录像片| 欧美成人伊人久久综合网| 国产精品日本一区二区| 国产成人综合网| 一区二区三区加勒比av| 日韩精品一区二区三区在线观看| 亚洲精品一区二| 国产一区二区女| 午夜不卡av免费| 国产精品乱子久久久久| 国产亚洲精品aa| 精品国产一区二区三区av性色| 91精品国产综合久久久蜜臀图片 | 日韩视频不卡| 18成人免费观看视频| 欧美日本二区| 午夜精品免费| 欧美日韩成人| 欧美性久久久| 亚洲承认在线| 伊人久久大香线蕉综合热线| 狠狠色噜噜狠狠狠狠色吗综合| 欧美精品不卡| 欧美日韩国产综合在线| 午夜精品偷拍| 韩国在线视频一区| 亚洲欧洲综合| 亚洲欧美日韩综合一区| 麻豆av一区二区三区| 色哟哟国产精品| 久久一区二区三区超碰国产精品| 免费视频一区二区三区在线观看| 老司机一区二区三区| 91国产免费看| 欧美精品777| 欧美大片顶级少妇| 国产午夜久久久久| 国产精品短视频| 日韩毛片一二三区| 亚洲国产成人tv| 男男gaygay亚洲| 久久99这里只有精品| 国产成人av一区二区三区在线观看| 东方aⅴ免费观看久久av| 91麻豆精品国产91久久久资源速度| 欧美电视剧免费观看| 久久久午夜精品| 最新不卡av在线| 亚洲一本大道在线| 日本系列欧美系列| 国内偷窥港台综合视频在线播放| 国产福利一区二区三区视频| 91小宝寻花一区二区三区| 精品电影一区|