목록Spring (37)
YJ의 새벽
![](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() 사..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bFJH5Z/btsbSg4wmNI/Qfk8dkJVzyLgxnytwyGHK1/img.png)
web.xml ( 배포 서술자 ) -- WAS (Web Application Server ) : 동적 웹 ( 요청에 따라 응답페이지 생성) 에서 사용하는 서버 -- WAS 가 실행될때 가장 처음으로 읽어들이는 문서 -- 서버 실행시 초기 설정 내용 또는 설정 내용이 작성된 파일을 읽고 수행하도록 함. DispatcherServlet : 요청/ 응답을 나눠주는 서블릿. ( servlet-context.xml ) --FrontController 라고 함. --모든 요청을 앞에서 받아들여 알맞은 Controller 로 연결을 해주고, Controller의 반환 결과에 따라서 알맞은 View 를 선택해 클라이언트에게 응답하는 역할. Logger / Debug Mode 사용 -- Logger 객체 생성 ( 해당 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/MeGP0/btsbQGbtbln/ozNP0xqoXBqfXpPvflGb40/img.png)
STS 폴더 안에 . lombok. jar 파일 넣어주기 . --> Shift + 마우스 우클릭 = PowerShell 창에서 lombok 실행 ( lombok 에서 STS 경로 넣어주자 ) STS 구성설정 들어가서 jdk 경로 추가 New Spring Legacy Project 생성 후 . MVC Project 를 만들건데. MVC project가 보이지 않으면 Configure templates 클릭 . 이거빼고 다지움 그리고 프레임워크 재시작 . -- 연습용 Project 이름 : comm, -- 패키지경로 : edu.kh.comm --------------------------- 이클립스 초기 설정 . windsow -> Preferences -> General -> Workspace windso..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ctGfYe/btsbMl0KzPt/MGHqE0zTYEKxpRdpq04841/img.png)
Library -- 개발자가 만든 클래스들의 나열로, 다른 프로그램들에서 사용할 수 있도록 제공하는 방식. FrameWork -- 코드를 구현하는 개발시간을 줄이고 , 코드의 재사용성을 증가시키기위해 일련의 클래스 묶음이나 뼈대, 틀을 라이브러리 형태로 제공되는것. -- 제어의 역전 ( 제어의 흐름 주도성이 FrameWork 에게 있음 . ) Spring Framwork -- 동적인 웹 사이트를 개발하기 위한 여러가지 서비스를 제공 -- 전자정부 표준 프레임워크의 기반 기술. -- IOC ( Inversion of Control ) 제어의 역전 --객체의 제어권이 개발자가 아니라 프레임워크에 있음. --객체의 생성, 생명주기 관리까지 프레임워크가 주도. --객체를 생성,직접 호출하는것이 아니라, 만들어진..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cJu9IN/btr8LLnNwEZ/vTOyxw4AD0D6KlMcIUYlZk/img.png)
private 캐시 -> public 캐시 캐시 무효화 -- Chche-Control : no-cache, no-store, must-revalidate -- Pragma : co-cache ( HTTP 1.0 하위호환 대비 ) -- 위에 적은 그대로 다 넣어주자 .!! --Chche-Control : no-cache - 데이터는 캐시해도 되지만, 항상 원서버에 검증하고 사용 (이름주의) --Chche-Control : no-store - 데이터에 민감한 정보가 있으므로 저장하면 안됨 ( 메모리사용후 빨리삭제 ) --Chche-Control : must-revalidate - 캐시 만료후 최초조회시 원 서버에 검증해야함. - 원 서버 접근실패시, 반드시 오류발생 - 504 error - 캐시 유효시간이라..