Connection pool JDBC API 를 이용해서 DB와 Connection 을 하는작업은 비용이 많이 발생한다. Connection Pool을 이용하면 애플리케이션 로딩 시점에 Connection 객체를 미리 생성하고, 애플리 케이션에서 디비 연결이 필요할 경우 미리 준비된 Connection 객체를 상용하여 애플리케이션 성능을 향상 시킬 수 있다. 다음은 MYSQL 문서에 나와있는 테이블이 행을 산입하는데 필요한 대략적인 수치(시간의 비율)이다. 아래 문서에서 알 수 있듯 행을 삽입할때 디비 연결 단계가 가장 비용(시간)이 든다는 것을 알 수 있다. 행을 삽입하는 데 필요한 시간은 다음에 따라 결정됩니다. 숫자는 대략적인 수치를 나타내는 다음 요소들 크기: 연결: (3) 서버로 쿼리 보내기: ..
데이터 타입 🤼 undefined vs null 변수의 값이 둘 다 비어있다는 뜻인데 왜 두가지 타입으로 나눠 놨을 까?유 🫵 결론부터 undefined는 변수는 선언되어있지만 자료형이 결정되지 않은 변수(자스는 동적할당) null은 자료형은 객체이며 값이 비어있는 변수이다. 즉, 변수가 아무런 객체를 참조하지 않음을 명시적 표현 위 두가지의 차이로 값이 비어있다는 같은 의미를 두 가지의 타입으로 나눔 👀 좀 더 자세히 📌undefined 값을 할당하지 않은 변수를 undefined type이라고한다. undefined는 개발자가 할당한 값이아니라 자바스크립트엔진이 undefined로 초기화한다. 따라서 이제 우리는 알 수 있다. 콘솔에 언디파인드가 뜬다. = 변수에 값을 할당해 주지않았구나 하고 변부의..
fetch() 함수를 알아보자 fetch() 함수가 뭔데? 클라이언트단에서 비동기로 네트워크를 통해 api를 호출해 리소스를 요청하고 응답받을 수 있다. 예전엔 request,axios,jQuery같은 라이브러리를 이용해서 http를 요청하고 응답받았지만 요즘은 브라우저에서 기본으로 fetch()함수를 지원하기 때문에 상대적으로 더 좋은 대체제인 fetch()함수를 사용한다고 합니다. 참고로 fetch는 브라우저에서 제공하는 window객체의 내장객체 이기 때문에 당연하게 node.js같은 환경에서는 사용이 불가하다. 또 익스플로워 같은 구식 브라우저에서 동작하지않을 수 있다. 기본 문법 fetch ('api주소', {옵션 객체}) //기본동작은 get방식으로 동작한다. fetch()의 리..
자바스크립트에서 this는 일반적으로 객체에 속한메서드인경우는 그 객체를 가르킨다, 하지만 js의 특징으로 this를 함수를 통해서 따로 지정해줄 수도 있는데 이 (call,apply, bind)함수들을 알아보자. call 이 메서드는 모든 함수에서 사용가능하며, this를 지정해 줄 수있다.const bin = { money : 200, } const jisu = { money:100, } function UpDateSalary(salary){ this.money += +salary; this.salary = salary; } UpDateSalary.call(bin,1000); console.log(bin); /* { money: 1200, salary: '1000' } */ UpDate..
함수 선언식 - Function Declearations function 함수명(){ 로직 } 함수 표현식 - Function Expressions let 함수명 = function (){ 로직 } 함수 선언식 vs 함수 표현식 함수 표현식은 호이스팅에 영향을 받지 않지만, 함수 선언식은 호이스팅에 영향을 받는다. 그 이유는 자바스크립트는 초기화전 자바의 모든 함수선언문을 찾아서 생성해 둔다. 따라서 함수가 함수 선언문보다 위에 있어도 실행이 된다. 호이스팅(hoisting) : 함수를 사용할 수 있는 범위 함수 선언식 testFunction(); function testFunction(){ console.log("함수 선언문") } // output : 함수 선언문 함수 표현식 testFunction(..
스프링, JPA의 탄생 EJB : 자바빈즈(Enterprise JavaBeans) EJB란 엔터프라이즈 자바빈즈(Enterprise JavaBeans; EJB)는 기업환경의 시스템을 구현하기 위한 서버측 컴포넌트 모델이다. 즉, EJB는 애플리케이션의 업무 로직을 가지고 있는 서버 애플리케이션이다. EJB 사양은 Java EE의 자바 API 중 하나로, 주로 웹 시스템에서 JSP는 화면 로직을 처리하고, EJB는 업무 로직을 처리하는 역할을 한다. 스프링이 생기기전 개발자들은 엔터프라이즈 자바빈즈(Enterprise JavaBeans; EJB)라는 서버 앱으로 개발을 했는데 아래와같은 단점이 있었다. EJB 단점 객체지향적이지 않음 복잡한 프로그래밍 모델 특정 환경, 기술에 종속적인 코드 컨테이너에 안에..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.