Spring&MyBatis框架,有图形用户界面,基于窗口(项目)级别,提供参数记忆、路径选择界面、自动匹配路径和包,简化了操作流程,方便随时打开使用,符合大部分公司开发规范,controller、service、model、dao生成项目可选
点此下载MyBatisCodePlugin最新插件 不要解压直接安装
File -- Settings -- Plugins -- install plugin from disk -- 选中下载的MyBatisCodePluginLatest.zip文件点ok -- ok -- Restart
填入基本信息并选择Database(有全局参数记忆功能,填一次后面使用就不用填了)
填入要生成的TableName,自动匹配模块名(项目级别参数记忆)
选择项目所在文件夹(ProjectPath)精确到com文件夹就行了,自动匹配项目已有的controller、service、model、mapper(dao)目录,也可手选或填写 (项目级别参数记忆)
选择好要生成的内容,点击"Go"按钮生成,若失败则弹消息提示框提示失败信息
选中"全部生成到ProjectPath",则生成的文件全部保存在ProjectPath路径文件夹(需要选择或填写更加精确的ProjectPath路径)
生成的文件会被强制放到相应文件夹中,有重名则会被替换,生成后Synchronize项目
- 提示文件生成成功但idea不显示文件
问题解释:idea不会实时刷新用户文件,需要用户手动刷新
解决方法:选中项目--鼠标右键--Synchronize所选项目或文件夹即可
- 填了ProjectPath无法匹配到正确的其它模块路径
问题解释:说明ProjectPath没选对或者ProjectPath目录下所有文件夹中不包含controller、service、model、dao文件夹
解决方法:重新选择正确的ProjectPath,controller、service、model、dao也可以手动填写或者选择,若填写的文件本身不存在也会自动生成
package com.maidao.center.product.web.seller;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import java.util.Date;
/**
* 商家开票信息表
* 表: seller_invoice_info
* @author yn
* @date 2018/08/23 05:10:13
*/
@Getter
@Setter
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ApiModel("商家开票信息表")
public class SellerInvoiceInfo {
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "商家id")
private Integer sellerId;
@ApiModelProperty(value = "商家名称")
private String sellerName;
@ApiModelProperty(value = "开票单位名称")
private String companyName;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "更新时间")
private Date updateTime;
}
package com.maidao.center.product.web.seller;
import com.maidao.center.product.web.seller.SellerInvoiceInfo;
import java.util.List;
/**
* 商家开票信息表
* 表: seller_invoice_info
* @author yn
* @date 2018/08/23 05:10:14
*/
public interface SellerInvoiceInfoMapper {
/**
* 全字段新增
* @param sellerInvoiceInfo
* @return 新增条数
*/
int insert(SellerInvoiceInfo sellerInvoiceInfo);
/**
* 根据主键动态修改
* @param sellerInvoiceInfo
* @return 修改条数
*/
int update(SellerInvoiceInfo sellerInvoiceInfo);
/**
* 根据主键查询
* @param id
* @return SellerInvoiceInfo
*/
SellerInvoiceInfo queryByID(Integer id);
/**
* 查询列表
* @return SellerInvoiceInfo
*/
List<SellerInvoiceInfo> queryList();
}
<?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="com.maidao.center.product.web.seller.SellerInvoiceInfoMapper">
<insert id="insert" parameterType="com.maidao.center.product.web.seller.SellerInvoiceInfo" keyProperty="id" useGeneratedKeys="true">
INSERT INTO seller_invoice_info
(seller_id,seller_name,company_name,tax_number,
address,tel,bank,bank_number,receive_tel,
verify_user_name,create_time,update_time)
VALUES (
#{sellerId,jdbcType=INTEGER},
#{sellerName,jdbcType=VARCHAR},
#{companyName,jdbcType=VARCHAR},
#{createTime,jdbcType=TIMESTAMP},
#{updateTime,jdbcType=TIMESTAMP}
)
</insert>
<update id="update" parameterType="com.maidao.center.product.web.seller.SellerInvoiceInfo">
UPDATE seller_invoice_info
<set>
<if test="sellerId != null">
seller_id = #{sellerId,jdbcType=INTEGER},
</if>
<if test="sellerName != null">
seller_name = #{sellerName,jdbcType=VARCHAR},
</if>
<if test="updateTime != null">
update_time = #{updateTime,jdbcType=TIMESTAMP},
</if>
</set>
WHERE id = #{id,jdbcType=INTEGER}
</update>
<select id="queryByID" parameterType="Integer" resultType="com.maidao.center.product.web.seller.SellerInvoiceInfo">
SELECT id AS id,
seller_id AS sellerId,
seller_name AS sellerName,
company_name AS companyName,
tax_number AS taxNumber,
address AS address,
verify_user_name AS verifyUserName,
create_time AS createTime,
update_time AS updateTime
FROM seller_invoice_info
WHERE id = #{id,jdbcType=INTEGER}
</select>
<select id="queryList" resultType="com.maidao.center.product.web.seller.SellerInvoiceInfo">
SELECT id AS id,
seller_id AS sellerId,
seller_name AS sellerName,
company_name AS companyName,
tax_number AS taxNumber,
address AS address,
tel AS tel,
verify_user_name AS verifyUserName,
FROM seller_invoice_info
</select>
</mapper>
package com.maidao.center.product.web.seller;
import com.maidao.center.product.web.seller.SellerInvoiceInfo;
import com.maidao.center.product.web.seller.SellerInvoiceInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import io.swagger.annotations.ApiOperation;
import com.maidao.commons.model.base.dto.Resp;
import java.util.List;
/**
* SellerInvoiceInfoController
*
* @author : yn
* @date: 2018/08/23 05:10:14
**/
@RestController
@RequestMapping("seller/invoice/info")
public class SellerInvoiceInfoController {
@Autowired
private SellerInvoiceInfoService sellerInvoiceInfoService;
@PostMapping
@ApiOperation("新增")
public Resp<String> insert(@ModelAttribute SellerInvoiceInfo sellerInvoiceInfo) {
return sellerInvoiceInfoService.insert(sellerInvoiceInfo);
}
@PutMapping
@ApiOperation("修改")
public Resp<String> update(@ModelAttribute SellerInvoiceInfo sellerInvoiceInfo) {
return sellerInvoiceInfoService.update(sellerInvoiceInfo);
}
@GetMapping("{id}")
@ApiOperation("查询详情")
public Resp<SellerInvoiceInfo> detail(@PathVariable("id") Integer id) {
return sellerInvoiceInfoService.detail(id);
}
@GetMapping
@ApiOperation("查询列表")
public Resp<List<SellerInvoiceInfo>> list() {
return sellerInvoiceInfoService.list();
}
}
package com.maidao.center.product.web.seller;
import com.maidao.center.product.web.seller.SellerInvoiceInfo;
import com.maidao.commons.model.base.dto.Resp;
import java.util.List;
/**
* SellerInvoiceInfoService
*
* @author : yn
* @date: 2018/08/23 05:10:14
**/
public interface SellerInvoiceInfoService {
/**
* 新增
* @param sellerInvoiceInfo
* @return String
*/
Resp<String> insert(SellerInvoiceInfo sellerInvoiceInfo);
/**
* 修改
* @param sellerInvoiceInfo
* @return String
*/
Resp<String> update(SellerInvoiceInfo sellerInvoiceInfo);
/**
* 查询
* @param id
* @return SellerInvoiceInfo
*/
Resp<SellerInvoiceInfo> detail(Integer id);
/**
* 查询列表
* @return SellerInvoiceInfo
*/
Resp<List<SellerInvoiceInfo>> list();
}
package com.maidao.center.product.web.seller.impl;
import com.maidao.center.product.web.seller.SellerInvoiceInfoMapper;
import com.maidao.center.product.web.seller.SellerInvoiceInfo;
import com.maidao.center.product.web.seller.SellerInvoiceInfoService;
import org.springframework.stereotype.Service;
import org.springframework.beans.factory.annotation.Autowired;
import com.maidao.commons.model.base.dto.Resp;
import java.util.List;
/**
* SellerInvoiceInfoServiceImpl
*
* @author : yn
* @date: 2018/08/23 05:10:14
**/
@Service
public class SellerInvoiceInfoServiceImpl implements SellerInvoiceInfoService {
@Autowired
private SellerInvoiceInfoMapper sellerInvoiceInfoMapper;
@Override
public Resp<String> insert(SellerInvoiceInfo sellerInvoiceInfo) {
sellerInvoiceInfoMapper.insert(sellerInvoiceInfo);
return Resp.success("新增成功");
}
@Override
public Resp<String> update(SellerInvoiceInfo sellerInvoiceInfo) {
sellerInvoiceInfoMapper.update(sellerInvoiceInfo);
return Resp.success("修改成功");
}
@Override
public Resp<SellerInvoiceInfo> detail(Integer id) {
return Resp.success(sellerInvoiceInfoMapper.queryByID(id));
}
@Override
public Resp<List<SellerInvoiceInfo>> list() {
return Resp.success(sellerInvoiceInfoMapper.queryList());
}
}
https://github.com/BigBigNing/MyBatisCodePlugin
有bug或建议及时反馈