728x90
반응형
728x90
반응형
항상 ajax는 submit으로만 해결했는데 form 없이 원하는 데이터를 뽑아쓸 수 있는 방법이 있다. 바로 FormData! // 원하는 필드만 넘겨주는 방식 var formData = new FormData(); formData.append("title", $("#title").val()); formData.append("content", $("#content").val()); formData.append("file", $("#file")[0].files[0]); $.ajax({ type: 'POST', url: '/board/save', processData: false, // 필수 contentType: false, // 필수 data: formData, success: function(data..
클래스 설계방법 - 실물세상 안의 상식으로 적용되야 한다. [is a] relationship : 상속 = 만약 cat is an animal 이란 문장으로 클래스를 설계한다면 Cat extends Animal 이 될 것이다. 하지만 animal is a cat이란 문장은 말이 되지 않기때문에 위와 같은 설계가 불가능하다. 따라서 is a 의 관계를 가지는 classes 들은 상속으로 클래스들을 설계한다. 상속으로 설계한다면 Animal a = new Cat()이란 설계가 가능하다. 역시 반대의 경우인 Cat c = new Animal()은 불가 [has a] relationship : 속성으로 설정 Police has a gun = 어떤 클래스가 다른 클래스의 기능을 가지고 있는 것. 만약 Police..
transaction 효과 - 애노테이션 추가 한번에 실행해야 하는 다수개의 SQL문장작업이 필요할 때 사용 예시 : 게시글 저장과 첨부파일 정보 저장(서버), 첨부파일 정보 저장(DB)이 동시에 필요함 예시2 : A은행에서 B은행으로 계좌이체 -> 상호간의 은행 서버에서 데이터 증감이 동시에 일어나야 함. 즉 한 transaction에 의해 실행되어야 한다. 실제 사용예시 @Service 클래스에서 사용되고 코드는 아래와 같다. 꼭 Service에서 사용할 필요는 없지만 @Service에서 로직을 수행하기 때문에 Service에서 수행 @Transactional(rollbackFor={Exception.class}) public String saveBoard(Board board, MultipartFi..
FormData를 사용해서 원하는 데이터만 입력하려고 하는데 위와 같은 오류 발생 한줄요약: ajax통신 옵션에 아래의 옵션을 추가하면 해결 contentType:false, processData:false,
프로젝트로 차트를 사용할 일이 있어 Date를 설정하던 중 new Date()함수가 작동이 안되는 오류가 발생했다. 그래서 서버에서 전송할 값 자체를 getTime(Date), getTimeinMilis(Calendar)로 자체 변환해주어 값을 적용했다. 한줄요약: apax차트 Date를 설정할 때는 그냥 맘편히 miliseconds로 보내서 바로 적용시키자
해결법: 너무나 심플함 JSP에서 post로 Submit을 할 때 form 태그에서 enctype="multipart/form-data" 를 추가해주면 해결
케이스: 마이페이지로 이동할 때 RequestParam 기본값이 1이여야만 PageHelper에서 값을 처리해서 pagination을 할 수 있었다. 따라서 기본값을 1로 주어야할 필요가 있었는데 아래와 같이 처리했다. required = false = null값을 허용하겠다는 의미 defaultValue = "1" num의 기본값을 1로 지정함 public String myPage(@SessionAttribute("id")String id, Model m, @RequestParam(value = "num", required = false, defaultValue = "1")int num) { 해결완료