자바 지네릭
포스트맨사용 그림
IoC와 DI
@Transactional,@NoArgsConstructor,@RequiredArgsConstructor,@AllArgsConstructor,@EntityListeners,@MappedSuperclass,@Getter
비영속, 영속, 준영속, 영속화,영속성 컨텍스트의 이점,saveFlush
맛보기 자동시간만 우선
@Before @BeforeClass @BeforeEach @BeforeAllSpring
@EnableScheduling, @Scheduled
작성중 스프링 시큐리티(인증 인가를 관리해주는것)
javax부분을 jakarta로 바꿔주면 된다
Valid와 Validated
gradle이 maven보다 최대 100배좋다.
시큐리티의 구조아직 미정리 참조사이트시큐리티란 무엇인가 아직 넣지않음 렉이 심해서 내일 마저하기로
@Id@GeneratedValue(strategy = GenerationType.IDENTITY)
디비의 내용을 다른사람이 변경하거나 마음대로 변경대는 상황을 줄이기 위해서DTO(Data Transfer Object)를 이용하여 DB와 데이터를 주고 받고 하는것이다.
LocalDateTime 오류, 직렬화오류관련 에러코드(406,400,500), 버전오류, JPA관련오류
authorizeRequests()
1.readOnly2.rollbackFor3.no-rollback-for-예외처리4.timeout
프록시
비슷한(중복되는) 메소드, 필드, 코드들을 Aspect을 이용하여 모듈화 시키는것
@PathVariable @RequestParam
AuthenticationPrincipal는 SecurityContextHolder.getContext().getAuthentication().getPrincipal()라고 간단히 생각할수도있다.
UserDetails, UserDetailsService 란?
인터페이스와 같은 Spring Security의 개념과 구현은 액세스 권한을 부여 / 제어하는 권한을 얻습니다. Serializable를 상속받아 사용한다. - high-level authority이라고 부른다.SecurityFilterChain에서 설정해줘야한다.
@Target, @Retention,@Component(component, target,retention)
@Configuration와@Import Annotation활용방법
@EnableWebSecurity와 내용에서 사용하는 어노테이션들정리 링크
prePostEnabled() 어노테이션의 활성화 시작지점,securedEnabled() security어노테이션을 활성화할껏인지 안할것인지 order여러개일때의 우선순위
돌아가는방식.
스프링 예외처리.. 자세히보기
@Scheduled 어노테이션의 구성 주요요소 5가지 (cron, fixedRate, fixedDelay, initialDelay,Parameterizing)
디스패처 서블릿 동작과정 과 나온이유 나온 문제점 해결방안
참조사이트1에서 html이 아닌mustache를 활용하여 web페이지 구상하기
페이징 처리..
DDD(Domain-Driven Design) 계층구조(Layered Architecture) DDD : 도메인 주도 설계 도메인을 중심으로 설계해 나가는것이다.사전적 의미는 '영역', '집합'이다. '실세계에서 사건이 발생하는 집합' 이라고 생각하면 쉽다.
Domain(=Entity),DAO(Data Access Object) DTO(Data Transfer Object),VO(value Object)
Service단 메소드의 단위테스트 메소드 작성
1. TDD는 테스트 코드 메소드 부터 작성하고 그에 맞춰서 로직메소드를 작성한다. 2. 단위테스트는 메소드 단위이다. 3. DB연동 서버 연결없이 가능하다. 4. 작동방식에 따라 올바른 테스트 어노테이션을 사용하자
SOLID 1.SRP : 단일 책임원칙 2.OCP : 개방-폐쇠 원칙 3.LSP : 리스코프 치환 원칙 4.ISP : 인터페이스 분리원칙 5.DIP : 의존관계 역전원칙
controller와 repository에 단위테스트를할껀데테스트는 다른 테스트메소드에 의존관계가 없어야한다.테스트 코드 메소드는 각자 돌아갈 수 있어야한다.예)회원가입없이 로그인/ 회원가입,로그인필요한데 없이 게시글작성 등
강력한 리포지토리 및 사용자 지정 객체 매핑 추상화리포지토리 메서드 이름에서 동적 쿼리 파생기본 속성을 제공하는 구현 도메인 기본 클래스명료한 추적기능 지원(생성일시, 마지막 변경일시, 생성자, 마지막 변경자)사용자 지정 리포지토리 코드 통합 가능성JavaConfig
1.컨테이너에 등록된 빈 조회 2.스프링 빈 조회 2.1타입으로 조회 2.2특정타입 2개이상이 있을때(조회@Quilifier,@Primary) 2.3스프링 빈 조회 - 상속관계 Object로 조회하면 모든 빈이 나온다. 이유는 Object는 모든타입의 부모이기 때문이다
1.싱글톤 패턴 클래스의 인스턴스가 딱 1개만 생성되는 것을 보장하는 디자인 패턴이다 2.싱글톤은 무상태(stateless)로 설계해야한다. 3.싱글톤생성시 공유필드는 조심해야하며 40스프링 설정 정보 클래스는 항상 @Configuration을 사용하자!
@Bean이나 Xml 등을 통해 설정정보에 직접 등록할 스프링 빈을 나열했다. @Autowired이라는 의존관계를 자동으로 주입하는 기능도있다. @Component라는 어노테이션이 붙은 메소드들을 찾아서 자동으로 스프링 빈으로 등록해준다. # 중복 등록과 충돌
jwt와 redis..
만들기
1-1.생성자주입 1-2.수정자주입(setter주입) 1-3.필드주입 1-4.일반 메서드주입
스프링 빈 없이도 동작해야할때가있다 @Atutowired만 사용하면 required의 옵션 기본값이 false가 아니라면 오류가 발생한다.
1. get과 post의 차이점 2. get을 이용하여 스프링으로 데이터를 보내는법 3. 카카오지도를 할때 지도가 안나올때의 상황중하나 4. $을 찾을수없습니다5. Failed to parse multipart servlet request
스프링 웹 소켓을 이용하여 1:1통신 해보기
1. 웹소켓의 배경 2. 웹소켓의 원리3.웹소켓의 개념 4. 웹소켓의 문제점5. 나오는 용어들
JQPL , Criteria, Querydsl
이런 오류가 나왔다.yml파일은 들여쓰기가 중요하다.한칸더 들여쓰기 하니까 찾지 못한다.또 한가지 gradle에 넣고 새로고침해서 적용했는지 살펴보자한번씩 하지 않고 햇다고 착각했을수 있으니 고민해보자
설치 아파치사이트 링크 (23.04.06일 기준) 맨위에서 왼쪽 Apache 바로 아래 있는 Download 클릭 -> Download Releases 를 눌러서 이동한다. > 이게 5.X일수도 있고 6.X일수도 있고 앞이나 뒤나 바뀔수 있다. Apache JMe
APM(Application Performance Management)
APM /Prometheus + Grafana사용
WAS, 서블릿, Jsp
JSP와 Thymeleaf
세션과 OAuth2같이 사용시 문제
webapp바로 안에 넣어줍시다.