⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 messengerserviceimpl.java

📁 跑步社区网站
💻 JAVA
字号:
package com.briup.run.service;import java.util.ArrayList;import java.util.Date;import java.util.List;import java.util.Map;import com.briup.run.common.exception.DataAccessException;import com.briup.run.common.exception.MessengerServiceException;import com.briup.run.common.transaction.HibernateTransaction;import com.briup.run.common.util.BeanFactory;import com.briup.run.common.util.Page;import com.briup.run.dao.IMemberDao;import com.briup.run.dao.IMessengerDao;import com.briup.run.pojos.Blackrecord;import com.briup.run.pojos.Friendrecord;import com.briup.run.pojos.Memberinfo;import com.briup.run.pojos.Messagerecord;import com.opensymphony.xwork2.ActionContext;public class MessengerServiceImpl implements IMessengerService {	IMessengerDao messengerDao = (IMessengerDao) BeanFactory			.getBean(BeanFactory.MESSENGERDAO);	IMemberDao memberDao = (IMemberDao) BeanFactory			.getBean(BeanFactory.MEMBERDAO);	public Integer findNewMessageNum(String nickname)			throws MessengerServiceException {		HibernateTransaction ht = new HibernateTransaction();		ht.beginTransaction();		try {			Integer integer = messengerDao.findNewMessageNum(nickname);			ht.commit();			return integer;		} catch (DataAccessException e) {			e.printStackTrace();			ht.rollback();		}		return 0;	}	public Memberinfo findOneFriend() throws MessengerServiceException {		HibernateTransaction ht = new HibernateTransaction();		ht.beginTransaction();		try {			int sum = memberDao.findMemberinfoNum();			Memberinfo member = memberDao.findOneMemberinfo(sum);			ht.commit();			return member;		} catch (DataAccessException e) {			// TODO Auto-generated catch block			e.printStackTrace();			ht.rollback();			throw new MessengerServiceException("数据查找异常");		}	}	public List<Memberinfo> findFriends(String age, String gender, String city)			throws MessengerServiceException {		HibernateTransaction ht = new HibernateTransaction();		ht.beginTransaction();		try {			List<Memberinfo> list = memberDao.findFriends(age, gender, city);			ht.commit();			return list;		} catch (DataAccessException e) {			// TODO Auto-generated catch block			e.printStackTrace();			ht.rollback();			throw new MessengerServiceException("数据查找异常");		}	}	public void addFriend(String name) throws MessengerServiceException {		HibernateTransaction ht = new HibernateTransaction();		Map session = ActionContext.getContext().getSession();		ht.beginTransaction();		try {			Friendrecord f = messengerDao.findFriendByName(name);			Blackrecord b = 	messengerDao.findBlackByName(name);			if (f != null) {				throw new MessengerServiceException("您已经添加" + name + "好友了");			}			if (b != null) {				throw new MessengerServiceException("您已经添加" + name + "到黑名单");			}			Memberinfo member = (Memberinfo) session.get("memberinfo");			Friendrecord friend = new Friendrecord();			friend.setFriendname(name);			friend.setSelfname(member.getNickname());			messengerDao.saveOrUpdateFriend(friend);			ht.commit();		} catch (DataAccessException e) {			e.printStackTrace();			ht.rollback();			throw new MessengerServiceException("数据查找异常");		}	}	public List<Memberinfo> findAllFriend(String name)			throws MessengerServiceException {		HibernateTransaction ht = new HibernateTransaction();		ht.beginTransaction();		try {			List<Friendrecord> list = messengerDao.findAllFriend(name);			List<Memberinfo> mlist = new ArrayList<Memberinfo>();			for(Friendrecord f:list){				Memberinfo member = memberDao.findMemberinfoByName(f.getFriendname());				mlist.add(member);			}			ht.commit();			return mlist;		} catch (DataAccessException e) {			// TODO Auto-generated catch block			e.printStackTrace();			ht.rollback();			throw new MessengerServiceException("数据查找异常");		}	}	public List<Memberinfo> findAllBlack(String name)			throws MessengerServiceException {		HibernateTransaction ht = new HibernateTransaction();		ht.beginTransaction();		try {			List<Blackrecord> list = messengerDao.findAllBlack(name);			List<Memberinfo> mlist = new ArrayList<Memberinfo>();			for(Blackrecord f:list){				Memberinfo member = memberDao.findMemberinfoByName(f.getBlackname());				mlist.add(member);			}			ht.commit();			return mlist;		} catch (DataAccessException e) {			// TODO Auto-generated catch block			e.printStackTrace();			ht.rollback();			throw new MessengerServiceException("数据查找异常");		}	}	public void moveToBlack(String name) throws MessengerServiceException {		HibernateTransaction ht = new HibernateTransaction();		ht.beginTransaction();        Map session = ActionContext.getContext().getSession();        List<Memberinfo> list = (List<Memberinfo>) session.get("memberlist");        		try {		Friendrecord f = messengerDao.findFriendByName(name);		Blackrecord black = new Blackrecord();		black.setBlackname(f.getFriendname());		black.setSelfname(f.getSelfname());		messengerDao.saveOrUpdateBlack(black);		for(Memberinfo m:list){			if(m.getNickname().equals(name)){				list.remove(m);				break;			}		}		session.put("memberlist", list);		messengerDao.removeFriend(f);		    ht.commit();				} catch (DataAccessException e) {			// TODO Auto-generated catch block			e.printStackTrace();			ht.rollback();			throw new MessengerServiceException("数据查找异常");		}			}	public void moveToFriend(String name) throws MessengerServiceException {		HibernateTransaction ht = new HibernateTransaction();				ht.beginTransaction();		 Map session = ActionContext.getContext().getSession();	     List<Memberinfo> list = (List<Memberinfo>) session.get("memberlist");		try {		Blackrecord b = messengerDao.findBlackByName(name);		Friendrecord f = new Friendrecord();	    f.setFriendname(b.getBlackname());	    f.setSelfname(b.getSelfname());		messengerDao.saveOrUpdateFriend(f);		for(Memberinfo m:list){			if(m.getNickname().equals(name)){				list.remove(m);				break;			}		}		messengerDao.removeBlack(b);		session.put("memberlist", list);	    ht.commit();				} catch (DataAccessException e) {			// TODO Auto-generated catch block			e.printStackTrace();			ht.rollback();			throw new MessengerServiceException("数据查找异常");		}			}	public void delbuddy(String name) throws MessengerServiceException {		HibernateTransaction ht = new HibernateTransaction();		 Map session = ActionContext.getContext().getSession();		   List<Memberinfo> list = (List<Memberinfo>) session.get("memberlist");		ht.beginTransaction();		try {			Friendrecord friend = messengerDao.findFriendByName(name);						messengerDao.removeFriend(friend);						for(Memberinfo m:list){				if(m.getNickname().equals(name)){					list.remove(m);					break;				}			}			session.put("memberlist", list);			ht.commit();					} catch (DataAccessException e) {			// TODO Auto-generated catch block			e.printStackTrace();			ht.rollback();			throw new MessengerServiceException("数据查找异常");		}	}	public void delblack(String name) throws MessengerServiceException {			HibernateTransaction ht = new HibernateTransaction();			Map session = ActionContext.getContext().getSession();		    List<Memberinfo> list = (List<Memberinfo>) session.get("memberlist");		ht.beginTransaction();		try {			Blackrecord black = messengerDao.findBlackByName(name);						messengerDao.removeBlack(black);						for(Memberinfo m:list){				if(m.getNickname().equals(name)){					list.remove(m);					break;				}			}			session.put("memberlist", list);			ht.commit();					} catch (DataAccessException e) {			// TODO Auto-generated catch block			e.printStackTrace();			ht.rollback();			throw new MessengerServiceException("数据查找异常");		}			}	public void sendMessage(String receiver, String title, String content,String sender)			throws MessengerServiceException {		if(receiver.equals("")){			throw new  MessengerServiceException("收件人不能为空"); 		}		HibernateTransaction ht = new HibernateTransaction();    	ht.beginTransaction();		try {	    	Memberinfo m =memberDao.findMemberinfoByName(receiver);    	if(m==null){    		throw new  MessengerServiceException("收件人不存在");     	}		Messagerecord message = new Messagerecord();		message.setContent(content);		message.setReceiver(receiver);		message.setReceiverstatus(0L);		message.setSenddate(new Date());		message.setSender(sender);		message.setSenderstatus(0L);		message.setStatus(0L);		message.setTitle(title);						messengerDao.saveOrUpdateMessange(message);			ht.commit();		} catch (DataAccessException e) {			// TODO Auto-generated catch block			e.printStackTrace();			ht.rollback();			throw new MessengerServiceException("数据查找异常");		}					}	public List<Messagerecord> findReceiverMessageByName(String name)			throws MessengerServiceException {		HibernateTransaction ht = new HibernateTransaction();    	ht.beginTransaction();	try {		List<Messagerecord> list = messengerDao.findReceiverMessageByName(name);				ht.commit();		return list;	} catch (DataAccessException e) {		// TODO Auto-generated catch block		e.printStackTrace();		ht.rollback();		throw new MessengerServiceException("数据查找异常");	}	}	public List<Messagerecord> findSenderMessageByName(String name)			throws MessengerServiceException {		HibernateTransaction ht = new HibernateTransaction();    	ht.beginTransaction();	try {		List<Messagerecord> list = messengerDao.findSenderMessageByName(name);				ht.commit();		return list;	} catch (DataAccessException e) {		// TODO Auto-generated catch block		e.printStackTrace();		ht.rollback();		throw new MessengerServiceException("数据查找异常");	}	}	public Messagerecord findMessageByTitle(String title)			throws MessengerServiceException {		HibernateTransaction ht = new HibernateTransaction();    	ht.beginTransaction();    	try {			Messagerecord  m =	messengerDao.findMessagerecordByTitle(title);			m.setStatus(1L);			messengerDao.saveOrUpdateMessange(m);			ht.commit();			return m;					} catch (DataAccessException e) {			// TODO Auto-generated catch block			e.printStackTrace();			ht.rollback();			throw new MessengerServiceException("数据查找异常");		}	}	public void delMessage(String title,String type) throws MessengerServiceException {		HibernateTransaction ht = new HibernateTransaction();    	ht.beginTransaction();    	try {			Messagerecord  m =	messengerDao.findMessagerecordByTitle(title);			if(type.equals("recevier")){				if(m.getSenderstatus()==1L){					messengerDao.removeMessage(m);				}else{					m.setReceiverstatus(1L);					messengerDao.saveOrUpdateMessange(m);				}				ht.commit();				return;			}						if(type.equals("sender")){				if(m.getReceiverstatus()==1L){					messengerDao.removeMessage(m);				}else{					m.setSenderstatus(1L);					messengerDao.saveOrUpdateMessange(m);				}				ht.commit();				return;			}								} catch (DataAccessException e) {			// TODO Auto-generated catch block			e.printStackTrace();			ht.rollback();			throw new MessengerServiceException("数据查找异常");		}			}	public Page findreceiverMessageByName(String name,int findPage) throws MessengerServiceException {		HibernateTransaction ht = new HibernateTransaction();    	ht.beginTransaction();    	try {    		Page page = Page.findPage("from Messagerecord where receiver="+name+" and receiverstatus=0", findPage);			return page;					} catch (Exception e) {			// TODO Auto-generated catch block			e.printStackTrace();			ht.rollback();			throw new MessengerServiceException("数据查找异常");		}	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -