@RequestMapping("addMsgList.action") public String addMsgList( String businessid,String msg){ this.front(); if (this.getSession().getAttribute("userid") == null) { return "redirect:/index/preLogin.action"; } String userid = (String) this.getSession().getAttribute("userid"); MyMsgList list=new MyMsgList(); list.setUserid(userid); list.setBusinessid(businessid); List<MyMsgList> lists = msgService.listByUser(userid); if (lists.size()>0){ List<String> collect = lists.stream().map(t -> t.getBusinessid()).collect(Collectors.toList()); if (!collect.contains(businessid)){ //添加链接 msgService.addMsgList(list); } }else { //添加链接 msgService.addMsgList(list); } MyMsgs obj=new MyMsgs(); obj.setMsg(msg); obj.setBusinessid(businessid); obj.setUsersid(userid); return addMsg(obj); }详细解析该段代码
时间: 2023-06-19 10:03:07 浏览: 82
Spring 注解 开发模式 @Controller @RequestMapping @
5星 · 资源好评率100%
这段代码是一个基于Spring MVC框架的Java代码,主要实现的功能是添加一个用户的消息列表和消息内容。
@RequestMapping("addMsgList.action"):这是一个用于处理HTTP请求的注解,当请求的URL地址为“addMsgList.action”时,就会调用该方法。
public String addMsgList(String businessid, String msg):该方法接收两个参数,一个是业务ID(businessid),一个是消息内容(msg),并且返回一个字符串类型的结果。
this.front():该方法是当前控制器(Controller)的父类(BaseController)中的方法,用于初始化一些数据。
if (this.getSession().getAttribute("userid") == null):检查当前用户是否已经登录,如果没有登录则重定向到登录页面。
MyMsgList list=new MyMsgList():实例化一个MyMsgList对象。
list.setUserid(userid):设置该消息列表所属的用户ID。
list.setBusinessid(businessid):设置该消息列表所属的业务ID。
List<MyMsgList> lists = msgService.listByUser(userid):获取当前用户所有的消息列表。
if (lists.size() > 0):如果当前用户已经有过消息列表。
List<String> collect = lists.stream().map(t -> t.getBusinessid()).collect(Collectors.toList()):将所有的消息列表中的业务ID取出来,保存到一个列表(List)中。
if (!collect.contains(businessid)):如果当前用户没有该业务的消息列表,则添加一个新的消息列表。
msgService.addMsgList(list):将新的消息列表保存到数据库。
MyMsgs obj=new MyMsgs():实例化一个MyMsgs对象。
obj.setMsg(msg):设置该消息的内容。
obj.setBusinessid(businessid):设置该消息所属的业务ID。
obj.setUsersid(userid):设置该消息所属的用户ID。
return addMsg(obj):调用addMsg方法,将该消息保存到数据库。
总体来说,该段代码的作用是将用户发送的消息保存到数据库中,并且将该消息所属的业务ID添加到用户的消息列表中。
阅读全文