后台controller,返回字符串
//发消息
@RequestMapping("notice/create.action")
@ResponseBody
public String createNotice(HttpSession session,Model model,Notice notice,Integer receive_id,String receive_name)
{ System.out.println(receive_name);
System.out.println(notice);
String notice_type=new String("组内通知");
String notice_type1=new String("书单推荐");
User send=(User) session.getAttribute("USER_SESSION");
Date date=new Date();
Timestamp timeStamp =new Timestamp(date.getTime());
notice.setSend_time(timeStamp);
notice.setSend(send);
//如果为书单推荐
if(notice.getNotice_type().equals(notice_type1)) {
String[] bookname_list=notice.getNotice_title().split(",");
for(String bookname:bookname_list) {
Integer book_id=bookService.searchBookByName(bookname);
System.out.println(bookname+"-------"+book_id);
if(book_id>0) {
Notice book_notice=notice;
book_notice.setNotice_title(bookname);
noticeService.addNotice(book_notice);
int book_notice_id=book_notice.getNotice_id();
User book_receive=userService.findUserByName(receive_name);
if(book_receive!=null) {
int book_receive_id=book_receive.getUid();
noticelistService.addNoticeList(book_notice_id,book_receive_id);
}else {
return "FAIL";
}
}else {
//书名输入错误,查找不到书
return "ERRO";
}
}
System.out.println("发送完成");
}else {
int row=noticeService.addNotice(notice);
int notice_id=notice.getNotice_id();
int row1=0;
Integer group_id=notice.getGroup().getGroup_id();
//非组内通知,收信方为一人
if(!notice.getNotice_type().equals(notice_type)) {
User receive=userService.findUserByName(receive_name);
if(receive!=null) {
receive_id=receive.getUid();
System.out.println(notice_id+" "+receive_id);
row1=noticelistService.addNoticeList(notice_id,receive_id);
}else {
return "FAIL";
}
}else if(notice.getNotice_type().equals(notice_type)){
//若为组内通知则接收方为组内所有成员
List<Integer> members=groupService.findgroupmember(group_id);
for(Integer member:members) {
System.out.println(member+"收到");
row1+=noticelistService.addNoticeList(notice_id,member);
}
}
//获取发送消息
}
List<Notice> sendList=noticeService.sendNotice(send.getUid());
session.setAttribute("SEND_LIST", sendList);
System.out.println("执行完毕");
return "OK";
}
可以进行到输出执行完毕,但回调函数不执行