4.Chapter04 : 조건문과 반복문 4.1 코드 실행 흐름 제어 자바 프로그램은 위에서 아래로 실행하는 흐름을 가지고 있다. 이러한 실행 흐름을 개발자가 원하는 방향으로 바꿀 수 있도록 해주는 것이 흐름 제어문이다. 4.2 조건문(if, switch) if문 ## if int score = 93; if(score >= 90){ //조건식 System.out.println("점수가 90보다 큽니다."); } 조건식의 결과에 따라 블록 실행 여부가 결정된다. 조건식에는 true / false를 산출할 수 있는 연산식이나 boolean 변수가 올 수 있다. 여기서는 score가 93이므로 실행문을 수행한다. 조건식이 true가 될 때 실행해야 할 문장이 하나 밖에 없다면 `{}`중괄호는 생략 가능하나, ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/BeHdr/btqtYnf728F/88ukHYnWgiwU9oAtdMNVAK/img.png)
3.Chapter03 : 연산자 3.1 연산자와 연산식 프로그램에서 데이터를 처리하여 결과를 산출하는 것은 연산(operations)이라고 한다. 연산에 사용되는 표시나 기호를 연산자(operator)라고 하고, 연산되는 데이터를 피연산자(operand)라고 한다. 연산자와 피연산자를 이용하여 연산의 과정을 기술한 것을 연산식(expressions)라고 부른다. ex) x+y (`+`는 연산자, 'x'와 'y'는 피연산자) 연산자는 필요로 하는 피연산자의 수에 따라 단항, 이항, 삼항 연산자로 구분된다. 단항 연산자 ++x; 이항 연산자 x+y; 삼항 연산자 (sum >90) ? "A" : "B"; 연산식은 다른 연산자의 피연산자 위치에도 올 수 있다. ex) boolean result = (x+y) <..
회사에서 곧 DB에서 데이터를 추출하여, 메일로 보내는 작업을 할 것 같아서, 한번 미리 간단하게 예습삼아 만들어 봤습니다.개발 환경은 Springboot + Maven 입니다.먼저 의존성 설정을 해줍니다. org.springframework.boot spring-boot-starter-mail 그리고 properties 설정! 저는 SMTP로 google gmail을 사용하였습니다. spring.mail.host=smtp.gmail.com spring.mail.port=587 spring.mail.username= gmailId spring.mail.password= password spring.mail.properties.mail.smtp.starttls.enable=true spring.mail.p..
API를 호출하여 원하는 데이터를 가지고 왔는데, 이 데이터를 그대로 저장하는게 아니라 가공하여 저장하고 싶은 데이터만 저장해야 하는 경우가 있습니다. 말로 설명하려니 조금 어려운 부분이 있네요... 왼쪽 Order에서 Data를 오른쪽 OrderDTO에 옮겨야 하는 경우!! 휴.,.이럴경우 보통 Getter, Setter 또는 Builder Pattern을 사용하여 값을 옮겨 줍니다.간단하게 변수가 2~5개 정도면 상관 없지만, 엄청 나게 많은 경우에는 가독성도 안좋고 노가다 작업이 될 것입니다. 이럴 때 ModelMapper를 사용합니다. 밑에 Url을 클릭하면 정말 자세하게 설명이 나와있습니다. http://modelmapper.org/getting-started/ 먼저 의존성을 추가합니다. 그리고..
저 같은 경우는 회사에서 Error 처리를 할 때 보통 @ControllerAdvice와 @ExceptionHandler를 사용하여 에러 메시지를 처리하였습니다.그러나 지금 개인 토이 프로젝트를 만들며.. 굳이 저렇게 하기 보다는 아래 깃헙 페이지와 같이 간단하게 에러 메시지를 띄워주게 만들고 싶었습니다. 그래서 조금 시간이 지났지만, 예전에 백기선님의 스프링부트 강의를 떠올리며 만들어 봤습니다. 스프링부트는 기본적으로 basicErrorController를 통해 기본 예외처리가 설정되어 있습니다. 이를 통해 HTML과 JSON으로 Error를 받아 볼 수 있는데요. 바로 Whitelabel Error Page입니다. Springboot를 사용하신다면 무조건 최소 1번은 보셨겠죠??이러한 Whitelab..
'자바 기반의 마이크로서비스 이해와 아키텍처 구축하기'는 약 4달간 함께 했던 회사 선배가 추천해준 책이다.항상 읽어야지 하며 미루다가, 주말을 활용하여 읽어 봤다. 기존 모놀리스 서비스를 구축하는 방법에서, 왜 마이크로 서비스로 구축을 해야 하는지 간단한 예제와 함께 설명해 준다. 먼저 모놀리스 아키텍처는 모든 업무 로직이 하나의 애플리케이션 형태로 패키지 되어 서비스되고, 데이터 또한 한 곳에 모인 데이터를 참조하여 서비스하는 우리가 일반적으로 개발하고 있는 방법이다. 이에 비해 마이크로 서비스 아키텍처는 아주 작은 단위로 동작하는 서비스가 구동되도록 시스템 및 소프트웨어의 구성과 구성 요소 간의 관계를 정의하고 설계하는 방식이다. 두 아키텍처 간 가장 큰 차이 점은, 하나의 애플리케이션 형태가 아닌..
음.. 회사에서 관리자 페이지가 있는데, 5초마다 회원수를 조회하는 페이지 입니다. 많은 사람들이 접속하고, 동일한 쿼리를 계속 호출하기 때문에 DB Connection pool 문제와 여러 비효율적인 문제가 나타났습니다. 이를 개선하기 위해, cache를 도입해봤습니다.저는 오픈소스로 많은 사랑을 받고 있는 ehcache를 사용해봤습니다. https://www.ehcache.org/documentation/ 캐시를 사용하게 되면 Redis, Memcached를 먼저 생각하실 텐데.. 어디서 주워 들은 건 있어서. ㅠㅠ ehcache가 구현이 쉽고 빠르다는 이야기가 생각나서 선택했습니다.캐시는 제 사례와 같이, 동일한 데이터를 반복적으로 조회했을 때 이미 만들어져 있는 결과물을 조회하여, 자원낭비를 줄이..
2.Chapter02 : 변수와 타입 2.1 변수 2.1.1 변수란? 변수란, 하나의 값을 저장할 수 있는 메모리 공간이다. (수시로 값 변동될 수 있다.) 2.1.2 변수의 선언 int age; //정수(int)값을 저장할 수 있는 age 변수 선언double value; // 실수(double) 값을 저장할 수 있는 value 변수 선언 - 같은 타입의 변수 한번에 선언가능int x,y,z; - 변수 명명 규칙' 첫 번째 글자는 문자이거나 '$','_'이어야 하고 숫자로 시작할 수 없다.' 영어 대소문자가 구분된다.' 첫 문자는 영어 소문자로 시작하되, 다른 단어가 붙을 경우 첫문자를 대문자로 한다.(관례)ex) maxSpeed' 문자 수(길이)의 제한은 없다.' 자바 예약어는 사용할 수 없다. 2...
- Total
- Today
- Yesterday
- update set multiple
- 슬랙봇
- 뱅크샐러드 유전자
- java
- 업데이트 쿼리
- 슬랙
- update query mutiple row
- 몽고DB 완벽가이드
- MSSQL
- 그레이들
- 뱅크샐러드
- springboot https
- update set multi
- update query multi row
- update query set multiple
- spring-boot-starter-data-redis
- vue.js
- 이것이 자바다
- Slack
- effectivejava
- 싱글턴
- 슬랙 /
- update query
- multiple row update
- 뱅셀 유전자
- 다중 업데이트
- visual studio code
- 이펙티브자바
- SpringBoot
- gradle
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |