mirror of
https://github.com/tiennm99/zfoo.git
synced 2026-08-18 08:25:32 +00:00
test[orm]: ttl test unit
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
/*
|
||||
* Copyright (C) 2020 The zfoo Authors
|
||||
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
|
||||
* in compliance with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
|
||||
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and limitations under the License.
|
||||
*/
|
||||
|
||||
package com.zfoo.orm.accessor;
|
||||
|
||||
import com.zfoo.orm.OrmContext;
|
||||
import com.zfoo.orm.entity.MailEntity;
|
||||
import com.zfoo.scheduler.util.TimeUtils;
|
||||
import org.junit.Ignore;
|
||||
import org.junit.Test;
|
||||
import org.springframework.context.support.ClassPathXmlApplicationContext;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @author godotg
|
||||
* @version 3.0
|
||||
*/
|
||||
@Ignore
|
||||
public class TtlTest {
|
||||
|
||||
@Test
|
||||
public void ttlTest() {
|
||||
var context = new ClassPathXmlApplicationContext("application.xml");
|
||||
var mailEntity = MailEntity.valueOf("d", "godot", "hello ttl", new Date(TimeUtils.now()));
|
||||
OrmContext.getAccessor().insert(mailEntity);
|
||||
}
|
||||
|
||||
}
|
||||
+20
-9
@@ -16,16 +16,17 @@ package com.zfoo.orm.entity;
|
||||
import com.zfoo.orm.model.anno.EntityCache;
|
||||
import com.zfoo.orm.model.anno.Id;
|
||||
import com.zfoo.orm.model.anno.Index;
|
||||
import com.zfoo.orm.model.anno.Persister;
|
||||
import com.zfoo.orm.model.entity.IEntity;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
|
||||
/**
|
||||
* @author godotg
|
||||
* @version 3.0
|
||||
*/
|
||||
@EntityCache(persister = @Persister("time30s"))
|
||||
public class MailEnt implements IEntity<String> {
|
||||
@EntityCache
|
||||
public class MailEntity implements IEntity<String> {
|
||||
|
||||
@Id
|
||||
private String id;
|
||||
@@ -35,13 +36,16 @@ public class MailEnt implements IEntity<String> {
|
||||
|
||||
private String content;
|
||||
|
||||
public MailEnt() {
|
||||
}
|
||||
@Index(ascending = true, unique = false, ttl = true, expireAfterSeconds = 10)
|
||||
private Date createDate;
|
||||
|
||||
public MailEnt(String id, String userName, String content) {
|
||||
this.id = id;
|
||||
this.userName = userName;
|
||||
this.content = content;
|
||||
public static MailEntity valueOf(String id, String userName, String content, Date createDate) {
|
||||
var entity = new MailEntity();
|
||||
entity.id = id;
|
||||
entity.userName = userName;
|
||||
entity.content = content;
|
||||
entity.createDate = createDate;
|
||||
return entity;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -73,4 +77,11 @@ public class MailEnt implements IEntity<String> {
|
||||
this.content = content;
|
||||
}
|
||||
|
||||
public Date getCreateDate() {
|
||||
return createDate;
|
||||
}
|
||||
|
||||
public void setCreateDate(Date createDate) {
|
||||
this.createDate = createDate;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user