본문 바로가기

전체 글124

[Spring] DAO, DTO, Service란 MVC(Model - View - Controller)에서 Model은 DAO, DTO, Service로 나눌 수 있다. MVC 관련: http://webskills.kr/archives/479 DAO(Data Access Object)란? 실제로 DB에 접근하는 객체. DB를 사용해 데이터를 조회하거나 조작하는 기능 담당. DB와 관련없는 코드들을 분리하는 이유? HTTP Request를 Web Application이 받게 되면 Thread를 생성하게 되는데, DB로부터 데이터를 얻어오기 위해 Driver를 로드하고 매번 Connection 객체를 생성하게 되면 너무 많아진다. 그래서 DB 전용 객체로만 사용할 DAO가 있으면 부담이 적어진다. DBCP 개념 관련: https://www.holaxpro.. 2019. 4. 17.
ArrayList ArrayList란? 리스트를 만들때 내부적으로 배열이라는 부품을 사용하는 것. 데이터를 추가 / 삭제 데이터를 추가 / 삭제할때마다 일일히 데이터를 당기거나 밀어야 하기에 오래 걸린다. ArrayList의 장점: 인덱스 값을 알고 있기 때문에 데이터를 가져올 때 빠르게 가져올 수 있다. (자바로 배우는 자료구조로 공부하며 개인적으로 필기하는 글입니다.) https://programmers.co.kr/learn/courses/17/lessons/804 자바로 배우는 자료구조(with 생활코딩) - Array List | 프로그래머스 소개 Array List는 배열으로 구현한 리스트입니다. 내부에서 배열을 이용하기 때문에 인덱스를 이용해서 데이터에 접근합니다. 데이터를 조회할 땐 빠르지만, 데이터를 추가/.. 2019. 4. 10.
List의 개념 가장 중요한 두가지는 데이터가 순서대로 저장된다. 중복 저장을 허용한다. Array 와 List 비교 List는 데이터가 연속되어 있다! 추가할때 어떤 다른 양상을 보이는가? 배열: 값 덮어쓰기 리스트: 한칸 밀기 삭제할때는? 배열: 비게 됨 리스트: 한칸 당기기 리스트의 기능은? 처음, 끝, 중간에 엘리먼트를 추가 / 삭제 리스트에 데이터가 있는지 확인 모든 데이터에 접근 가능 Java의 배열과 리스트 배열: int[] numbers= {1,2,3,4,5}; 리스트: ArrayList numbers= new ArrayList(); numbers.add(1); numbers.add(2); numbers.add(3); numbers.add(4); numbers.add(5); Java는 리스트를 두 가지 지.. 2019. 4. 10.
Array (배열) - Java API Array란? 변수 하나에 여러 정보를 담을 수 있고, 배열을 반복문과 결합하면 많은 정보를 효율적으로 처리할 수 있다. Create 생성 int[] numbers1 = new int[4]; = 정수형 배열 numbers1는 4개의 element를 가진 정수형 배열 새로운 객체이다. //문자열 배열 String[] strings = new String[4]; 배열에 값 삽입 numbers1[0]=10; numbers1[1]=20; numbers1[2]=30; //한번에 넣기 int[] numbers2= {10,20,30,40}; int[] numbers3= new int[]{10,20,30,40}; Get 가져오기 System.out.println(numbers1[0]); Size 크기 System.ou.. 2019. 4. 10.
Data Structure란 Data Structure란? 현실을 컴퓨터/프로그래밍적으로 표현하는 것이다. 왜 필요한가? 데이터가 차지하는 공간도 줄이고, 찾기도 쉽도록 큰 데이터를 효율적으로 관리하는 것 자료구조 공부가 어려운 이유는: 경험 부족 → 필요성 공감 못함 → 이해 못함 자료구조는 이렇게 공부한다: 공부 → 경험 쌓기 → 다시 공부 → 이해 자료 구조를 몰라도 프로그램을 만들 수는 있다. 그러나 알면 더 효율적인 시스템을 만들 수 있다. (자바로 배우는 자료구조로 공부하며 개인적으로 필기하는 글입니다.) https://programmers.co.kr/learn/courses/17 자바로 배우는 자료구조(with 생활코딩) | 프로그래머스 평가 5.0 2개의 평가 ★★★★★2 ★★★★0 ★★★0 ★★0 ★0 최요셉 201.. 2019. 4. 10.
[자료구조] 큐(Queue) 큐(Queue)란한쪽으로 넣고 다른 한 쪽으로 나오는 FIFO(First In First Out), 즉 선입선출 구조의 자료구조Ex)터널, 선착순 예매 큐의 정의, 연산Enqueue(item): item을 큐의 마지막에 저장한다.Dequeue(): 큐의 가장 앞선 데이터를 삭제한다. 배열로 큐 구현package Queue; public class ArrayQueue { private char[] array; private int front; private int rear; private int size; public ArrayQueue(int size){ //큐 배열 생성 this.front = 0; this.rear = -1; this.size = size; this.array = new char[si.. 2019. 2. 15.
[자료구조] 스택(Stack) 스택(Stack)이란 한쪽으로만 넣고 뺄 수 있는 LIFO(Last In First Out), 즉 후입선출 구조의 자료구조 Ex) 쌓여있는 접시들, 상자들 스택의 정의, 연산 pop() : 스택에서 가장 위의 item을 제거. push(item): 스택에서 가장 위에 item 하나 추가.peek(): 스택에서 가장 위의 item 반환isEmpty(): 스택이 비어있으면 true, 그렇지 않으면 false 반환 배열로 스택 구현 public class ArrayStack{ private int top; private int size; private char array[]; public ArrayStack(int size){ this.top = -1; this.size=size; this.array=new .. 2019. 2. 15.