본문 바로가기

전체 글

(267)
라우팅 기본 동적 세그먼트 ( 라우트 파라미터 ) 각각의 사용자에 대해 같은 레이아웃 but 다른 사용자 ID 로 랜더링 되어야 하는 User컴포넌트 다음은 모두 user컴포넌트에 매핑 됩니다. 그리고 :id 는 컴포넌트에서 this.$route.params 로 가져올 수 있습니다. const router = new VueRouter({ routes:[ { path ; ' /user/:id' , component: User } ] )} tip) 세그먼트만 다른 같은 컴포넌트를 재호출 할 경우, 새로그리는 것 보다 기존것을 수정하는 것이 더 빠르다. 그러므로 다음 두가지중 한가지를 사용하자. const User = { template: '...', #######################################..
SpringSecurity 설정후 Post 요청 불가능 ( 403에러 ) 해결 Security 설정후 잘 작동하던 PostMapping 컨트롤러가 작동하지 않았다. CSRF() 로인해서 post 요청이 막히는것. SecurityConfig.java 의 configure 메소드에 다음을 추가해주면 된다. http.csrf().disable();
[JPA] Error executing DDL "alter table post drop foreign key jpa: database-platform: org.hibernate.dialect.MySQL5InnoDBDialect open-in-view: false show-sql: true hibernate: format_sql: true ddl-auto: create >> 기존에 있던 테이블을 버리고 새롭게 생성하는것. ddl-auto : create 를 update로 변경하면 문제해결
SOCKJS ( 웹소켓 ) 어플리케이션이 웹소켓 API 를 사용할 수 있도록 해준다. ( 코드 변경없이 런타임에 필요시 비웹소켓으로 자동 대체해준다.) SockJS 클라이언트(자바스크립트) : 브라우저에서 사용하는 클라이언트 라이브러리 - “GET /info” 정보를 전송하여 서버에서 기본 정보를 받는다 - 브라우저에 알맞는 어떤 전송수단을 사용해야 할지 선택 ( 웹소켓 or HTTP 스트리밍옵션 or HTTP 폴링 ) - http://host:port/myApp/myEndpoint/{server-id}/{session-id}/{transport} 형식으로 전송 요청 SockJS 서버 ( 스프링프레임워크 ) : Spring-WebSocket 모듈을 포함하여 구현한다.
JPA 매핑에 관하여 ( 엔티티 매핑 )
JPA 영속성에 관하여
Clean Code with Spring 코드는 깃에 올리는 순간 내 코드가 아닌, 남들이 읽어야 하는 "책"이 된다. 1. 코딩 할 때 생각을 하며 코딩하는가? - 코드에 중복된 부분은 없는가? - 코드가 무엇을 하는 것인지 이해가 직관적으로 되는가? - 코드의 위치가 적절한가? - 수정을 염두하여 개발하였는가? 2. 객체 지향적인 코드를 짯는가? - 다른 오브젝트에게 필요한 작업을 해달라고 요청한다. Controller > Service > DAO 3. 테스트 하기 좋은 코드인가? - 한개씩 테스트하려면 ( 테스트 코드를 작성하기 편하려면) 역할분리 / 종속코드줄이기 필요 ex > MailSender 로 코드를 작성하고 DI 로 MockMailSender or SMTPMailSender를 주입해준다. 4. 함수명 , 함수인자 4개이하 5. ..
Created / Mount Created 는 인스턴스가 작성된 후 동기적으로 호출되는 지점이다. 이 단계에서 인스턴스는 데이터 처리, 계산된 속성, 메서드, 감시/이벤트 콜백 등과 같은 옵션 처리를 완료한다. 하지만 인스턴스가 화면에 마운트 되기 전이므로 아직 $el 등을 사용할 수 없다. Mount 는 인스턴스가 작성된 후 화면에 마운트 된 시점이다. 예를 들어 Craeted 에 data를 수정하는 로직을 넣을 경우 -> Watch 에 잡히지 않는다. 하지만 Mount 에 data를 수정하는 로직을 넣을 경우 -> Watch 에 잡힌다.