『 단순한 파일 업로드 』

​<소스코드>

​* 컨트롤러 작성

 @Controller
@RequestMapping("/test/fileupload")
public class FileuploadController {
   
    @RequestMapping(method=RequestMethod.GET)
public void setupForm(Model model) {        
    }
   
    // 하나의 파일을 업로드함
    @RequestMapping(value="single", method=RequestMethod.POST)
    public ModelAndView doAction(@RequestParam("file") MultipartFile file) throws IllegalStateException, IOException {

if(!file.getOriginalFilename().isEmpty() && !file.isEmpty()) {
            File uploadFile = new File("d:/upload/", file.getOriginalFilename());
            //서버내의 다른 장소에 업로드함
            file.transferTo(uploadFile);            
            ModelAndView mav = new ModelAndView("/test/complete");
            mav.addObject("filename", file.getOriginalFilename());
            mav.addObject("filesize", FileUtils.byteCountToDisplaySize(file.getSize()));
            return mav;
           
        } else {
            ModelAndView mav = new ModelAndView("/test/fail");
            return mav;
        }
    }
}


 

 

 

 

 

 




『 단순한 파일 업로드 』

​<소스코드>


* JSP 작성

​form속성에 enctype="multipart/form-data“ 추가

<h4>파일 업로드</h4>
<form action="${appUrl}/test/fileupload/single.html" method="post" enctype="multipart/form-data">
   
    <input type="file" name="file" />
   
    <input type="submit"/>
</form>


 

 

 

 

 

 

 

'자바 > JAVA...Spring' 카테고리의 다른 글

ProgressBarServlet.java  (0) 2015.12.30
progressBar.html  (0) 2015.12.29
dynamicUpdate.html  (0) 2015.12.29
[/Web-INF/src/validation/ ValidationServlet .java]  (0) 2015.12.28
[/Web-INF/web.xml]  (0) 2015.12.28

 



『 날짜형 바인드 』

​- Command 클래스 작성

- 컨트롤러 작성

- JSP 작성

- 에러 메시지 정의

​▷ Command 클래스 작성

 

import java.io.Serializable;
import java.util.Date;
 
import org.apache.commons.lang.builder.ToStringBuilder;
 
public class CustomizeDateBindCommand implements Serializable {
 
    private static final long serialVersionUID = 1L;
   
    private Date startDate;
   
    private Date endDate;
   
    public CustomizeBindCommand() {
    }
   
    // getter、setter 생략
   
    @Override
    public String toString() {
        return ToStringBuilder.reflectionToString(this);
    }
}


 

 

 


 

.



『 독자 데이터타입 바인드(@InitBinder 』

​▷ 날짜형 바인드 (CustomDateEditor)


▷ 수치형 바인드 (CustomNumberEditor)


 

 

 

 

 

 



『 에러 메시지 정의 』

## 형식이 맞지 않는 메시지


typeMismatch=입력 형식이 맞지 않습니다.
typeMismatch.int=정수만 입력해 주십시오.
typeMismatch.java.lang.Integer=정수만 입력해 주십시오.
 
## 입력값 에러 메시지


# (1)JSP로부터 직접 출력 메시지
error.input=입력내용을 확인해 주십시오
 
# (2)공통 에러용, 단일항목 에러 출력용
error.message=공통 에러 메시지
 
# (3)단일항목 에러출력용
error.required=필수입니다.


 

 

 

 

 

 


『 JSP 샘플 작성 』

​<소스코드>

<form:form modelAttribute="sampleCommand" action="${appUrl}/test/form2.html" method="post">

    <p>         <form:label path="name">이름</form:label>
        <form:input path="name" />
        <form:errors path="name" cssClass="errors" />
    </p>
    <p>
        <form:label path="mail">메일 주소</form:label>

        <form:input path="mail" />        
        <form:errors path="mail" cssClass="errors" />
    </p>
    <p>
        <form:label path="age">나이</form:label>
        <form:input path="age" />
        <form:errors path="age" cssClass="errors" />
    </p>
    <p>
        <form:label path="confirmed">확인</form:label>
        <form:checkbox path="confirmed" />
        <form:errors path="confirmed" cssClass="errors" />
    </p>
    <input type="submit"/>
</form:form>


 

 

 


 

 



『 JSP 샘플 작성 』

​<소스코드>

​<%-- Spring커스텀 태그 정의 --%>
<%@ taglib uri="http://www.springframework.org/tags" prefix="spring" %>
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form" %>  
<spring:hasBindErrors name="sampleCommand">
<div>
    <font color="red"><spring:message code="error.input" /></font>
    <%-- 공통 에러메시지 표시 --%>
    <font color="red"><c:forEach items="${errors.globalErrors}" var="error">
        <spring:message message="${error}" /><br/>     </c:forEach></font>
</div>
</spring:hasBindErrors>


 

 

 

 

'자바 > JAVA...Spring' 카테고리의 다른 글

Spring 3.2 & MyBatis] 에러 메시지 정의  (0) 2015.12.18
Spring 3.2 & MyBatis] JSP 샘플 작성(2)  (0) 2015.12.18
Cross-Browsing  (0) 2015.12.18
XMLHttpRequest 객체 생성  (0) 2015.12.18
XMLHttpRequest의 개요  (0) 2015.12.18

+ Recent posts