@Override @Transactional(rollbackFor = Exception.class, propagation = Propagation.NESTED) public void sendTip(TipMessage message) { if (message.getSender().equals(message.getReceiver())) { return; } MessageDetail detail = new MessageDetail(message.getTitle(), message.getContent()); messageDetailDao.insert(detail); MessageSend toSend = new MessageSend(); toSend.setDetail(detail); toSend.setSendDate(new Date()); toSend.setSender(message.getSender()); toSend.setType(MessageType.SYSTEM); messageSendDao.insert(toSend); MessageReceive toReceive = new MessageReceive(); toReceive.setMessage(toSend); toReceive.setReceiver(message.getReceiver()); toReceive.setStatus(MessageStatus.COMMON); messageReceiveDao.insert(toReceive); addCount(message.getReceiver(), 1); }