Java(14)
-
[JAVA] 필터(Filter)
📌필터란 무엇인가? 필터(Filter)는 Java Servlet API에서 제공하는 기능으로, 클라이언트 요청이 서블릿에 도달하기 전에 요청을 가로채거나, 서블릿의 응답이 클라이언트로 보내지기 전에 응답을 가로채는 역할을 합니다.주로 다음과 같은 용도로 사용됩니다.로깅(Logging): 요청과 응답을 로깅해서 추적보안(Security): 인증 및 권한 부여데이터 압축(Data Compression): 서버에서 클라이언트로 보내는 응답 데이터를 압축요청 및 응답 인코딩: 문자 인코딩 처리 📌필터의 구조와 동작 원리필터는 javax.servlet.Filter 인터페이스를 구현하여 사용합니다. 기본적으로 3개의 메서드를 구현해야 합니다.init(FilterConfig filterConfig): 필터 초기화..
2025.02.02 -
[JAVA] 인터셉터(Interceptor)
📌Java 인터셉터란 무엇인가? Java에서 인터셉터(Interceptor) 는 주로 요청 처리 흐름을 가로채서 특정 작업을 수행할 수 있도록 해주는 컴포넌트입니다. 인터셉터는 웹 애플리케이션에서 주로 사용되며, 컨트롤러로의 요청 전후에 로직을 삽입하는 방식으로 작동합니다. 이를 통해 로깅, 인증, 권한 검사 등 공통된 기능을 재사용할 수 있게 합니다.예를 들어 다수의 컨트롤러에 동일한 로직이 들어가는 경우, 로그인 상태나 권한을 확인해야하는 경우에 각각의 컨트롤러에 로직을 구현하는 것이 아닌 컨트롤러 요청 전(preHandle) 인터셉터를 통해 공통적인 작업은 우선 처리할 수 있습니다. 📌인터셉터 메서드의 응답 순서1. preHandle (요청 처리 전)클라이언트의 요청이 들어오면 먼저 preH..
2025.02.02 -
[JAVA] 예외처리(Exception Handling)
예외처리(Exception Handling)란? 예외란 의도치 않은 결과가 나오는 것을 의미합니다. 사용자의 잘못된 조작, 개발자의 잘못된 코딩으로 인해 발생하는 오류입니다. 예외는 에러(Error)와 차이점이 있는데요. 에러는 컴퓨터 하드웨어의 고장이나 오작동, 프로그램의 이상, JAVA JVM 실행에 이상이 생긴 경우 발생해 프로그램 실행이 불가한 상태가 돼 비정상적으로 종료되게 됩니다. 예외처리를 하게 되면 프로그램이 실행 불가한 상태가 되어도 정상 종료되도록 해 줍니다. try, catch, finally문 예외처리에 사용되는 문법입니다. try문 안으로 예외가 발생할 수 있는 코드를 둘러싸고 catch문에서 try문 안에서 발생한 예외를 잡는 기능을 합니다. finally문은 try문 안에서 예..
2021.10.21 -
[JAVA] 다차원 배열, 2차원 배열
다차원 배열이란? 2차원 이상의 형태를 가진 배열을 뜻합니다. 2차원, 3차원 모두 다차원 배열이지만 일반적인 프로그래밍에서는 2차원을 초과한 배열을 잘 사용되지 않는 편입니다. 구조 자료형[ ][ ] 배열 이름 new 자료형 [행 갯수] [열 갯수]; int[ ][ ] arr = new int [2][3]; 위의 예시에서는 쉽게 생각해 아래와 같은 2행 3열의 배열이 만들어진다고 생각하면 됩니다. 선언과 동시에 초기화 1차원 배열과 마찬가지로 new를 생략할 수 있습니다. int[][] arr = {{1, 2, 3}, {4, 5, 6}}; 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 package array; public class TowDime..
2021.09.19 -
[JAVA] print(), println()의 차이점
출력문 print, println의 차이점을 알아보겠습니다. print() 위와 같이 System,out.print로 출력한 결과는 이렇습니다. 그렇다면 출력문을 하나 더 추가해볼까요? 출력값을 확인해보면 줄바꿈되지 않고 한 줄에 이어져 출력된 결과를 볼 수 있습니다. 줄바꿈을 하려면 역슬래쉬와 알파벳 n을 써주면 되는데 폰트에 따라 \, ₩ 두 가지로 달리 보일 수 있습니다. println() 매번 줄바꿈을 위해 \n 을 써주는 게 번거로워 이를 해결하기 위해 나온 게 println() 입니다. print()를 println()으로 바꿔주면 동일한 출력값을 확인할 수 있습니다!
2021.09.18 -
[JAVA] 향상된 for문, 빠른 for문(enhanced for loop)
향상된 for문 배열 요소의 처음부터 끝까지의 모든 요소를 참조할 때 보다 편리하게 사용할 수 있는 반복문입니다. 기존 for문과의 차이점은 뭘까요? for문 for(초기화식; 조건식; 증감식) { 반복 실행문; } 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 package array; public class Enhanced { public static void main(String[] args) { String[] strArr = {"java", "javascript", "python", "django"}; System.out.println("=====기존 for문 방식====="); for(int i = 0; i
2021.09.17