전체 글
-
Gradle과 Maven 차이?Spring Boot 2023. 8. 11. 12:55
Gradle Maven Build Script 언어 Groovy 또는 Kotlin 스크립트를 사용하여 빌드 스크립트를 작성한다. Groovy는 동적인 특성을 가진 JVM 언어이며, Kotlin은 정적인 특성을 가진 언어이다. Gradle은 빌드 스크립트를 더 간결하고 가독성 있게 작성할 수 있는 유연성을 제공한다. XML 기반의 POM(Project Object Model) 파일을 사용하여 빌드 설정을 정의하나. XML은 구조화 되어있지만 상대적으로 가독성이 좋지 않을 수 있다. 설정 및 의존성 관리 복잡한 의존성 관리와 설정을 유연하게 처리할 수 있다. Groovy 또는 Kotlin 스크립트를 사용하여 라이브러리 의존성, 플러그인, 사용자 정의 작업 등을 선언할 수 있다. XML 기반의 POM 파일을 ..
-
변수에 대해서JAVA 2023. 8. 11. 11:52
✔️ 변수란 무엇일까? 변수는 어떤 저장하기 위한 메모리(RAM) 공간이다. 프로그램의 실행 중에 값을 저장하고 사용할 수 있도록 메모리 공간을 할당하는 역할을 한다. ✔️ 변수의 구성 변수는 이름(identifier)과 값(value)으로 구성된다. 이름은 변수를 식별하는데 사용되며, 영문자, 숫자, 언더스코어(_)로 이루어진다. 특수문자는 '_'와 '$'만을 허용하는데 '$'는 내부 클래스에서 사용 가능하고 '_' 사용 시 컴파일 에러는 없지만 관례상 사용하지 않는 것이 좋다. 예약어를 사용하면 안되며 대소문자가 구분되고 길이 제한이 없다. 또한 여러 단어 이름은 단어의 첫 글자를 대문자로 하며, 첫 시작 글자는 소문자로 하는 것이 관례이다. ➕ 주요 예약어 ✔️ 변수의 선언 변수를 사용하기 전에 먼..
-
JWT란 무엇일까?CS 2023. 8. 10. 13:03
✔️JWT란 무엇일까? JSON Web Token의 약자로, 웹 어플리케이션 간에 정보를 안전하게 전달하기 위해 사용되는 토큰 기반 인증 방식이다. JWT는 클레임(Claim) 기반으로 정보를 저장하고, JSON 포맷으로 데이터를 표현한다. 인증에 필요한 정보들을 token에 담아 암호화 시켜 사용하는 토큰인것! 따라서 기본적인 인증을 진행하는 구조는 Cookie와 크게 다르지 않다. 다만, 강조되는 점은 JWT는 서명된 토큰이라는 것이다. 공개/개인 키를 쌍으로 사용하여 토큰에 서명할 경우 서명된 토큰은 개인 키를 보유한 서버가 이 서명된 토큰이 정상적인 토큰인지 인증할 수 있다는 것이다. 🔶 JWT는 크게 세 부분으로 구성된다. 1. Header(헤더) 토큰의 유형과 해시 알고리즘을 지정한다. 일반적..
-
public static void main(String[] args) 무슨 의미지?JAVA 2023. 8. 10. 00:06
✔️ public static void main(String[] args) 자바 프로그램의 실행 진입점(entry point)을 정의하는 메서드이다. 이 메서드는 프로그램이 실행될 때 자동으로 호출되며, 프로그램의 시작점을 나타낸다. 이 메인 메소드는 자바 어플리케이션 실행 시 제일 먼저 동작하며 어느 객체에서든 접근할 수 있으며 자바가 컴파일 되는 순간 정의되는 돌려주는 값이 없는 함수인 것! public static void main(String[] args) 단 한개만 엔트리 포인트로 정의했기 때문에 오버로딩 된 다른 형태의 main 함수는 엔트리 포인트로 동작하지 않는다. • public main 메서드가 다른 클래스에서도 접근 가능하도록 공개되어 있다는 의미이다. 접근제어자는 외부에서 접근할 수..
-
(백준) 2566번 '최댓값'문제 2023. 8. 8. 21:35
import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int max = 0; // 최댓값 저장 변수 int maxRow = 0; // 최댓값이 위치한 행 번호 int maxCol = 0; // 최댓값이 위치한 열 번호 // 9 X 9 격자판 입력 받아서 처리 for(int i = 0; i = max){ // 등호 추가하여 최댓값이 같은 경우도 처리 max = num; maxRow = i + 1; // 행 번호는 1부터..
-
(백준) 2738번 '행렬 덧셈'문제 2023. 8. 8. 11:42
import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); // 행렬의 크기 N,M 입력 받기 int N = sc.nextInt(); int M = sc.nextInt(); // 행렬 A와 B 선언 및 입력 받기 int[][] A = new int[N][M]; int[][] B = new int[N][M]; for(int i = 0; i < N; i++){ for(int j = 0; j < M; j++){ A[i][j] = sc.nextInt(); } } for(int i = 0; i < N; i++){ for(int j = 0; j < M; j+..
-
흔히 사용되는 이스케이프 문자들Spring 2023. 8. 7. 23:28
✔️이스케이프 문자란? 문자열이나 문자 상수 내에서 특별한 의미를 가지는 문자를 표현하기 위해 사용되는 특수한 문자들이다. 이스케이프 문자는 백슬래시(\)와 함께 사용되며, 이를 통해 특정 문자를 문자 그대로 표현하는 것이 아니라 특별한 의미를 갖도록 처리할 수 있다. 1. \' : 작은 따옴표(') 2. \" : 큰 따옴표(") 3. \\ : 역 슬래시 자체 4. \n : 새로운 줄 5. \t : 탭 문자 6. /r : 캐리지 리턴 (특정 문자를 만나면 커서를 문자열의 맨 앞으로 이동시키는 제어 문자이다.) 7. \b : 백스페이스 8. \f : 폼 피드 (특정 문자를 만나면 출력장치에서 다음 페이지로 이동하는 역할을 한다. + Hello\rWorld 이 문자열을 출력하면 Hello 라는 단어를 출력한..
-
(백준) 2908번 '상수'문제 2023. 8. 6. 14:54
import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int A = sc.nextInt(); int B = sc.nextInt(); int reversed_A = reverseNumber(A); int reversed_B = reverseNumber(B); int max = (reversed_A > reversed_B) ? reversed_A : reversed_B; System.out.println(max); scanner.close(); } public static int reverseNumber(int n) { int reversed =..