1
봄과 최대 절전 모드 사용. 어떻게 아약스 메소드의 응답과 함께 모델의 메시지도 보낼 수 있습니까? 나는 더 나은 가장 연습 된 방법이 무엇을 의미합니다. 세 가지에 대한 모든 샘플 코드는 전체 객체를 반환 (더 리턴 필요한 객체)스프링 아약스에서 객체를 가진 메시지를 반환하는 자바 스크립트를 읽는 방법
@RequestMapping (value = "/attachment/download/{attachmentId}", method=RequestMethod.GET)
public String downloadFile(HttpServletResponse response,
@PathVariable(value = "attachmentId")Long attachmentId
)throws IOException{
result = taskService.getAttachmentById(attachmentId);
if(result.getIsSuccessful()){
Attachment attachment = (Attachment)result.getObject();
File file = new File(attachment.getPath());
response.setContentType("application/octet-stream");
response.setHeader("Content-Disposition", "attachment; filename=\"" + file.getName() + "\"");
byte[] ba = FileUtils.readFileToByteArray(file);
response.getOutputStream().write(ba);
}
return null;
//queued - send model message also (if needed)
}
3 널 (null)을 반환하는 문자열
@RequestMapping (value = "/task/delete/{taskId}", method=RequestMethod.GET)
public @ResponseBody String deleteTask(ModelMap model,
@PathVariable(value="taskId") String taskId
){
result = taskService.deleteTask(Long.parseLong(taskId));
if (result.getIsSuccessful()) {
model.put("successMessages", result.getMessageList());
System.out.println("task deleted ------------------");
return "success";//queued - send model message also (if needed)
}else{
System.out.println("task deletion failed ---------------");
model.put("errorMessages", result.getMessageList());
return "failure";//queued - send model message also (if needed)
}
}
2를 반환하지 않습니다 경우?
일을했다.
@RequestMapping (value = "/task/create/{parentBoxId}/{taskTitle}/{taskDescription}", method=RequestMethod.GET)
public @ResponseBody Tasks createTask(ModelMap model,
@PathVariable(value="parentBoxId") String parentBoxId,
@PathVariable(value="taskTitle") String taskTitle,
@PathVariable(value="taskDescription") String taskDescription
){
Tasks taskToBeReturned = null;
Tasks task = new Tasks();
task.setTitle(taskTitle);
task.setDescription(taskDescription);
Boxes parentBox = (Boxes)(boxService.getBoxById(Long.valueOf(parentBoxId))).getObject();
taskService.setParent(task, parentBox);
result = taskService.save(task);
if(result.getIsSuccessful()){
model.put("successMessages", result.getMessageList());
Tasks savedTask = (Tasks)result.getObject();
System.out.println("box saved title was " + savedTask.getTitle());
taskToBeReturned = new Tasks();
taskToBeReturned.setTitle(savedTask.getTitle());
taskToBeReturned.setId(savedTask.getId());
taskToBeReturned.setDescription(savedTask.getDescription());
}else{
model.put("errorMessages", result.getMessageList());
}
return taskToBeReturned; //queued - send model message also (if needed)
}