coding log
반응형
article thumbnail
[Java] 자바 웹 개발 환경, 웹 프로젝트 기본 구조
Backend/Java 2023. 7. 17. 22:13

웹 프로젝트 기본 구조 대부분의 웹 프로젝트들은 여러 프로그램이 같은 네트워크를 통해 연결되는 구조로 이루어진다. 브라우저 or 클라이언트 - 서버에서 전송한 결과를 화면에 보여주고, 사용자의 화면 조작을 이용해서 서버에 원하는 데이터를 보내고 받는 프로그램 - 서버에 요청하여 전달받은 데이터를 화면에 렌더링 - 관련 기술 : HTML / CSS / 자바스크립트 request (요청) → WAS → response (응답) 해서 화면에 보여준다. 렌더링 서버에서 전송한 결과를 HTML 파일로 받아 화면에 보여주는 과정 웹 서버 or WAS - Web Server : 정적인 파일 제공 (HTML, CSS, Javascript), 요청이 있을때만 파일을 저장한다. - WAS (Web Application S..

article thumbnail
[Java] Test, Testing, JUnit
Backend/Java 2023. 6. 25. 15:15

테스팅이란? 응용 프로그램 또는 시스템의 동작과 성능, 안정성이 요구하는 수준을 만족하는지 확인하기위해 결함을 발견하는 과정 전통적인 테스트 개념 - 응용 프로그램 또는 시스템이 잘 작동하는지 확인하는 것 현재의 테스트 개념 - 사용자의 기대 수준과 요구사항에 맞게 구현되고 동작하는지 확인하고, 이를통해 결함을 발견하고 최종적으로 결함 데이터를 근간으로 개발 프로젝트의 리스크에 대한 수치적인 판단 근거를 의사결정권자 (프로젝트 관리자 등)에게 전달하는 것을 말한다. 개발 프로젝트 초기에 개발 중간 산출물을 테스팅관점에서 리뷰하고, 테스트 케이스를 미리 만드는 과정에서 결함을 발견하는 작업(결함 예방 활동)도 테스팅 활동의 중요한 부분이다. 정적 테스트 프로그램을 개발하기 전에 요구사항 등을 리뷰하는 것 ..

[Java] Java JPA, ORM 개념
Backend/Java 2023. 6. 25. 13:09

JPA (Java Persistence API) ORM의 표준 인터페이스 기술 자바 어플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스 JPA는 라이브러리가 아니다. ORM을 사용하기 위해 만든 인터페이스의 모음이다 JPA를 사용하기 위해 JPA를 구현한 *ORM 프레임워크를 사용해야 한다 자바클래스로 테이블을 만들수있는것 (=자바 코드로 테이블 생성) ORM 프레임워크 Hibernate, EclipseLink, DataNucleus, OpenJPA, TopLink Essentials 등 다양한 프레임워크가 존재하지만 대표적으로 Hibernate를 사용한다. JPA 장점 SQL 중심적인 개발에서 객체 중심적인 개발이 가능하다 생산성 증가 (간단한 CRUD가 가능하다) 유지보수가 쉽다 ..

[Java] Java TreeSet
Backend/Java 2023. 6. 18. 17:45

Set 인터페이스를 구현한 대표적인 컬렉션 클래스인 TreeSet에 대한 정리 TreeSet 범위 검색, 정렬 이진 탐색트리로 구현 범위 검색과 정렬에 유리함 (from~to) 이진 트리는 모든 노드가 최대 2개의 하위 노드를 갖음 하나의 요소에 연결된 요소가 2개까지 가능 각 요소(node)가 나무(tree)형태로 연결 (LinkedList의 변형) 단점 : HashSet보다 데이터 추가, 삭제 시간이 더 걸린다 binary search tree 이진 탐색 트리 (이진 트리의 한 종류) 부모보다 작은 값은 왼쪽, 큰 값은 오른쪽에 저장 단점 : 데이터가 많아질수록 추가/삭제 시간이 더 걸린다 (트리가 커질수록 비교횟수 증가) 트리노드는 저장할 객체가 있고, 왼쪽과 오른쪽을 가리키는 참조변수가 존재한다 ..

[Java] Java HashSet
Backend/Java 2023. 6. 18. 16:12

Set 인터페이스를 구현한 대표적인 컬렉션 클래스인 HashSet에 대한 정리 HashSet 순서 유지x, 중복x Set이 필요하면 가장 일반적인 HashSet 사용 권장 순서를 유지하려면 LinkedHashSet클래스 사용할 것 메서드 설명 HashSet() HashSet(Collection c) 생성자 (지정된 컬렉션에 모든 객체를 저장) HashSet(int initialCapacity) 초기 용량 지정 HashSet(int initialCapacity, float loadFactor) loadFactor : 보통 용량은 2배로 늘리는데, 언제 두배로 늘릴것인지 지정 boolean add(Object o) 추가 boolean addAll(Collection c) 추가 (합집합) boolean rem..

article thumbnail
[Java] Java LinkedList
Backend/Java 2023. 6. 18. 15:02

배열의 장단점 장점 : 배열은 구조가 간단하고, 접근시간 access time (데이터를 읽는데 걸리는시간)이 짧다. 단점 : 1. 크기를 변경할 수 없다. - 크기를 변경해야하는 경우 새로운 배열을 생성 후 데이터를 복사해야 함 - 크기 변경을 피하기위해 처음부터 큰 배열을 생성하면 메모리가 낭비됨 2. 비순차적인 데이터의 추가, 삭제에 시간이 많이 걸린다. - 데이터를 추가하거나 삭제하기 위해 다른 데이터를 옮겨야 함 - 그러나 순차적인 데이터 추가(끝에 추가)와 삭제(끝부터 삭제)는 빠르다. (배열 중간의 있는 데이터를 추가하거나 삭제하는걸 말하고, 중간이 비어버리면 뒤에있던 데이터의 자리를 이동하는데 시간이 많이 걸림) 배열의 크기를 변경하는 법 ① 더 큰 배열 생성 ② 데이터 복사 ③ 참조를 변..

반응형