From 0adf9360851101679c6e22ef8a85f1fa144eb2e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A6=BE=E5=87=A0=E6=B5=B7?= Date: Sun, 24 May 2020 23:54:13 +0800 Subject: [PATCH] =?UTF-8?q?dao=E5=B1=82=E4=BF=AE=E6=94=B9=20=20=E5=8D=95?= =?UTF-8?q?=E5=85=83=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/celess/blog/entity/WebUpdate.java | 5 +- .../blog/mapper/WebUpdateInfoMapper.java | 2 + .../resources/mapper/WebUpdateInfoMapper.xml | 46 ++++++----- .../blog/mapper/WebUpdateInfoMapperTest.java | 80 +++++++++++++++++++ 4 files changed, 111 insertions(+), 22 deletions(-) create mode 100644 src/test/java/cn/celess/blog/mapper/WebUpdateInfoMapperTest.java diff --git a/src/main/java/cn/celess/blog/entity/WebUpdate.java b/src/main/java/cn/celess/blog/entity/WebUpdate.java index 8cb3ee6..4e2a99e 100644 --- a/src/main/java/cn/celess/blog/entity/WebUpdate.java +++ b/src/main/java/cn/celess/blog/entity/WebUpdate.java @@ -17,11 +17,12 @@ public class WebUpdate { private Date updateTime; + private boolean delete; + public WebUpdate() { } - public WebUpdate(String updateInfo, Date updateTime) { + public WebUpdate(String updateInfo) { this.updateInfo = updateInfo; - this.updateTime = updateTime; } } diff --git a/src/main/java/cn/celess/blog/mapper/WebUpdateInfoMapper.java b/src/main/java/cn/celess/blog/mapper/WebUpdateInfoMapper.java index d2fa669..ee9f119 100644 --- a/src/main/java/cn/celess/blog/mapper/WebUpdateInfoMapper.java +++ b/src/main/java/cn/celess/blog/mapper/WebUpdateInfoMapper.java @@ -27,5 +27,7 @@ public interface WebUpdateInfoMapper { List findAll(); + List findAllNotDeleted(); + WebUpdate getLastestOne(); } diff --git a/src/main/resources/mapper/WebUpdateInfoMapper.xml b/src/main/resources/mapper/WebUpdateInfoMapper.xml index ce12748..4f42e4e 100644 --- a/src/main/resources/mapper/WebUpdateInfoMapper.xml +++ b/src/main/resources/mapper/WebUpdateInfoMapper.xml @@ -2,47 +2,53 @@ - - - + + + + - - insert into web_update(update_info, update_time) - values (#{updateInfo}, #{updateTime}) - - SELECT LAST_INSERT_ID() AS id - + + + insert into web_update(wu_info, wu_time, is_delete) + values (#{updateInfo}, now(), false) update web_update - set update_info=#{info} - where update_id = #{id}; - + set wu_info=#{info} + where wu_id = #{id}; - - delete - from web_update - where update_id = #{id} - + + update web_update + set is_delete = true + where wu_id = #{id} + + + + + diff --git a/src/test/java/cn/celess/blog/mapper/WebUpdateInfoMapperTest.java b/src/test/java/cn/celess/blog/mapper/WebUpdateInfoMapperTest.java new file mode 100644 index 0000000..2ddd107 --- /dev/null +++ b/src/test/java/cn/celess/blog/mapper/WebUpdateInfoMapperTest.java @@ -0,0 +1,80 @@ +package cn.celess.blog.mapper; + +import cn.celess.blog.BaseTest; +import cn.celess.blog.entity.WebUpdate; +import org.junit.Test; +import org.springframework.beans.factory.annotation.Autowired; + +import java.util.List; + +import static org.junit.Assert.*; + +public class WebUpdateInfoMapperTest extends BaseTest { + + @Autowired + WebUpdateInfoMapper webUpdateInfoMapper; + + @Test + public void insert() { + WebUpdate webUpdate = generateUpdateInfo(); + assertNotNull(webUpdate); + } + + @Test + public void delete() { + WebUpdate webUpdate = generateUpdateInfo(); + assertEquals(1, webUpdateInfoMapper.delete(webUpdate.getId())); + assertTrue(webUpdateInfoMapper.findById(webUpdate.getId()).isDelete()); + } + + @Test + public void update() { + WebUpdate webUpdate = generateUpdateInfo(); + assertEquals(1, webUpdateInfoMapper.update(webUpdate.getId(), randomStr(6))); + } + + @Test + public void existsById() { + WebUpdate webUpdate = generateUpdateInfo(); + assertTrue(webUpdateInfoMapper.existsById(webUpdate.getId())); + } + + @Test + public void findById() { + WebUpdate webUpdate = generateUpdateInfo(); + WebUpdate byId = webUpdateInfoMapper.findById(webUpdate.getId()); + assertEquals(webUpdate.getUpdateInfo(), byId.getUpdateInfo()); + assertEquals(webUpdate.getId(), byId.getId()); + } + + @Test + public void findAll() { + List all = webUpdateInfoMapper.findAll(); + assertNotEquals(0, all.size()); + } + + @Test + public void findAllNotDeleted() { + this.delete(); + List allNotDeleted = webUpdateInfoMapper.findAllNotDeleted(); + allNotDeleted.forEach(webUpdate -> assertFalse(webUpdate.isDelete())); + } + + @Test + public void getLastestOne() { + WebUpdate webUpdate = generateUpdateInfo(); + List all = webUpdateInfoMapper.findAll(); + List allNotDeleted = webUpdateInfoMapper.findAllNotDeleted(); + all.sort(((o1, o2) -> (int) (o2.getId() - o1.getId()))); + allNotDeleted.sort(((o1, o2) -> (int) (o2.getId() - o1.getId()))); + assertEquals(webUpdate.getId(), all.get(0).getId()); + assertEquals(webUpdate.getId(), allNotDeleted.get(0).getId()); + assertEquals(webUpdate.getId(), webUpdateInfoMapper.getLastestOne().getId()); + } + + private WebUpdate generateUpdateInfo() { + WebUpdate webUpdate = new WebUpdate(randomStr(8)); + webUpdateInfoMapper.insert(webUpdate); + return webUpdate; + } +} \ No newline at end of file