久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

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

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

瀏覽:144日期: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热精品在线| 欧美日韩一区二区视频在线观看 | 精品久久久久久久久久久久包黑料 | 亚洲一区二区在线电影 | 特级黄一级播放 | 污污视频网站 | 在线中文字幕日韩 | 天堂免费在线观看视频 | 国产午夜精品一区二区三区视频 | 在线观看免费视频91 | 成人性大片免费观看网站 | 日韩精品视频在线观看一区二区 | 国产一级片一区二区三区 | 欧美视频在线一区 | 81精品国产乱码久久久久久 | 国产亚洲一区二区精品 | 日韩精品一区二 | 精品中文一区 | 日本三级电影免费 | 国产永久免费 | 国产亚洲精品久久久456 | 久在线视频 | 中文字幕av一区二区 | 一级毛片色一级 | 91在线观 | 国产玖玖| 免费成人激情视频 | 精品九九九 | 亚洲国产高清视频 | 国产精品爱久久久久久久 | 午夜成人免费视频 | 欧美日韩三区 | 国产欧美一区二区三区在线看 | 欧美精品成人一区二区三区四区 | 一区二区视频 | 在线无码| 亚洲国产精品成人 | 天天影视网色香欲综合网无拦截 | 免费观看一级视频 | 99精品欧美一区二区蜜桃免费 | 一级片手机免费看 | 影音先锋中文字幕在线 | 国产亚洲欧美在线 | 国产乱码一区二区三区 | 99国产精品99久久久久久 | 欧美日韩国产精品一区 | 黄色小视频在线观看 | 国产高清精 | 欧洲精品在线观看 | ririsao久久精品一区 | 成人av影视在线观看 | 国产精品欧美一区二区三区 | 国产欧美精品一区二区三区 | 欧美日韩一级电影 | 国产视频一区二区 | 午夜私人影院在线观看 | 国产高清毛片 | 一区二区三区国产亚洲网站 | 亚洲一区二区三区在线视频 | 国产在线综合网 | 日韩精品视频在线播放 | 成人作爱视频 | 九色91视频 | 国产一区二区三区四区在线观看 | 一级片在线观看 | 国产ts人妖另类 | 欧美精品在线观看免费 | 在线播放一级片 | 中文字幕视频在线 | 黄片毛片在线观看 | 成人精品视频 | 桃花久久| 国产又粗又长又硬又猛电影 | 中文字幕在线观看1 | 欧洲亚洲精品久久久久 | 精品久久久久久久久久久院品网 | 美女又黄又免费 | 亚洲精品乱码久久久久久久 | 一级黄色毛片免费 | 美日韩精品视频 | 蜜臀av在线播放一区二区三区 | 美女超碰在线 | 在线第一页 | 麻豆精品国产传媒 | 不卡二区 | 日本在线观看一区 | 久久久久久久久一区 | 成人午夜免费视频 | 精品美女在线观看视频在线观看 | 久久国产一区二区 | 精品国产乱码久久久久久久软件 | 国内精品久久久久 | 久久国产精品视频 | 国产精品第一国产精品 | 91精品久久久久久久久久入口 | 国产成人精品一区二区三区视频 | 亚洲精品视频免费观看 | 免费观看毛片 | 国产精品a久久久久 | 中文字幕亚洲视频 | 欧美伦理一区二区三区 | 久久久在线 | 国产欧美一区二区精品忘忧草 | 国产精品久久久久久久久免费 | 久久国| 国产性色av| 亚洲午夜精品视频 | 91视频免费观看 | 天天操夜夜操免费视频 | 精精国产 | 蜜臀精品久久久久久蜜臀 | 一区二区不卡视频在线观看 | 国产成人在线看 | 日韩成人精品在线观看 | 国产馆一区二区 | 伊人激情av一区二区三区 | 两性午夜视频 | www国产xxx| 国产一区在线视频 | 国产色| 国产精品一区二区三区在线免费观看 | 丁香婷婷综合激情五月色 | 久久久性色精品国产免费观看 | 日韩不卡在线 | a在线观看免费视频 | 欧美一级网 | 精品国产一区二区三区久久 | 99精品欧美一区二区三区 | 久久国产一区二区三区 | 精品国产区 | 国产日韩欧美视频 | 国产精品无码永久免费888 | 永久91嫩草亚洲精品人人 | 欧美激情在线精品一区二区三区 | 国内精品亚洲 | 91在线视频免费观看 | 视频一区二区中文字幕 | 亚洲成人观看 | 日本精品一区二区三区在线观看 | 综合久久综合久久 | 国产在线1 | 一区二区三区免费在线观看 | 亚洲免费观看 | 亚洲欧美日本在线 | 国产精品久久久久永久免费观看 | 欧美一级在线观看 | 日韩免费高清视频 | 日韩啊啊啊 | 成人精品一区二区三区电影黑人 | 亚洲啊v | 五月激情婷婷六月 | 午夜无码国产理论在线 | 亚洲国产精品视频 | 欧美久久精品一级c片 | 中文字幕在线电影观看 | 日韩视频在线观看视频 | 超碰av在线| 一区二区三区 在线 | h片在线看 | 国产精品69毛片高清亚洲 | 电影91久久久 | 欧美精品一区在线观看 | 日韩欧美二区 | 国产精品欧美日韩 | 黄片毛片一级 | 日韩成年人视频 | 秋霞电影院午夜伦 | 国产一级特黄aaa大片 | 日韩免费一区 | 男女视频在线观看 | 亚洲a在线播放 | 亚洲视频中文字幕 | 国产日韩视频在线播放 | 久久69| 成年人在线观看 | 亚洲精品中文字幕在线观看 | 麻豆自拍偷拍 | 2019国产精品 | 国产精品免费一区二区三区四区 | 麻豆av在线播放 | 91精品国产91久久久久久吃药 | 高清一区二区三区 | 嫩草成人影院 | 人人看人人射 | 欧美最猛性xxxxx亚洲精品 | 一级黄色毛片免费观看 | 欧美日韩国产精品 | 天天干一干| 在线观看91| 九九视频这里只有精品 | 国产一区二区三区免费观看 | 精品国产一区二区三区在线观看 | 在线中文字幕观看 | 一本一道久久a久久精品逆3p | 亚洲伦理影院 | 久久国产精品一区二区 | 欧美午夜精品久久久久久浪潮 | 日韩免费| 91精品一区二区三区久久久久 | 高清中文字幕 | baoyu123成人免费看视频 | 精品视频一区二区三区 | 中文字幕在线免费视频 | 国产一二三区在线观看 | 一区二区三区在线观看视频 | 久草免费在线视频 | 视频一区二区三区在线观看 | 久久99精品一区二区三区三区 | 99精品视频网 | 亚洲国产精品99久久久久久久久 | 久久国产精品精品国产 | 日韩在线观看中文字幕 | 欧美日韩a | 亚洲欧美日韩在线一区 | 亚洲精品网址 | 北条麻妃99精品青青久久 | 伊人成人222| 欧美日韩三级 | 亚洲激情av | 国产色视频在线观看免费 | 国产高清免费 | 精品久久久久久久久久久 | 久久爱9191| 日本黄色大片 | 欧美精品成人一区二区在线 | 精品亚洲网 | 久久一区二区视频 | 50人群体交乱视频 | 国产二区在线播放 | 青草视频网站 | 国产成人精品久久 | 亚洲人免费 | 日本三级一区二区 | 亚洲蜜臀av乱码久久精品蜜桃 | 久热av中文字幕 | 成人国产精品一级毛片视频 | 国产一区二区三区视频在线观看 | 国产日韩欧美视频 | 国产精品伦理 | 黄久久久 | 国产片久久 | 国产精品久久久久久久久久久免费看 | 亚洲日韩aⅴ在线视频 | 在线一区观看 | 欧美,日韩,国产精品免费观看 | 精品永久 | 国产99一区二区 | 中文字幕高清一区 | 国产毛片精品 | 国内精品国产成人国产三级粉色 | 91色乱码一区二区三区 | 欧美日韩三区 | 高清国产一区二区三区四区五区 | 97影院在线午夜 | 日韩在线不卡 | 国产成人综合视频 | 亚洲精品在线免费观看视频 | 亚洲一区国产视频 | 奇米av在线 | 9久久精品 | 日日做夜夜爽毛片麻豆 | 国产精品久久久久aaaa九色 | 久久国产美女 | 国产日韩一级片 | 久久人人爽人人爽人人片av高清 | 日韩成人免费中文字幕 | 亚洲欧美中文字幕 | 国产91一区 | 人人爱夜夜爽日日视频 | 久久97视频 | 九草av | 久久精品一区二区 | 成人午夜精品一区二区三区 | 午夜影院a | 久久久久久久久99精品 | 精品免费国产视频 | 波多野结衣一区二 | h成人在线| 色综合久久久久久久久久久 | 在线视频日韩 | 欧美成人影院在线 | 久久国产精品免费一区二区三区 | 日韩av入口 | 凹凸日日摸日日碰夜夜爽孕妇 | 成人av免费在线观看 | 欧美日一区二区 | 亚洲a在线观看 | 美女视频久久 | 国产欧美日韩在线观看 | 日本欧美一区二区 | 国产一级视频免费观看 | 久久视频在线看 | 国产在线网 | 亚洲成av人乱码色午夜 | 毛片av在线| 免费国产一区二区 | 亚洲一区在线日韩在线深爱 | 成人免费激情视频 | 资源av| 国产精品久久久久久久久久久久久久 | 日韩一二三区 | 久久91| 久久久xx| 先锋影音在线观看 | 精品国产乱码久久久久久久软件 | 久久成人18免费网站 | 欧美一级欧美三级在线观看 | 97精品视频 | 日韩精品一区二区三区四区五区 | 久久久久久一区 | 爱爱视频网站 | 狠狠干美女 | 久久久精品一区二区 | 播放一区 | 伊人精品影院 | www.一区二区三区 | 亚洲欧美一区二区三区在线 | 一级毛片免费观看 | 精品亚洲自拍 | 亚洲视频一区在线 | www麻豆 | 97色婷婷成人综合在线观看 | 精品国产一区二区三区久久影院 | 国产精品.xx视频.xxtv | 黄色成人在线 | 国产精品久久精品 | 欧美精品久久久久久久久久丰满 | 国产精品亚洲一区二区三区 | 国产乱码精品1区2区3区 | 日韩久草 | 国产视频中文字幕 | 欧美激情在线播放 | 欧美日韩在线一区二区三区 | aⅴ色国产 欧美 | 欧美自拍视频一区 | 国产精品网站在线看 | 超碰免费在线观看 | 中文字幕视频免费观看 | 久久99视频这里只有精品 | www.黄色片视频 | 日日摸日日爽 | a久久 | 精品日韩欧美一区二区三区 | 欧美在线高清 | 亚洲福利一区二区 | 欧美精品福利 | 久久久精品亚洲 | 天天亚洲综合 | www.欧美| 精品人伦一区二区三区蜜桃视频 | 在线视频亚洲 | 亚洲精品午夜国产va久久成人 | 亚洲不卡视频 | 91佛爷在线观看 | 日韩欧美国产一区二区 | 狠狠久久伊人中文字幕 | 亚洲高清视频在线观看 | jizz中国日本 | 欧美成人影院在线 | 国产精品久久久久久久久久东京 | 精品视频一区二区在线观看 | 欧美一级播放 | 午夜性电影| 精品三级在线观看 | 成人欧美一区二区三区视频xxx | 在线视频a | 爱爱网av | 91精品国产欧美一区二区成人 | 色综合欧美 | 亚洲欧洲精品一区二区三区 | 亚洲中午字幕 | 国产成人精品一区二区在线 | 久久精品亚洲 | 中文字幕视频二区 | 国产精品无码永久免费888 | 欧美一区永久视频免费观看 | 精久久| 黄色a视频 | 一区二区免费视频 | 欧美成人h版在线观看 | 五月网婷婷 | 特黄特黄视频 | 91亚洲国产成人久久精品网站 | 国产欧美综合一区二区三区 | 国产999精品久久久久久麻豆 | 日韩视频中文字幕 | 国产精品久久久久久久久免费桃花 | 精品视频二区 | 成年人网站免费在线观看 | 91精品久久久久久久久久入口 | 天天插天天操天天干 | 91.xxx.高清在线 | 少妇久久久 | 一级色视频 | 在线观看日韩 | 日本在线观看视频一区 | 综合久久亚洲 | 日韩中文字幕在线观看 | 夜夜操天天干 | 久久这里只有精品首页 | 黄色国产 | 天天澡天天狠天天天做 | 91激情视频 | 国产精品久久久久久久久久久久久久 | 国产免费av网站 | 杨门女将寡妇一级裸片看 | 国产精品视频一区二区三区 | 自拍偷拍第一页 | 欧美激情国产日韩精品一区18 | 成人av一区二区三区 | 国产精品亚洲一区二区三区 | 色综久久 | 精品无码三级在线观看视频 | 欧美一级视频 | 色综合久久久久 | 日韩第一区 | 国产在线一级片 | 天天干欧美 | 国产激情精品 | 免费国产在线视频 | 精品国产一区二区三区成人影院 | 亚洲成人精品在线 | 黄色地址| 亚洲天堂中文字幕 | 羞羞视频免费观看 | 女人久久久久久久 | 视频一区二区中文字幕 | 亚洲国产一区二区三区在线观看 | 中文字幕精品一区 | 中文字幕91视频 | 久久综合一区二区 | 中文字幕av高清 | 国产一区久久精品 | 国产在线在线 | 久久久久免费观看 | 中文字幕 国产精品 | 北条麻妃国产九九九精品小说 | 欧美精品一区二区三区在线 | 久久精品国产91精品亚洲高清 | 一级做a| 天堂中文在线视频 | 一级黄视频| 日日骚视频| 日韩精品一区二区三区四区 | 精品人人| 欧美中文字幕 | 91精品国产综合久久久亚洲 | 久久视频免费 | 黄色大片网 | 午夜精品久久久久久久星辰影院 | 精品毛片 | 2019亚洲日韩新视频 | 一区二区三区精品 | 成年视频在线观看福利资源 | 最新日韩av | 午夜精品一区二区三区四区 | 91精品国产自产精品男人的天堂 | 亚洲精品久久久 | 龙珠z中文版普通话 | 日韩在线中文字幕 | 一区二区三区四区日韩 | 无码日韩精品一区二区免费 | 午夜草民福利电影 | 97国产在线视频 | 毛片毛片毛片 | 新疆少妇videos高潮 | 欧洲视频一区二区 | 国产三级日本三级美三级 | 国产激情毛片 | 天天天操 | 精品久久一二三区 | 国产亚洲精品久久久久久久 | 国产综合精品一区二区三区 | 亚洲国产一区二区三区在线观看 | 91人人 | 国产成人久久精品一区二区三区 | 亚洲国产日韩欧美 | 国产成人精品免费 | 国产高清在线视频 | 欧美专区在线 | 亚洲精品免费视频 | 黄色毛片在线观看 | 99re6在线视频精品免费 | 黄a在线| 欧美日韩中文字幕 | 黄色一级视屏 | 日韩中文视频 | 久久久国产一区二区三区 | 日韩精品免费在线观看 | 日本精品免费 | 亚洲欧美激情精品一区二区 | 亚洲精品乱码久久久久久久久 | 亚洲欧美一区二区三区久久 | 国产丝袜视频 | 91中文字幕 | 欧美视频网站 | 中国妞videos高潮 | 久久精品黄| 亚洲色图综合 | 亚洲综合第一页 | 99精品久久 | 欧美日韩亚洲视频 | 欧美成人精品在线 | 97操视频 | 久久99精品久久久 | 91最新 | 久久综合九色综合欧美狠狠 | 国产亚洲一区在线 | 国产精品一区亚洲二区日本三区 | 91精品久久久久久久久久入口 | 亚洲国产精品成人久久久 | 一级一片免费看 | 国产成人在线免费观看视频 | 日韩精品一| 国产精品视频一二 | 精品欧美日韩 | 在线观看免费视频a | 日韩精品在线视频观看 | 成人情趣视频 | gogo熟少妇大胆尺寸 | 荷兰欧美一级毛片 | 国产精品91av| 国产精品成人观看视频国产奇米 | 成人免费在线视频 | 综合色婷婷一区二区亚洲欧美国产 | 国产综合精品 | 午夜免费视频 | 在线不卡a资源高清 | 在线你懂得 | 日韩欧美精品一区 | 成人免费一区二区三区视频网站 | 91一区二区三区久久国产乱 | 中文亚洲欧美 | 国产一二区在线观看 | 国产精品夜夜春夜夜爽久久电影 | 一级a性色生活片毛片 | 日本电影网址 | 国产激情久久久久久 | 亚洲精品免费在线观看 | 久久免费精品 | 一级欧美一级日韩 | 黑人巨大精品欧美一区二区免费 | 免费观看电视在线高清视频 | 在线国产一区二区 | 国产在线视频在线 | 国产一级黄色av | 一区免费看 | 欧美国产视频一区 | 免费的日批视频 | 亚洲视频在线看 | 国产精品视频免费 | 在线精品自拍 | 拍拍无遮挡人做人爱视频免费观看 | 色xx综合网| 欧美成人性生活 | 国产精品久久久久久久久久久久久久 | 久色91 | 成人亚洲一区二区 | 天天射影院 | 日韩欧在线 | www.久草| 自拍偷拍视频网 | 一级成人免费 | 91麻豆精品国产91久久久久久 | 美女一级a毛片免费观看97 | 极品毛片 | 欧美亚洲| 亚洲成人免费电影 | 色婷婷在线视频观看 | 人和拘一级毛片 | 日韩一区二区福利 | 国产一级视频在线观看 | 91原创视频在线观看 | 欧日韩免费视频 | 久草免费福利 | 天堂中文网官网 | 狠狠干网站 | 在线看一级片 | 日本毛片视频 | 亚洲中午字幕 | 成年人免费看 | 亚洲视频在线观看免费 | 欧美一区中文字幕 | 精品国产91乱码一区二区三区 | 亚洲午夜电影 | 国产精品国产成人国产三级 | 天天操天天曰 | 国产高清一级片 | 日本淫片 | 亚洲区一区二 | 国产欧美在线 | 亚洲精品一区久久久久久 | 精品香蕉一区二区三区 | 激情综合五月 | 超碰伊人网 | 成年入口无限观看网站 | 午夜精品一区二区三区在线观看 | 蜜月久久99静品久久久久久 | 国产区福利| 国产日韩一级片 | av网站观看 | 91免费看 | 50人群体交乱视频 | 一区二区日韩精品 | 永久91嫩草亚洲精品人人 | 夜夜草视频 | 免费av在线网站 | av大片在线观看 | 国产日韩一区 | 亚洲欧美电影 | 日韩欧美高清dvd碟片 | 在线观看黄 |