전체 글 562

[개발용어]Web Server와 Web Application Server(WAS)

Web Server  HTTP 기반으로 동작. 역할정적인 콘텐츠(HTML, CSS, JS, 이미지 등)를 클라이언트에게 제공한다.클라이언트가 HTTP 요청을 보내면, 웹서버는 요청된 자원을 응답한다.ex) Apache, Nginx, Microsoft IIS 등.기능 : 로드 밸런싱, 리버스 프록시, 정적 콘텐츠 제공.💡 Request와 Response 시에는 기본적으로 String으로 주고받는다는 특징이 있습니다.   WASWeb Application Server HTTP 기반으로 동작. 역할동적인 콘텐츠를 생성하고 클라이언트에게 제공한다.JSP, 서블릿, EJB 등을 실행하고, 비즈니스 로직을 처리.ex) Tomcat, Jetty, Undertow, JBoss, WebLogic, WebSphere 등..

[JAVA]TreeSet

TreeSet: Set인터페이스 중 탐색과 정렬에 유리한 구현클래스.중복❌이진 탐색 트리Binary search tree로 구현되었다.→ 장점 : 그래서 빠른 탐색이 빠르다.이진 트리는 모든 노드가 최대 2개의 하위 노드를 갖는다.단점 : 데이터가 많아질 수록 추가/삭제에 (비교횟수증가로) 시간이 오래 걸린다.💡 이진 탐색 트리 Binary search tree부모보다 작은 값은 왼쪽에, 큰 값은 오른쪽에 저장한다.따라서 값이 추가/삭제 될 때마다 정렬을 다시 한다.노드를 이용한다는 점에서 LinkedList와 비슷하다.2024.11.19 - [☕ 자바 JAVA/☕ 변수와 자료형 Variables & Data Type] - [JAVA]LinkedList와 QueueLinkedList의 노드는 양옆에 노..

[Eclipse]이클립스 Task 사용하기

주석 작성시 //TODO 또는 //FIXME라고 적으면 task에서 볼 수있다. Task를 클릭하면 작성한 곳으로 화면이동된다.XML에서는 ``와 ``를 사용해 주석으로 할 일 목록을 작성할 수 있다.JSP에서는 `// TODO`와 `// FIXME`를 사용해 주석으로 할 일 목록을 작성할 수 있다.FIXME 가 TODO 보다 우선순위가 높다. 🌟 단어만 봐도 알 수 있듯이, TODO는 앞으로 만들어야할 코드를 체크하는 용도다.FIXME는 오류발생을 없애기 위해 고쳐야할 곳을 체크하는 용도이다. 설정

[JAVA]반복문 for와 while

💡 반복문 Loop조건을 만족할 때까지 반복한다.  for (초기값, 조건, 증감) { code }  for ( ) 안을 살펴보겠습니다.int i = 0;→ i를 선언하고 0으로 초기화했습니다. 이 변수 i는 for문 안에서만 유효합니다.i → i가 5미만일 때까지만 { }코드 블럭을 실행합니다.i ++→ { }안의 코드가 실행될 때마다 i는 1씩 증가합니다.{ } : 위의 조건을 만족할 때까지 안의 코드를 반복합니다. 다양한 활용   💡 for문이 가장 많이 사용되는 건 배열이나 컬렉션의 값을 가져올 때입니다.   2중 for문  ❗ 3중 이상의 for문은 권장되지 않습니다. 객체의 크기가 너무 크면 과부하가 걸릴 수 있기 때문입니다. 하지만 필요하다면, 조건이 작을 때 사용할 수 있습니다.  향상..

[JAVA]HashSet

HashSet: Set인터페이스의 가장 대표적인 구현클래스.순서❌중복❌보통 set을 사용한다하면 hashSet을 말한다.순서를 유지하려면, LinkecHashSet클래스를 사용하면 된다.  생성자첫번째처럼 그냥 생성할 수도 있고()안에 Collection객체를 넣어서 ArrayList→HashSet 타입변환하면서 만들 수도 있다.(용량, 몇 퍼센트 찼을 때 용량을 두배로 늘릴 지) 지정할 수도 잇다. add(추가 값)중복된 값들은 저장되지 않았다.→ false 반환.→ 난수(random값)를 저장하기 좋다.순서가 있는 듯이 보이지만)사실상 순서도 없다.→ 정렬sort 불가. 그 외 메서드addAll(Collection c)remove(Object o)→ 지우고자 하는 값을 () 안에 적으면 된다.remo..

[JAVA]조건문 if과 switch

조건문 Conditional Statements조건이 참 true을 만족할 때 실행한다.  if (조건) {참일 때 실행}if ( ) 안의 조건이 참 true일 경우에만 { }의 코드가 실행됩니다.!true는 false이기 때문에 실행되지 않았습니다.  if-elseelse { }는 if 속하지 않을 경우 실행할 코드를 작성합니다.  if-else if다른 조건을 추가하고 싶을 때는 else if (n번째 조건) { }을 계속해서 추가할 수 있습니다.이렇게 여러번 나눠서 적은 이유는 if문을 다양하게 적을 수 있다는 것을 보여드리기 위함입니다.if() { }  else if () { } else { } 의 단어 뜻 그대로 생각하면 이해가 쉽습니다.만약 ~라면 ~한다. 아님 ~라면 ~하고, 그것도 아니라면..

[JAVA]배열[ ] 정렬sort()

정렬이 필요한 자료구조는?순서가 있는 자료형 Array[ ] 와 Listset은 순서가 없고, map은 key로 값을 가져옵니다.따라서 자바 기본 배열과 리스트만이 순서가 있으므로그 두가지 자료구조에서 정렬하는 방법을 알 필요가 있습니다.arrayList는 이름에서 알 수 있듯이 배열 저장방식을 사용하는 리스트입니다.  Arrays.sort(배열명)배열 정렬의 기본사전순. 오름차순. http://Arrays.sort() docs어떤 타입이든 배열[ ]을 인수로 사용하면 ascending오름차순으로 정렬한다.Arrays.sort(배열명, 시작 인덱스, 종료인덱스) → 구간만 정렬한다. 배열을 정렬할 때 사용하는 기본 함수인 sort()가오름차순으로 정렬되고, 원하는 구간만 정렬할 수 있다는 것을 알 수 있..

[JAVA]Comparator와 Comparable

Comparator & Comparable  Comparator기본 정렬기준을 구현한다.compare (Object o1, Object o2) 메서드를 가지고 있다. → o1과 o2를 비교해서 같으면 0, o1이 크면 양수, o2가 크면 음수를 반환한다.Comparable기본 정렬기준 외 다른 기준으로 정렬하고자 할 때 사용한다.compareTo (Object o) 메서드를 가지고 있다.→ 자기자신과 o를 비교한다. 같으면 0, 자기자신이 크면 양수, 매개변수가 크면 음수를 반한한다.  활용예제  implements Comparator를 상속받습니다.compare를 오버라이드합니다.if문에 instanceof Comparable를 확인하는 이유는 Comparable의 compareTo메서드를 사용하기 위..

[JAVA]연산자

연산에 사용되는 표시와 기호를 연산자.연산되는 데이터를 피연산자라고한다.  사칙연산자: 덧셈, 뺄셈, 곱셈, 나눗셈.  자바에서 사용하는 연산자 기호는 일반 수학에서 사용하는 표기와 다를 수 있습니다. example) 곱하기 연산은 자바에서 *로 표기합니다.  +  더하기 -   빼기 *   곱셈 /   나누기💡 코딩에서 %는 나머지를 뜻합니다.  대입연산자: 변수에 값을 대입한다.  +=-=*=/=%=코딩에서 변수i에 값을 더할 때 이런 식으로 i + 10 이라고 적지 않습니다.기능은 동일하지만 대입연산자를 사용하면 성능과 가독성이 올라가기 때문입니다. 나머지 % 란10을 7로 나눈 나머지 3이 나옵니다.  부호연산자 +와 -  부호연산자를 변수 앞에 붙인다.+연산자는 변수 값의 부호를 유지한다.-연..

[JAVA]Iterator, ListIterator, Enumeration

Enumeration : Iterator의 구버전입니다. Iterator: 각기 다른 구조를 가진 collection의 요소를 읽기위해 표준화한 것.hasNext(): 이터레이터에 다음 요소가 있는 지 확인 합니다. boolean 반환.next(): 다음 값을 가져옵니다.remove(): next() 다음에 적으면 해당 요소가 삭제됩니다.❗ 위 출력결과를 보시면 한번 읽어온 Iterator는 다시 순회할 수 없습니다. ListIterator: Iterator에 이전 값을 확인하는 메서드가 존재.   Collection이 바뀔 상황.ArrayList ↔ HashSet 으로 변경하는 상황에서 유리하다. 사실 실제로는 자주 사용하지 않습니다. 이유는일회용인데다가 List로 타입을 변환하려면 위와 같이 하나씩 ..

반응형