easycode配置成mybatis

网友投稿 673 2022-12-11

easycode配置成mybatis

easycode配置成mybatis

本文主要介绍了easycode配置成mybatis-plus模板的实现方法,分享给大家,具体如下:

entity.java

##导入宏定义

$!define

##保存文件(宏定义)

#save("/entity", ".java")

##包路径(宏定义)

#setPackageSuffix("entity")

##自动导入包(全局变量)

$!autoImport

import com.baomidou.mybatisplus.annotation.IdType;

import com.baomidou.mybatisplus.annotation.TableId;

import io.swagger.annotations.ApiModel;

import io.swagger.annotations.ApiModelProperty;

import lombok.AllArgsConstructor;

import lombok.Builder;

import lombok.Data;

import lombok.NoArgsConstructor;

import java.io.Serializable;

import java.util.Date;

##表注释(宏定义)

#tableComment("表实体类")

@Data

@Builder

@AllArgsConstructor

@NoArgsConstructor

@ApiModel("$!{tableInfo.comment}")

public class $!{tableInfo.name} implements Serializable {

private static final long serialVersionUID = $!tool.serial();

#foreach($column in $tableInfo.fullColumn)

#if(${column.comment})/**

* ${column.comment}

*/#end

#if(${column.comment})@ApiModelProperty(value = "${column.comment}")#end

#if($column.name.equals('id'))@TableId(type = IdType.AUTO)#end

private $!{tool.getClsNameByFullName($column.type)} $!{column.name};

#end

}

dao.java

##导入宏定义

$!define

##设置表后缀(宏定义)

#setTableSuffix("Mapper")

##保存文件(宏定义)

#save("/mapper", "Mapper.java")

##包路径(宏定义)

#setPackageSuffix("mapper")

import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import $!{tableInfo.savePackageName}.entity.$!tableInfo.name;

##表注释(宏定义)

#tableComment("表数据库访问层")

public interface $!{tableName} extends BaseMapper<$!tableInfo.name> {

}

server.java

##导入宏定义

$!define

##设置表后缀(宏定义)

#setTableSuffix("Service")

##保存文件(宏定义)

#save("/service", "Service.java")

##包路径(宏定义)

#setPackageSuffix("service")

import com.baomidou.mybatisplus.extension.service.IService;

import $!{tableInfo.savePackageName}.entity.$!tableInfo.name;

##表注释(宏定义)

#tableComment("表服务接口")

public interface $!{tableName} extends IService<$!tableInfo.name> {

}

serverImpl.java

##导入宏定义

$!define

##设置表后缀(宏定义)

#setTableSuffix("ServiceImpl")

##保存文件(宏定义)

#save("/service/impl", "ServiceImpl.java")

##包路径(宏定义)

#setPackageSuffix("service.impl")

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;

import $!{tableInfo.savePackageName}.entity.$!{tableInfo.name};

import $!{tableInfo.savePackageName}.mapper.$!{tableInfo.name}Mapper;

import $!{tableInfo.savePackageName}.service.$!{tableInfo.name}Service;

import lombok.extern.slf4j.Slf4j;

import org.springframework.stereotype.Service;

##表注释(宏定义)

#tableComment("表服务实现类")

@Slf4j

@Service

public class $!{tableName} extends ServiceImpl<$!{tableInfo.name}Mapper, $!{tableInfo.name}> implements $!{tableInfo.name}Service {

}

controller.java

##导入宏定义

$!define

##设置表后缀(宏定义)

#setTableSuffix("Controller")

##保存文件(宏定义)

#save("/controller", "Controller.java")

##包路径(宏定义)

#setPackageSuffix("controller")

##定义服务名

#set($serviceName = $!tool.append($!tool.firstLowerCase($!tableInfo.name), "Service"))

##定义实体对象名

#set($entityName = $!tool.firstLowerCase($!tableInfo.name))

import $!{tableInfo.savePackageName}.entity.$!tableInfo.name;

import $!{tableInfo.savePackageName}.service.$!{tableInfo.name}Service;

import io.swagger.annotations.ApiOperation;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;

import com.baomidou.mybatisplus.core.metadata.IPage;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

import com.baomidou.mybatisplus.extension.api.R;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.web.bind.annotation.*;

import java.io.Serializable;

import java.util.List;

##表注释(宏定义)

#tableComment("表控制层[不建议修改,如果有新增的方法,写在子类中]")

@RestController

public class $!{tableName} {

/**

* 服务对象

*/

@Autowired

$!{tableInfo.name}Service $!{serviceName};

/**

* 分页查询所有数据

*

* @param page 分页对象

* @param $!entityName 查询实体

* @return 所有数据

*/

@ApiOperation("分页查询所有数据")

@GetMapping

public R> selectAll(Page<$!tableInfo.name> page, $!tableInfo.name $!entityName) {

return R.ok ($!{serviceName}.page(page, new QueryWrapper<>($!entityName)));

}

/**

* 通过主键查询单条数据

*

* @param id 主键

* @return 单条数据

*/

@ApiOperation("通过主键查询单条数据")

@GetMapping("{id}")

public R<$!tableInfo.name> selectOne(@PathVariable Serializable id) {

return R.ok($!{serviceName}.getById(id));

}

/**

* 新增数据

*

* @param $!entityName 实体对象

* @return 新增结果

*/

@ApiOperation("新增数据")

@PostMapping

public R insert(@RequestBody $!tableInfo.name $!entityName) {

boolean rs = $!{serviceName}.save($!entityName);

return R.ok(rs?$!{entityName}.getId():0);

}

/**

* 修改数据

*

* @param $!entityName 实体对象

* @return 修改结果

*/

@ApiOperation("修改数据")

@PutMapping

public R update(@RequestBody $!tableInfo.name $!entityName) {

return R.ok($!{serviceName}.updateById($!entityName));

}

/**

* 单条/批量删除数据

*

* @param idList 主键集合

* @return 删除结果

*/

@ApiOperation("单条/批量删除数据")

@DeleteMapping

public R delete(@RequestParam("idList") List idList) {

return R.ok($!{serviceName}.removeByIds(idList));

}

}

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

#foreach($column in $tableInfo.fullColumn)

#end

修改签名

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:IDEA配置Maven并版本统一管理的实现
下一篇:mybatis plus generator 根据数据库自动生成实体类的实现示例
相关文章

 发表评论

暂时没有评论,来抢沙发吧~