일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 피보나치 예제
- 재귀함수 예제
- tomcat log
- Katalon Recorder 사용법
- 국세청 해외주식 양도세 신고방식
- 해외증권 양도세 한국투자증권
- bfs 미로탐색 java
- 피보나치함수
- katalon 비교
- 재귀 예제
- katalon
- katalon xpath
- 해외주식 양도세 신고
- 피보나치함수 예제
- recursion example
- 최대공약수 예제
- 테스트 자동화
- git 연동
- CSTS 폭포수 모델
- katalon 사용법
- 한국투자증권 해외주식 양도세
- 홈택스 해외주식 양도세
- javascript 자동완성
- oracle group by
- 톰캣 실시간 로그
- katalon 자동화
- js 자동완성
- java.sql.SQLSyntaxErrorException
- 한국투자증권 양도세 신고
- 주식 양도세 신고방법
- Today
- Total
목록전체 글 (390)
엄지월드
문제 방법 큐의 작동을 구현하는 문제이지만, 가장 나중에 넣은 값도 알아야 하고 가장 먼저 넣은 값도 알아야 해서 Deque로 풀어야 편하게 풀 수 있다. 코드 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.Deque; import java.util.LinkedList; public class Main { // 10845 public static void main(String[] args) throws IOException { Buffere..
트랜잭션 격리수준 - READ UNCOMMITED(커밋되지 않은 읽기) -> 성능 면에서 유리하긴 하다. - READ COMMITTED(커밋된 읽기) - REPEATABLE READ(반복 가능한 읽기) - SERIALIZABLE(직렬화 기능) 사용자는 웹 애플리케이션 서버(WAS)나 DB 접근 툴 같은 클라이언트를 사용해서 데이터베이스 서버에 접근할 수 있다. 클라이언트는 데이터베이스 서버에 연결을 요청하고 커넥션을 맺게 된다. 이때 데이터베이스 서버는 내부에 세션이라는 것을 만든다. 그리고 앞으로 해당 커넥션을 통한 모든 요청은 이 세션을 통해서 실행하게 된다. 락 타임아웃 SET LOCK_TIMEOUT 10000 (10초), 세션2에 설정하면 세션2가 10초 동안 대기해도 락을 얻지 못하면 락 타임아..
문제 처음에는 1씩 더해서 해결하려 했지만, 시간초과가 발생했다. 수학적 지식이 있어야 풀 수 있는 문제였다. 방법 유클리드 호제법을 사용하면 구하면 된다. 먼저, 최대공약수를 구하고 두 수의 곱 / 최대공약수를 하면 최소공배수가 되게 된다. x * y / gcd 예로 들면 두 수 28과 18이 있으면 28 % 18 = 10 18 % 10 = 8 10 % 8 = 2 8 % 2 = 0 최대공약수는 2이다. 28과 18을 계속 나누는 과정을 좀 더 자세히 말해보면 큰 수 % 작은수 = 결과가 나오게 되는데, 결과가 0이 아니게 되면 작은수와 결과를 다시 % 연산을 진행한다. 계속해서 연산을 진행하다가 % 연산 시 0이 나오면 작은 수가 최대공약수(gcd)가 된다. 코드 import java.io.*; imp..
기존 DriverManager를 통해서 커넥션을 획득하는 방법과 DataSource를 통해서 커넥션을 획득하는 방법에는 큰 차이가 있다. DriverManager는 DataSource를 통해서 커넥션을 획득할 수 있다. 참고로 DriverManagerDataSource는 스프링이 제공하는 코드이다. DriverManager DriverManager.getConnection(URL, USERNAME, PASSWORD) DriverManager.getConnection(URL, USERNAME, PASSWORD) DataSource void dataSourceDriverManager() throws SQLException { DriverManagerDataSource dataSource = new Drive..
커넥션풀 초기화 애플리케이션을 시작하는 시점에 커넥션 풀은 필요한 만큼 커넥션을 미리 확보해서 풀에 보관한다. 보통 얼마나 보관할 지는 서비스의 특징과 서버 스펙에 따라 다르지만 기본값은 보통 10개이다. 적절한 커넥션 풀 숫자는 서비스의 특징과 애플리케이션 서버 스펙, DB 서버 스펙에 따라 다르기 때문에 성능 테스트를 통해서 정해야 한다. 커넥션 풀은 서버당 최대 커넥션 수를 제한할 수 있다. 따라서 DB에 무한정 연결이 생성되는 것을 막아주어 DB를 보호하는 효과도 있다. 이런 커넥션 풀은 얻는 이점이 매우 크기 때문에 실무에서는 항상 기본으로 사용한다. 커넥션 풀은 개념적으로 단순해서 직접 구현할 수도 있지만, 사용도 편리하고 성능도 뛰어난 오픈소스 커넥션 풀이 많기 때문에 오픈소스를 사용하는 것..
Activity 안드로이드에서 하나의 화면을 구성하는 단위 Fragment ACTIVITY 내에서 동작이 가능한 '의존적'인 화면 구성 단 어 값만 싹 바뀌었네?라고 느껴질 수 있다. 앱을 구동하기 위한 설정 값 manifests 반드시 사용자에게 요청하는 퍼미션. 인터넷만 사용하기 때문에 인터넷 퍼미션만 사용. activity 반드시 정의되어야 한다. 정의되지 않으면 앱이 특정 그 화면을 이동할 때 activity 이동할 때 오류가 나서 꺼진다. LAUNCHER 시작되는 앱이 무엇인지 정의해준다. intent-filter 외부 or 자기 자신으로부터 호출했을 때에 특정 ACTIVITY를 바로 띄우는 용도로 사용 앱에서 특정한 위치로 이동시켜주고 싶을 때 사용 broadcast receiver 발송된 방..
SharedPreference란? 앱이 삭제되기 전까지 키, 값 데이터 저장을 하기위한 방법이다. 저장하려는 키-값이 비교적 적은 경우 SharedPreferences를 사용한다. 이때 키-값 정보들은 특정하게 지정한 '파일'들에 저장이 되며, 키-값 쌍을 읽고 쓸 수 있는 간단한 메서드를 제공한다. 사용 방법 [초기화] var pref = getSharedPreferences("관리할 파일 이름", Context.MODE.PRIVATE) [저장] pref.edit { putString("키, 값) apply() } [불러오기] pref.getString("name", "noname") get타입("키 명칭", "해당키가 없거나 키는 있지만 값이 없을때의 기본 값") 그 외에 getBoolean(), g..
onCreateView 전역변수에서는 null 체크를 해봤자 소용이 없다. 지역변수는 인정해준다. 다음 설명 중 올바른 것은? nullable 변수를 사용할때는 되도록 !!를 사용하여 값을 활용한다. 되도록 ?를 사용하거나 null 체크를 하는 if 조건문을 사용한다. RecyclerView의 어댑터에 특정 번지의 데이터를 변경을 알리는 것은 notifyDataSetChanged함수를 사용한다. 특정 번지의 변경은 notifyItemChanged(index)를 사용한다. Glide와 같은 이미지 다운로드 유틸리티는 인터넷 연결이 필수이다. 인터넷에서 이미지를 다운로드하지 않는 경우에도 사용이 가능하므로 필수는 아니다 interface는 이벤트 클릭 리스너에서만 유용하게 사용된다 interface는 클릭 ..
클래스 구성 화면 이동을 위한 클릭 이벤트 생성 RecyclerView의 어댑터에 클릭 인터페이스 구현체 전달 클릭 이벤트시 해당 항목의 정보(JSONObject)를 상세화면으로 전달 메인화면(FirstFragment)에서 데이터 넘기기 bundleOf 방식을 통해 두번째 fragment(상세화면)로 값 전달 상세화면(SecondFragment)에서 데이터 받기 arguments를 통해 값 수신 수신한 데이터를 바인딩된 컴포넌트들(이미지, 좋아요) 표시 constraintLayout 제약조건 시작점부터 종료점까지 선언한다. 가장 큰 장점은 속도이다. depth가 깊어질수록 느려진다. 근데 1depth에서 대부분 끝난다. 모든 단말기의 화면 디바이스의 대응한다. 사용방법 app:layout_constrai..
INFLATER : xml에 표기된 레이아웃을 객체화 시키는 것으로, xml 코드를 객체화해서 코드에서 사용하기 위한 것. xml을 갑자기 바꿔치기 할 때, 어딘가의 xml 화면을 집어넣을 때 사용. 어디서 갖고 오느냐와 같은 구조로 되어 있음. fun에서 :은 돌려주는 값이지만, class에서는 :이 상속 받았다는 뜻이다. createViewHolder : 이 viewHolder를 만들겠다. viewType 형태의 아이템 뷰를 위한 viewHolder 객체를 생성. 어떠한 형태의 화면을 사용할 것인데? 정의하는 것. onBindViewHolder : 행을 돌때마다, 즉, 화면에 그 행이 나타났을 때 그 화면이 나타났을 때 호출이 됨. RecyclerView에 대한 설명으로 올바른 것은? (2개) 어댑터..