import com.baomidou.mybatisplus.extension.service.IService;
import com.resume.domain.${className};
import java.util.List;
/**
-
@Author: 梁云亮
-
@Date: 2021/7/14 13:51
-
@Describe:
*/
public interface c l a s s N a m e S e r v i c e e x t e n d s I S e r v i c e < {className}Service extends IService< classNameServiceextendsIService<{className}> {
/**
-
查询出所有的可以使用的${comment}信息
-
@return
*/
List< c l a s s N a m e > l i s t A l l U s a b l e {className}> listAllUsable className>listAllUsable{className}();
/**
-
改变指定编号的${comment}的状态
-
@param id
-
@param status
-
@return 返回值表示受影响的记录的行数
*/
boolean modify${className}Status(Integer id, Integer status);
/**
-
根据条件修改${comment}信息
-
@param ${objName}
-
@return
*/
boolean modify(${className} ${objName});
}
package com.resume.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.resume.constant.GlobalConst;
import com.resume.domain.${className};
import com.resume.mapper.${className}Mapper;
import com.resume.service.${className}Service;
import org.springframework.stereotype.Service;
import java.util.List;
/**
-
@Author: 梁云亮
-
@Date: 2021/7/14 13:51
-
@Describe:
*/
@Service
public class c l a s s N a m e S e r v i c e I m p l e x t e n d s S e r v i c e I m p l < {className}ServiceImpl extends ServiceImpl< classNameServiceImplextendsServiceImpl<{className}Mapper, ${className}> implements ${className}Service {
@Override
public List< c l a s s N a m e > l i s t A l l U s a b l e {className}> listAllUsable className>listAllUsable{className}() {
QueryWrapper<${className}> queryWrapper = new QueryWrapper<>();
queryWrapper.select(“id”, “name”, “info”)
.eq(“status”, GlobalConst.Common.STATUS_ENABLE);// 1 表示显示
List<${className}> ${objName}List = baseMapper.selectList(queryWrapper);
return ${objName}List;
}
@Override
public boolean modify${className}Status(Integer id, Integer status) {
${className} ${objName} = ${className}.builder()
.id(id)
.status(status)
.build();
int res = baseMapper.updateById(${objName});
return res == 1 ? true : false;
}
@Override
public boolean modify(${className} ${objName}) {
QueryWrapper<${className}> queryWrapper = new QueryWrapper<>();
queryWrapper.eq(“id”,${objName}.getId());
int updateRes = baseMapper.update(${objName}, queryWrapper);
return updateRes == 1 ? true : false;
}
}
package com.resume.controller;
import com.resume.bean.DataTableResponse;
import com.resume.bean.Result;
import com.resume.bean.ResultUtil;
import com.resume.constant.GlobalConst;
import com.resume.domain.${className};
import com.resume.enums.ResultEnum;
import com.resume.ex.ResumeException;
import com.resume.service.${className}Service;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.annotation.Resource;
import java.util.List;
/**
-
@Author: 梁云亮
-
@Date: 2021/7/16 16:17
-
@Describe:
*/
@Api(value = “ c o m m e n t 控制器: {comment}控制器: comment控制器:{className}Controller”,tags = “ c l a s s N a m e C o n t r o l l e r : {className}Controller: classNameController:{comment}控制器”)
@Controller
@RequestMapping(“/${objName}”)
public class ${className}Controller {
@Resource
private ${className}Service ${objName}Service;
@ApiOperation(value = “打开 c o m m e n t 列表页面 " , n o t e s = " 打开 {comment}列表页面", notes = "打开 comment列表页面",notes="打开{comment}列表页面”)
@GetMapping(“/open${className}”)
public String open${className}(){
return “/base/${objName}”;
}
@ApiOperation(value = “显示 c o m m e n t 列表 " , n o t e s = " 显示 {comment}列表", notes = "显示 comment列表",notes="显示{comment}列表”)
@ResponseBody
@GetMapping(“/v1/list”)
public Result <DataTableResponse<${className}>> list() {
List<${className}> ${objName}List = o b j N a m e S e r v i c e . l i s t A l l U s a b l e {objName}Service.listAllUsable objNameService.listAllUsable{className}();
DataTableResponse<${className}> dataTableResponse = new DataTableResponse<>();
dataTableResponse.setSEcho(3);
dataTableResponse.setITotalRecords(80L);
dataTableResponse.setITotalDisplayRecords(70L);
dataTableResponse.setAaData(${objName}List);
return ResultUtil.success(200, “数据查询成功”, dataTableResponse);
}
@ApiOperation(value = “删除 c o m m e n t " , n o t e s = " 根据编号删除 {comment}", notes = "根据编号删除 comment",notes="根据编号删除{comment}”)
@ResponseBody
@GetMapping(“/v1/remove”)
public Result remove(Integer id) {
try {
o b j N a m e S e r v i c e . m o d i f y {objName}Service.modify objNameService.modify{className}Status(id, GlobalConst.Common.STATUS_DISABLE);
return ResultUtil.success(ResultEnum.SUCCESS);
} catch (Exception e) {
throw new ResumeException(ResultEnum.SQL_ERROR);
}
}
@ApiOperation(value = “修改 c o m m e n t " , n o t e s = " 根据编号修改 {comment}", notes = "根据编号修改 comment",notes="根据编号修改{comment}”)
@ResponseBody
@GetMapping(“/v1/modify”)
public Result modify(${className} ${objName}) {
try {
o b j N a m e S e r v i c e . m o d i f y ( {objName}Service.modify( objNameService.modify({objName});
return ResultUtil.success(ResultEnum.SUCCESS);
} catch (Exception e) {
throw new ResumeException(ResultEnum.SQL_ERROR);
}
}
@ApiOperation(value = “增加 c o m m e n t " , n o t e s = " 增加 {comment}", notes = "增加 comment",notes="增加{comment}”)
@ResponseBody
@GetMapping(“/v1/create”)
public Result create(${className} ${objName}) {
try {
o b j N a m e S e r v i c e . s a v e ( {objName}Service.save( objNameService.save({objName});
return ResultUtil.success(ResultEnum.SUCCESS);
} catch (Exception e) {
throw new ResumeException(ResultEnum.SQL_ERROR);
}
}
}
import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Writer;
import java.util.Map;
/**
-
@author 梁云亮
-
@description Freemarker工具类
*/
public class FreemarkerUtil {
/**
-
根据模板,利用提供的数据,生成文件
-
@param ftlNameWithPath 模板文件
-
@param data 数据
-
@param aimFileName 最终生成的文件
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)
最后
一个好的心态和一个坚持的心很重要,很多冲着高薪的人想学习前端,但是能学到最后的没有几个,遇到困难就放弃了,这种人到处都是,就是因为有的东西难,所以他的回报才很大,我们评判一个前端开发者是什么水平,就是他解决问题的能力有多强。
分享一些简单的前端面试题以及学习路线给大家,狂戳这里即可免费领取
(img-FDHsJCdS-1712295346853)]
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)
最后
一个好的心态和一个坚持的心很重要,很多冲着高薪的人想学习前端,但是能学到最后的没有几个,遇到困难就放弃了,这种人到处都是,就是因为有的东西难,所以他的回报才很大,我们评判一个前端开发者是什么水平,就是他解决问题的能力有多强。
分享一些简单的前端面试题以及学习路线给大家,狂戳这里即可免费领取
[外链图片转存中…(img-ziBa4t72-1712295346854)]