목록분류 전체보기 (208)
YJ의 새벽
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/b6NdPF/btsc0ZHJL1J/qi25W1b6kZjqe844L7U5lk/img.png)
---- js 를 참고하여 . 회원검색시 리스트 뽑아보도록 하자 . ---- MemberController . 컨트롤러에서 맵핑. --- MemberServiceImpl , 서비스 클래스 ---- MemberDAO , DAO 에서 DB접근 --- member-mapper.xml 에 쿼리문 추가 ! 들어온값 확인 !! 전체목록 뽑기 !! ----------------------------------------------------------------------------------------------------------------------------------------------------- js 를 참고하여 전체목록을 뽑아보자. --- MemberController 컨트롤러 클래스에서 맵핑 !!..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Gq4BU/btscZqkPDHm/u6y8il8hjmSSE67jdc7IZK/img.png)
스프링 예외처리 방법 ( 3가지 , 중복사용 가능 ) 1 순위 : 메서드 별로 예외처리 ( try ~ catch / throws ) 2 순위 : 하나의 컨트롤러에서 발생하는 예외를 모아서 처리 ( @ExceptionHandler ) 메서드에 작성. 3 순위 : 전역 (웹 애플리케이션) 에서 발생하는 예외를 모아서 처리 ( @ControllerAdvice ) 클래스에 작성. -- Service 클래스에 작성했을때 . --- ExceptionController 클래스에 전역으로 작성했을때 . -- 에러발생시 . common/error .jsp 로 넘김 . -- error.jsp . --- 에러 발생했을때 !!! error.jsp 파일로 넘어가는것을 확인.
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/pE0K9/btscPTPI7Cl/U1dQuuTg0GOgxGCdURPMaK/img.png)
-- 회원가입 form 을 참고하여 , DB저장 해보자 . -- MemberController 에서 -- @ModelAttribute 로 객체를 받아오자 , VO 변수명과 , id 의 값이 일치해야함 !! -- 같은 name을 가진 주소는 하나의 문자열로 셋팅되어있다 . String[] 배열로 받아오자. -- 도로명주소에 ' , ' 포함하는 경우가 있어 이를 구분자로 사용할 수 없음. -- String.join ( "구분자" , 배열 ) 사용. -배열을 하나의 문자열로 합치는 메서드. -ex ) [ a, b, c ] --> join(" , , " , 배열 ) --> [ a,, b,, c ] --MemberService 에서 --입력받은 비밀번호를 암호화하여 , setMemberPw. 셋팅. --Membe..
Daum Postcode Service User Guide Daum 우편번호 서비스 우편번호 검색과 도로명 주소 입력 기능을 너무 간단하게 적용할 수 있는 방법. Daum 우편번호 서비스를 이용해보세요. 어느 사이트에서나 무료로 제약없이 사용 가능하답니다. postcode.map.daum.net 참고 !! ** jsp onclick="함수명" 에다가. onclick="return 함수명" 을 넣어주자 .
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dZ7FNc/btscPbWIybn/tiskPPQDKzeCjMymMoj3X0/img.png)
-- 컨트롤러에서 반환되는 값은 forward 또는 redirect 를 위한 경로인 경우가 일반적. --> 반환되는 값은 경로로 인식됨. --> 이를 해결하기위한 어노테이션 ?? @ResponseBody : 반환되는 값을 응답의 몸통(body) 에 추가하여 이전 요청 주소로 돌아감 --> 컨트롤러에서 반환되는값이 경로가 아닌 "값 자체" 로 인식됨. -- ajax 통신으로 gson 라이브러리 pom.xml 에 추가 !! com.google.code.gson gson 2.9.0 --- 이메일 중복체크 해보자 . --- JS 에서 넘겨주는값을 참고하여 , 연습해보자 . -- Controller 에서 맵핑. ( MemberController.class ) -- Service 에서 dao 로 패스 ( Membe..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/EHLxQ/btscPTuzHoG/oKEbCTE5gBJnUy6Nb6Gd51/img.png)
--- 암호화가 되지 않은 PW 를 '평문상태' 라고 한다 . -- spring-security 모듈을 pom.xml 에 추가해주자 . -- Core , Web , Config version 5.7.1 사용 . https://mvnrepository.com/search?q=spring-security -- Core , Web , Config version 5.7.1 사용 . --- 복사해서 !! pom.xml 에 붙여넣기 org.springframework.security spring-security-core 5.7.1 org.springframework.security spring-security-web 5.7.1 org.springframework.security spring-security-conf..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bLhvws/btscApARukM/KjruMRSaYQiuQJYuB1rhUk/img.png)
--- MyBatis 설정 끝냈으니 . --- 기존 MEMBER 테이블의 컬럼들만 , 새로운 MEMBER_S 테이블로 복제 . ( NOT NULL 제약조건만 복제 ) --- 기존 ENROLL_DT 컬럼에 기본값 지정. --- 기존 SECESSION_FL 컬럼에 기본값 지정. --- 기존 MEMBER_NO 에 기본키 지정. --- 기존 SECESSION_FL 에 CHECK 제약조건 추가 . --- 시퀀스 생성 -- 테스트용 데이터 추가 . -------------------------------------------------------------------------------------------------------------------------------------------------------..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cMRoLO/btscwnvDYlC/dU67uOLx1txr6q5BY5KiD0/img.png)
MyBatis 사용 해보자 . -- MemberService 인터페이스, MemberServiceImpl 클래스 (@Service ) 생성. -- @Service : 비즈니스 로직을 처리하는 클래스임을 명시 + bean 등록, -- @Autowired : bean으로 등록된 객체중 타입이 같거나, 상속관계인 bean을 주입해주는 역할 -- @Repository : 영속성을 가지는 DB/ 파일과 연결되는 클래스임을 명시 + bean 등록. -- Service 인터페이스로 구분지은 이유 ????????? 1. 프로젝트에 규칙성을 부여하기 위해 . 2. Spring AOP 를 위해서 필요 . 3. 클래스간의 결합도를 약화 시키기 위해서 . -- 제어의역전 . 으로 new MemberServiceImpl() 사..