본문 바로가기

웹(Web)21

[Spring] 캐싱이란? 캐싱 => 변하지 않는 값(과거의 서울 날씨 등)을 캐싱을 통해 api 사용료, 서버부하 절감 @Scheduled(cron="001***") => 매일 새벽 1시마다 실행 / 각각은 초분시날달주 0/5 ***** 은 5초마다 실행 2023. 4. 5.
[Spring] 트랜잭션(Transaction)이란? 트랜잭션이란 데이터베이스의 상태를 변화시키기 위해 수행하는 작업단위 원자성,일관성,독립성,지속성 => 원자성을 만족시키기위해 전체를 커밋(commit)시키거나 롤백(rollback)시킨다. 여러 트랜잭션이 경쟁하면 (서로다른 사용자가 같은 내용을 수정중일때 조회하려함) => dirty read 여러 트랜잭션이 경쟁하면 (특정값을 a가 쿼리 2번날릴때 중간에 b가 커밋) => non-repeatable read 일관성 해침 여러 트랜잭션이 경쟁하면 (특정 범위 내 a가 쿼리2번날릴때 중간에 b가 커밋) => phantom read 일관성 해침 spring에서는 @Transactional으로 클래스,메서드 위에 추가 => 트랜잭션 기능이 적용된 프록시 객체 생성 Isolation (격리수준) : 트랜잭션에서.. 2023. 4. 4.
[Spring] JPA란? 오늘은 https://start.spring.io/를 통해 스프링을 시작하고, test code 를 통한 TDD를 경험해보았다. JDBC: SQL Mapper중 하나 => 직접 SQL 쿼리를 작성 -> 단점: 매번 db마다 쓰기 힘듬 JPA: ORM(Object Relation Mapping)중 하나 => java의 객체와 db의 테이블을 연결시켜주면 SQL 쿼리 자동완성 mysql mac에 설치 윈도우와는 다르게 mac에서는 brew install mysql과 https://dev.mysql.com/downloads/workbench/ workbench도 설치해줘야한다. 일반적으로 mysql port number = 3306이다. 인텔리제이와 연결해주기위해 https://dev.mysql.com/dow.. 2023. 4. 4.
JS Essential (3) 안녕하세요! 공대남입니다! 오늘도 이어 JS 을 배워 볼게요 이벤트 버블링과 이벤트 캡처링 버블링은 하위 요소를 클릭했을 때 하위 요소부터 상위 요소까지 이벤트가 전파되는 것을 말했다면, 캡처링은 하위 요소를 클릭했을 때 상위 요소부터 하위 요소까지 이벤트가 전파되는 것을 말합니다. 트랜지션 서서히 색 변함 #color { transition-property: background-color; transition-duration: 3s; } 콜백 콜백 함수 (Callback Function) 란 함수 안에서 실행되는 함수 콜백은 비동기 동작에서 매우 유용하게 사용됩니다. function appendHello(callback) { let hello = document.createElement('p'); he.. 2023. 2. 10.
728x90