【SpringBoot】tk,零基础java入门教程

我们可以看到也没有对应的增删改查配置信息出现,因为tk.mybatis已经全部帮我们做好了。

四、实际代码调用过程详解

1.控制类代码

@RestController

public class SampleController implements SampleApi{

private static final Logger logger = LoggerFactory.getLogger(SampleController.class);

@Autowired

private SampleService sampleService;

@Override

public SampleDto echo(SampleDto dto) {

logger.info("#echo {}", dto);

return dto;

}

@Override

public SampleDto getById(@PathVariable(“id”) Long id) {

logger.info("#getById {}", id);

return sampleService.getSample(id);

}

@Override

public Long create(@RequestBody SampleDto dto) {

logger.info("#create {}", dto);

return sampleService.createSample(dto);

}

@Override

public boolean update(@PathVariable(“id”) Long id, @RequestBody SampleDto dto) {

logger.info("#update id={}, dto={}", id, dto);

dto.setId(id);

return sampleService.updateSample(dto);

}

@Override

public boolean delete(@PathVariable(“id”) Long id) {

logger.info("#delete {}", id);

return sampleService.deleteSample(id);

}

@Override

public Page page(@RequestParam(“index”) int index, @RequestParam(value = “size”, defaultValue = “20”) int size) {

logger.info("#page index={}, size={}", index, size);

return sampleService.pageSample(index, size);

}

}

2.服务接口代码

public interface SampleService {

/**

  • 创建

  • @pa

《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》

【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享

ram dto {@link SampleDto}

  • @return ID

*/

Long createSample(SampleDto dto);

/**

  • 更新

  • @param dto {@link SampleDto}

  • @return 是否更新

*/

boolean updateSample(SampleDto dto);

/**

  • 删除

  • @param id ID

  • @return 是否删除

*/

boolean deleteSample(Long id);

/**

  • 查找

  • @param id ID

  • @return {@link SampleDto},没有相应对象则返回{@code null}

*/

SampleDto getSample(Long id);

/**

  • 分页查找

  • @param index 页码下标

  • @param size 每页尺寸

  • @return 分页对象

*/

Page pageSample(int index, int size);

}

3.服务实现类代码

@Service

public class SampleServiceImpl implements SampleService {

private static final Logger logger = LoggerFactory.getLogger(SampleServiceImpl.class);

@Autowired

private IdGenerator idGenerator;

@Autowired

private SampleMainMapper sampleMainMapper;

@Override

@Transactional

public Long createSample(SampleDto dto) {

logger.info("#createSample {}", dto);

Date currentDate = DateUtils.getCurrentDate();

long id = idGenerator.nextId();

SampleMain sampleMain = BeanUtils.copyProps(dto, SampleMain.class);

sampleMain.setId(id);

sampleMain.setGmtCreate(currentDate);

sampleMain.setGmtModified(currentDate);

sampleMain.setDeleted(Boolean.FALSE);

sampleMainMapper.insertSelective(sampleMain);

return id;

}

@Override

@Transactional

public boolean updateSample(SampleDto dto) {

logger.info("#updateSample {}", dto);

Date currentDate = DateUtils.getCurrentDate();

SampleMain sampleMain = BeanUtils.copyProps(dto, SampleMain.class);

sampleMain.setGmtModified(currentDate);

int rows = sampleMainMapper.updateByPrimaryKeySelective(sampleMain);

return rows > 0;

}

@Override

@Transactional

public boolean deleteSample(Long id) {

logger.info("#deleteSample {}", id);

int rows = sampleMainMapper.deleteByPrimaryKey(id);

return rows > 0;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值