분류 전체보기 328

비동기 처리를 위한 ThreadPoolTaskExcutor

1. ThreadPoolTaskExcutor 스프링에서 제공해주는 클래스로 org.springframework.scheduling.concurrent패키지에 속하며 기본생성자 하나만 존재한다. 이는 쓰레드풀을 이용하여 멀티쓰레드 구현을 쉽게 해주는 클래스이다. 2. 관련 메서드 1) setCorePoolSize : corePoolSize값을 설정한다. 이는 동시에 실행시킬 쓰레드의 개수를 의미하며 default값은 1이다. 2) setAllowCoreThreadTimeOut : 코어 쓰레드의 타임아웃을 허용할 것인지에 대한 세터 메서드로 true로 설정할 경우 코어 쓰레드는 10으로 설정했어도 일정시간(keepAliveSeconds)이 지나면 코어 쓰레드 개수가 줄어든다. default값은 false이다..

2. HTML 태그

1. 태그 태그는 태그처럼 특별한 기능을 갖고있지 않고 CSS와 함께 쓰인다. 태그와 차이점은 display 속성이 block이 아닌 inline이라는 것이고 이는 CSS display 항목에서 세부 정보를 알 수 있다. 요약하자면 는 줄 바꿈이 되지만, 은 줄 바꿈이 되지 않는다. 뉴스스탠드 바로가기 주제별캐스트 바로가기 타임스퀘어 바로가기 쇼핑캐스트 바로가기 로그인 바로가기 2. 태그 option 태그는 옵션 메뉴를 제공하는 드롭다운 리스트에서 사용되는 하나의 옵션을 정의할 때 사용한다. 요소는 요소나 요소 내부에만 위치하고 요소는 아무런 속성도 명시하지 않은 채 사용할 수 있지만, value 속성은 명시하는 것이 일반적이다. 검색 통합검색 블로그 카페 - 카페명 - 카페글 지식iN 뉴스 사이트 - ..

여러 함수(Filter, Splice, FindIndex, Find...)

1. filter 특정 조건을 만족하는 새로운 배열을 필요로 할 때 사용 const numbers = [1,2,3,4,5,6]; const result = numbers.filter(number => number>3); console.log(numbers); //[1,2,3,4,5,6] console.log(result); //[4,5,6] 2. splice const months = ['Jan', 'March', 'April', 'June']; months.splice(1, 0, 'Feb'); // inserts at index 1 console.log(months); // expected output: Array ["Jan", "Feb", "March", "April", "June"] months.s..

3. CSS(cascading style sheet)

1. style 속성 mozilla 사이트 위에서 아래로 스타일은 전달된다. 자식에서 따로 설정 안하면 부모꺼 상속받음(글자는 상속, 배경 색은 상속 안 받음) 스타일 우선 순위 1) 시스템에서 만든 스타일 -> 제작자 스타일 시트의 중요(속성값 뒤에 !i )스타일 -> 제작자 스타일 시트의 일반 스타일 -> 브라우저의 기본 스타일 2) 인라인 스타일 -> id 스타일 -> 클래스 스타일 -> 태그 스타일 3) 같은 것 정의 하면 소스 순서에 따라 : 나중에 것이 앞에 것 덮어 씀 2. CSS selector 1) 태그 자체로 2) class 줘서 - group으로 사용 (div id로 묶고난 후 그 안에서 또 구별해야할 필요가 생길 때 ex 3) id - 문서 내에서 유일해야 함, class- 클래스 ..

스트림(stream)

1. 스트림이 생기게 된 배경 통상적으로 많은 수의 데이터를 다룰 때 컬렉션이나 배열에 데이터를 담고 for문과 Iterator를 이용해서 코드를 작성해왔다. 그러나 이러한 방식으로 코드를 작성한다면 너무 길고 알아보기 어려우며 재사용성도 떨어진다. 또한, 데이터 소스마다 다른 방식으로 다루어야 한다. 예를 들어 List를 정렬할 때는 Collections.sort(); 배열을 정렬할 때는 Arrays.sort(); 이러한 문제점을 해결하기 위해 스트림이 만들어졌다. 스트림은 데이터 소스를 추상화 함으로써 데이터 소스가 무엇이든 간에(List, Set, Map, 배열, 파일에 저장된 데이터 등) 같은 방식으로 다룰 수 있게 되었으며 이로 인해 코드의 재사용성이 높아졌다. 2. 스트림 생성 //주문 상품 ..

리눅스에서 YUM(Yellodog Update Modified) / apt

1. Yum이란 : Yum이란 Yellodog Update Modified의 약자로 레드햇 계열의 리눅스 배포판에서 사용하는 프로그램 패키지 설치관리 도구이다. yum명령어를 사용하면 패키지 의존성 문제를 자동으로 처리하면서 설치, 업데이트, 삭제를 진행할 수 있다. yum은 패키지 의존성 문제를 해결해서 자동으로 필요한 패키지를 알아서 설치해준다. 2. 명령어 사용법 : yum [옵션] [명령] [패키지 명] 3. yum 동작의 흐름: 1번 : yum install로 패키지 설치 명령을 실행한다. 2번 : /etc/yum.repos.d/ 디렉터리의 여러 설정 파일 들 및 CentOS-Base.repo 파일을 참고하여 인터넷상의 패키지 저장소 서버 주소를 얻는다. 3번 and 4번 : 패키지 목록을 저장..

var, let, const 변수 선언 차이

1. var var name = 'hello' console.log(name) // hello var name = 'good night' console.log(name) // good night var는 변수를 선언한 후에 다시한번 var로 선언해도 에러가 나오지 않고 각기 다른 값이 출력된다. 이를 보완하기위해 추가된 변수 선언방식이 아래의 let 과 const이다. let과 const의 공통점은 위에서 이미 변수가 선언되었을 경우 아래서 변수 재 선언이 되지 않는다.(아래의 에러메시지 출력됨) //Uncaught SyntaxError: Identifier '******' has already been declared 차이점(immutable여부)은 아래와 같다. 2. let let은 변수 재할당이 가..

변수명 짓는 방법

1. 변수명을 거의 동사로 시작하지 않는다.(boolean변수는 isLoggedIn) 명사, 형용사, 부사만 들어간다. 2. 최대한 간결하게 && 의미 명확히 전달되게 3. 관사 쓰는거 아니다. auser 이런 거 안된다. (users-복수, user-단수) 4. 전치사 쓰는 것 아니다.(~의 갯수) numberOfUsers 보다는 userCount아니면 numUsers 5. 마이크로소프트 오픈소스보면 변수명 잘 지어져있다. https://tecoble.techcourse.co.kr/post/2020-04-24-variable_naming/ 좋은 코드를 위한 자바 변수명 네이밍 JAVA… tecoble.techcourse.co.kr

@SuppressWarnings

1. @SuppressWarnings 이란? @SuppressWarning 어노테이션은 컴파일 경고를 사용하지 않도록 설정해주는 것으로 컴파일 에러가 나올 때 그 경고를 없앨 수 있도록 하는 것이다. 두 가지 종류를 같이 사용할 때는 @SuppressWarnings({"unused","unchecked"})처럼 객체 형식으로 묶어서 사용할 수 있다. //unused : 사용하지 않는 코드 또는 불필요한 코드가 있을 경우 경고를 억제시킨다. @SuppressWarnings("unused") private final Logger logger = LoggerFactory.getLogger(getClass()); //all : 모든 경고 //cast : 캐스트 연산자 관련 경고 //dep-ann : 사용하지 말..