java控制某个字段当天递增

java

①思路

1.获取当前时间年月日

如:2018-01-15 00:00:00

2018-01-15 24:00:00

2.查询表中对应日期字段是否在当天时间段内

3.若是在,则从0开始递增

4.若是不在,则查找msgno最大数值,在此基础上+1

②上代码

Controller调service中封装的方法

Integer msgid= xxtzService.getMsgid();

service

	public Integer getMsgid(){

//1.获取当前时间,格式为年月日时分秒

String date = DateU.getDateToString(new Date().getTime());

String senddate1 = date+" 00:00:00";

String senddate2 = date+" 24:00:00";

//2.查询表中对应字段是否有当天时间的

List<Message> msgList = xxtzMapper.findTime(senddate1,senddate2);

if(msgList.size()==0 || msgList==null){

//3.1若是没有匹配,从1开始递增

Integer msgid=0;

//每日最多10万条

for (int i = 0; i < 100000; i++) {

msgid++;

return msgid;

}

}else{

//3.2若是匹配,则查找msgno的最大数值,在此基础上+1

Integer msgid = xxtzMapper.findMaxMsgid(senddate1,senddate2);

msgid++;

return msgid;

}

return null;

}

Mapper

	List<Message> findTime(@Param("senddate1")String senddate1, @Param("senddate2")String senddate2);

Integer findMaxMsgid(@Param("senddate1")String senddate1, @Param("senddate2")String senddate2);

xxMapper.xml

	<select >

select max(msgid) from Message where

senddate between #{senddate1} and #{senddate2}

</select>

<!-- 查询Message表中对应字段是否有当天时间的 -->

<select >

select * from Message where

senddate between #{senddate1} and #{senddate2}

</select>

  

  

  

以上是 java控制某个字段当天递增 的全部内容, 来源链接: utcz.com/z/394534.html

回到顶部