Hello大家好,本章我们通过freemarker自动生成service,serviceImpl,controller功能 。另求各路大神指点,感谢
一:添加freemarker依赖
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.28</version>
</dependency>
二:创建service,serviceImpl,controller模板
在src\test\java\resources\template\generator
下创建
service.ftl
package ${basePackageService};
import ${basePackageModel}.${modelNameUpperCamel};
import ${basePackage}.core.universal.Service;
/**
* @Description: ${modelNameUpperCamel}Service接口
* @author ${author}
* @date ${date}
*/
public interface ${modelNameUpperCamel}Service extends Service<${modelNameUpperCamel}> {
}
service-impl.ftl
package ${basePackageServiceImpl};
import ${basePackageDao}.${modelNameUpperCamel}Mapper;
import ${basePackageModel}.${modelNameUpperCamel};
import ${basePackageService}.${modelNameUpperCamel}Service;
import ${basePackage}.core.universal.AbstractService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
/**
* @Description: ${modelNameUpperCamel}Service接口实现类
* @author ${author}
* @date ${date}
*/
@Service
public class ${modelNameUpperCamel}ServiceImpl extends AbstractService<${modelNameUpperCamel}> implements ${modelNameUpperCamel}Service {
@Resource
private ${modelNameUpperCamel}Mapper ${modelNameLowerCamel}Mapper;
}
controller.ftl
package ${basePackageController};
import ${basePackage}.core.ret.RetResult;
import ${basePackage}.core.ret.RetResponse;
import ${basePackage}.core.utils.ApplicationUtils;
import ${basePackageModel}.${modelNameUpperCamel};
import ${basePackageService}.${modelNameUpperCamel}Service;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
/**
* @Description: ${modelNameUpperCamel}Controller类
* @author ${author}
* @date ${date}
*/
@RestController
@RequestMapping("/${baseRequestMapping}")
public class ${modelNameUpperCamel}Controller {
@Resource
private ${modelNameUpperCamel}Service ${modelNameLowerCamel}Service;
@PostMapping("/insert")
public RetResult<Integer> insert(${modelNameUpperCamel} ${modelNameLowerCamel}) throws Exception{
${modelNameLowerCamel}.setId(ApplicationUtils.getUUID());
Integer state = ${modelNameLowerCamel}Service.insert(${modelNameLowerCamel});
return RetResponse.makeOKRsp(state);
}
@PostMapping("/deleteById")
public RetResult<Integer> deleteById(@RequestParam String id) throws Exception {
Integer state = ${modelNameLowerCamel}Service.deleteById(id);
return RetResponse.makeOKRsp(state);
}
@PostMapping("/update")
public RetResult<Integer> update(${modelNameUpperCamel} ${modelNameLowerCamel}