[표준입출력] nextInt(), nextLine() 차이 문제 int, double, String을 순서대로 입력받은 다음에, String, Double, int 순으로 다시 출력하는 문제 잘못된 코드(1) import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int i = scan.nextInt(); double d =scan.nextDouble(); String s = scan.nextLine(); System.out.println("String: " + s); System.out.println("Double: " + d)..
Queue public class Queue { private int maxSize; private long[] queArray; private int front; // 큐의 첫번째 인덱스(포인터 역할) private int rear; // 큐의 마지막 인덱스 private int nItems; // 전체 길이 public Queue(int size) { this.maxSize = size; this.queArray = new long[size]; front = 0; rear = -1; nItems = 0; } public void insert(long j) { if(rear == maxSize -1) { rear = -1; // 다시 앞에서부터 덮어씌움. Circular Queue } rear++; q..
Stack 스택으로 reverseString 구현 package adt; // Stack 클래스 public class Stack { private char [] myStack; private int maxSize; private int top = -1; Stack(int s) { this.maxSize = s; myStack = new char [maxSize]; } public void push(char i) { top++; myStack[top] = i; } public char pop() { int old_top = top; top--; return myStack[old_top]; } public boolean isEmpty() { if(top == -1) { return true; } retur..
JDBC 데이터 삽입, 수정, 삭제 테이블 생성 package jdbcexam; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class CreateTable { public static void main(String[] args) throws Exception { try { Class.forName("oracle.jdbc.driver.OracleDriver"); } catch (ClassNotFoundException e) { e.printStackTrace(); } try( Connection conn = DriverManager.ge..
JDBC def: 자바 언어에서 Database에 접근할 수 있게 해주는 프로그래밍 API JDBC 인터페이스는 JDBC 프로그램을 하기 위한 API들로서, SE에서 제공하는 java.sql패키지를 의미한다. JDBC API는 대부분 인터페이스이다. // JDBC API 인터페이스 Connection, Statement, ResultSet 등 // 메서드 Connection : createStatement(), getMetaData() ... Statement: executeQuery(), executeUpdate() ... ResultSet: next(), getXXX() ... 이 인터페이스들은 대부분 몸체가 없으며 이 API들을 활용하려면 java.sql 인터페이스를 상속하여 메서드를 구현할 클래스..
트랜잭션(Transaction) def: 더 이상 분할할 수 없는 최소 수행 단위(All or Nothing) 한 개 이상의 데이터 조작 명령어(DML)로 이루어진다. 어떤 기능 한 가지를 수행하는 sql문 덩어리이다. 트랜잭션을 제어하기 위해 사용하는 명령어를 TCL(Transaction Control Language)이라고 한다. 트랜잭션은 TCL 명령어를 사용하는 시점에서 끝나며, 새로운 트랜잭션이 시작된다. ROLLBACK 롤백은 현재 트랜잭션에 포함된 데이터 조작 관련 명령어의 수행을 모두 취소한다. COMMIT 지금까지 수행한 트랜잭션 명령어를 데이터베이스에 영구히 반영할 때는 커밋한다. 영구히 반영되므로 매우 신중하게 커밋하여야 한다. 롤백과 커밋 모두 사용하면 현재 트랜잭션이 끝나고 새 트..
데이터 수정 예시 UPDATE DEPT_TEMP2 SET DNAME = 'DATABASE', LOC = 'SEOUL' WHERE DEPTNO = 40; -- 데이터를 특정하는 조건 -- 데이터 내용을 이전 상태로 되돌리기 ROLLBACK; -- 서브쿼리를 사용하여 데이터 수정하기 UPDATE DEPT_TEMP2 SET (DNAME, LOC) = (SELECT DNAME, LOC FROM DEPT WHERE DEPTNO = 40) WHERE DEPTNO = 40; 데이터 삭제 예시 DELETE FROM EMP_TEMP2 WHERE JOB = 'MANAGER'; -- where절에 서브쿼리 사용 DELETE FROM EMP_TEMP2 WHERE EMPNO IN (S..
데이터 추가 테이블 복사하여 생성하기 CREATE TABLE DEPT_TEMP AS SELECT * FROM DEPT; -- 값 없이 구조만 복사하고 싶을 때 CREATE TABLE DEPT_TEMP AS SELECT * FROM DEPT WHERE 11; -- 항상 false라서 값 복사가 안 됨 insert into INSERT INTO DEPT_TEMP (DEPTNO, DNAME, LOC) VALUES(50, 'DB', 'SEOUL'); -- 열 지정 생략 INSERT INTO DEPT_TEMP VALUES(50, 'DB', 'SEOUL'); -- null데이터 입력 INSERT INTO DEPT_TEMP (DEPTNO, LOC) VALUES..
서브쿼리(subquery) def: sql문 실행에 필요한 데이터를 추가로 조회하기 안에 sql문 내부에 사용하는 select문 예시 -- 마치 변수를 사용하는 것 같다 SELECT * FROM EMP WHERE SAL > (SELECT SAL FROM EMP WHERE ENAME = 'JONES') -- 함수를 사용한 단일행 서브쿼리문 SELECT E.EMPNO, E.ENAME, E.SAL, D.DEPTNO FROM EMP E, DEPT D WHERE E.DEPTNO = D.DEPTNO -- join조건문 AND E.DEPTNO = 20 AND E.SAL > (SELECT AVG(SAL) FROM EMP); 다중행 서브쿼리 다중행 서브쿼리(multi-row subquery)는 실행 결과 ..
render render: 컴포넌트를 html로 바꾸어 브라우저에 나타나게 하는 것 리액트의 컴포넌트는 클래스 기반, 함수형으로 나눌 수 있는데 클래스 기반 컴포넌트에서는 render함수를 반드시 호출해야 한다. import React, { Component } from 'react'; // destructing class SearchBar extends Component { // render 함수 호출 render() { return } } export default SearchBar; render함수는 위처럼 사용 한다. render() {} 컬리브라켓 안에 리턴이 있으며, 이때 반드시 JSX를 리턴해야만 브라우저에 보여진다. 상속받은 Component 는 destructing 한 것으..
조인(Join) 개념: 두 개 이상의 테이블 데이터를 가로로 연결한 것 예시 SELECT * FROM EMP, DEPT; -- 이 경우 emp테이블과 dept테이블의 모든 행 조합이 출력됨 SELECT * FROM EMP, DEPT WHERE EMP.DEPTNO = DEPT.DEPTNO; -- 두 테이블에서 DEPTNO가 일치하는 부분만 출력해줌 -- 별칭 설정 SELECT * FROM EMP E, DEPT D WHERE E.DEPTNO = D.DEPTNO; SELECT E.EMPNO, E.ENAME, E.DEPTNO FROM EMP E, DEPT D WHERE E.DEPTNO = D.DEPTNO; -- *을 사용하면 어떤 순서로 열이 출력될지 명확히 알 수 없으며 열의 수정 및 삭제 변화를 감지하기 어..
- Total
- Today
- Yesterday
- CSS
- rxjs
- Conflict
- Redux
- oracle
- 자바
- jQuery
- 깃
- 인스턴스
- 알고리즘
- SQL
- 제네릭스
- Session
- c언어
- this
- JavaScript
- linkedlist
- getter
- useEffect
- GIT
- 개발 공부
- package.json
- 리덕스
- Java
- react
- til
- Prefix Sums
- 포인터 변수
- Data Structure
- youtube data api
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |