Programming/Back-end (Java, JSP) 12

[Java] Comparator 정리 - 사용법, 예시코드, 정렬기준 여러개일 때

저번 Comparable 글에 이어 Comparator에 대한 글을 작성해보려 한다. Comparator 1. Comparator? - 기본적이지 않은 정렬(int/long을 내림차순 정렬, String을 사전역순으로 정렬, 여러개의 기준으로 정렬...)할 때 사용한다. 예를 들어, 아래와 같은 리스트가 있다고 치자. 이 리스트는 Book2 클래스로 구성되어 있는데, 이 Book2 클래스는 title(책 제목), author(저자), company(출판사), year(출간년도)로 구성되어 있다. ( 단순한 list (int로만 구성되었거나하는 list)를 Comparator를 이용해서 정렬하는 예제는 다루는 블로그 글이 많아서, 이 글에서는 일부러 class로 이루어진 list로 예시를 들었다. ) im..

[Java] Comparable 정리 - 사용법, 예시코드

친구들과 알고리즘 스터디를 하다가, 2개 이상의 조건으로 정렬을 하는 문제에서 Comparable/Comparator를 사용할 일이 있었다. (참고문제: 백준 1181번 단어정렬 문제 ) Comparable/Comparator 사용법이 익숙하지 않아서 이 포스팅에서 정리하려고 한다. ※ [참고] 이 포스팅에서 사용한 코드 전체는 아래의 Github url에서 보실 수 있습니다. https://github.com/sujinlee0616/Algorithm/blob/master/JavaExercises/sujin/format/ComparableEx.java 1. Comparable ? - 기본적인 정렬(int/long 오름차순, String 사전순 정렬)을 구현할 때 사용한다. - Java에서 제공하는 정렬 ..

[Java] printf 출력서식 - %d, %f, %c, %s

1. \n : new line: 한 줄 띄움 ex) System.out.println("안녕\n하세요"); ==> 출력결과: 안녕 하세요 2. \t: tab : 일정 간격 띄움 ex) System.out.println("아이유\t LvoePoem \t 2019년 12월 발매"); ==> 출력결과: 아이유 LvoePoem 2019년 12월 발매 3. \": 쌍따옴표 출력 ex) System.out.println("\"Hello, Java\""); ==> 출력결과: "Hello, Java" 1. println: 출력 후 한 줄 띄움 2. pirnt: 출력 후 줄 띄우지 X. 한 줄로 쭉 출력. 3. 서식이 있는 출력 - JDK 1.5 이상에서만 가능. printf에서만 가능. println에서는 불가. 1)..

[Java] Annotation

- Annotaion: 프로그램 소스코드 안에, 다르프로그램을 위한 정보를, 미리 약속된 형식으로 포함시킨 것. 주석처럼 프로그래밍 언어에 영향을 미치지 않으면서도 다른 프로그램에 유용한 정보를 제공할 수 있다. - 표준 애너테이션: 자바에서 기본적으로 제공하는 애너테이션들. 첫번째 표의 5개와 두번표의 meta annotation 5개는 표준 annotation. Annotation 기능 @Override 컴파일러에게 오버라이딩하는 메서드라는 것을 알린다. @Override 애노테이션을 붙이면, 메서드의 이름을 잘못 적는 실수를 방지할 수 있다. (컴파일러가 같은 이름의 메서드가 조상에 있는지 확인하고 없으면 에러메시지 출력해주기 때문.) ※ 오버라이딩: 조상 클래스로부터 상속받은 메서드의 내용을 자손..

[JSP] JSTL 용법

0. 특징 - JSTL은 XML로 제작되었으므로, 태그를 열고 닫아야 한다. - 지원하는 속성(var, items, ...) 외의 다른 속성을 이용하면 에러가 난다. - 속성값은 반드시 ""를 사용해야 한다. ex) // (X) Error. // (O) 1. core - import: 1) 변수 선언: - 는 request.setAttribute(key,value) 와 동일 ==> ${id} - 참고) => out.println() ============= ${} 2) 제어문 (1) - else가 존재하지 않는다. - [Java if문 형식] // [Java if문 형식] if(조건문) { 실행문장 } - [ 사용 ] // [ 사용] 실행문장 (2) - 변수가 감소할 수 없다. (step은 항상 양수) ..

[JSP] EL(Expression Language) 용법, 연산자

- 화면에 출력하는 언어 - 사용법: ${출력물} - ${}안에 일반 자바 변수가 들어가는게 아니다!! - ${}안에 들어가는 것들의 유형 1) 파라미터 이름 getParameter("para_name") => ${param.para_name} ex) getParameter("id") => ${param.id} 2) request의 key값(속성명) request.getAttribute("key") => ${requestScope.key} => ${key} ex) request.getAttribute("id") => ${requestScope.id} => ${id} ====> ${id} 처럼 쓰려면, request에 있어야만 이렇게 쓸 수 있다. ex) String id="admin"; ==> ${id}..

VO(DTO), DAO, Service 용어 설명

# DAO - DAO: Data Access Object. ==> '데이터에 접근하는 객체' DB를 사용해 데이터를 조회하거나 조작하는 기능을 전담하도록 만든 오브젝트를 말한다. (출처: 토비의 Spring) - DAO 클래스: 데이터에 접근할 때 사용하는 객체를 위한 클래스. - SELECT, INSERT, UPDATE, DELETE 등 데이터 처리가 주 목적 1) 드라이버 등록 - public xxxDAO() {...} 2) 연결 - public void getConnection(){...} 3) 연결 해제 - public void disConnection(){,,,} 4) 기능 설정 (SQL 전송 → DB 조회/조작) - DB가 어떻게 필요한지에 따라서 적절한 SQL 문 작성 (SELECT, INS..

[JSP] 내장객체 (기본객체, Implicit Objects)

JSP 내장객체에는 아래와 같은 9개가 있다. 내장객체는 별도로 선언하지 않아도 바로 사용이 가능하다. 내장 객체 리턴 타입 설명 request javax.servlet.http.HttpServletRequest 웹 브라우저의 요청 정보를 저장하고 있는 객체 response javax.servlet.http.HttpServletResponse 웹 브라우저의 요청에 대한 응답 정보를 저장하고 있는 객체 pageContext javax.servlet.jsp.PageContext JSP 페이지에 대한 정보를 저장하고 있는 객체 session javax.servlet.http.HttpSession 하나의 웹 브라우저의 정보를 유지하기 위한 세션 정보를 저장하고 있는 객체 application javax.serv..

[Java] 생활코딩 Java1 Method 강의 정리

- 생활코딩 Java1 Method 강의 완강 후 적는 정리 글. - 강의 url : https://opentutorials.org/course/4024 JAVA method - 1. 수업소개 - 메소드 = 함수 = 복잡한 걸 정리해서 다시 단순하게 만드는 정리정돈 도구. - 메소드 = 마법의 수납상자 - 아무리 복잡한 것도 그걸 모아서 거기다가 이름을 붙일 수 있으면 정리가 쉬워진다! (마치 서랍처럼...) - 연관된 코드를 모아서 그룹핑하고, 이름을 붙이면 그게 함수. (=메소드) ==> 메소드를 이용하면 복잡한 코드를 깔끔하게 정리할 수 있음. ==> 이미 만들어놓은 메소드 쓰면 되니까 이미 있는 코드는 다시 새로 작성할 필요가 없어짐 (재사용 가능) JAVA method - 2. 이미 익숙한 메소..

[Java] Swing 기초개념

Swing이란? - Java에서 GUI를 만들어주는 대표적인 툴. - 여러 플랫폼의 룩앤필을 제공 - 버튼, 체크박스, 라벨 뿐만 아니라 tabbed panel, scroll pnae, tress, 표, 리스트 등 다양한 컴포넌트를 제공 AWT와 Swing의 차이점 Java AWT Java Swing 플랫폼과의 관계 플랫폼과 무관(독립적) 플랫폼에 종속적 컴포넌트 무겁다. 종류 적다. 가볍다. 종류가 다양하다. 룩앤필 pluggable 룩앤필 제공X pluggable 룩앤필 제공O MVC MVC 패턴 따르지X MVC 패턴을 따른다. ※ MVC 패턴 : Model View Controller - Model : 데이터를 가져와 어떤 작업을 처리하거나 처리한 작업을 저장. - View : 데이터를 보여준다. ..

반응형