0.Lombok반복적인 코드를 줄여주는 라이브러리Annotation을 기반으로 Getter,Setter 와 같은 코드들을 작성하지않고 사용할수있도록만든다.@Getter, @Setter: Getter/Setter 자동 생성.@ToString: toString() 메서드 자동 생성.@EqualsAndHashCode: equals()와 hashCode() 자동 생성.@NoArgsConstructor, @AllArgsConstructor, @RequiredArgsConstructor: 다양한 형태의 생성자 자동 생성.@Data: 주요 메서드 (Getter, Setter, ToString, EqualsAndHashCode) 자동 생성.@Value: 불변 객체 생성.@Builder: 빌더 패턴 자동 생성.@Slf4..
1.Swagger 란?RESTful API를 설계, 문서화, 테스트, 관리하는 데 사용되는 오픈 소스 프레임워크이다.직관적인 인터페이스와 자동화된 문서화를 제공한다. 2.SpringBoot와 연동2-1.SpringDoc OpenAPI Starter WebMVC UISpring Boot 애플리케이션에서 OpenAPI 3.0 사양에 맞춘 API 문서를 자동으로 생성하고, Swagger UI를 통해 API를 시각화할 수 있게 해주는 라이브러리이다. 의존성을 그대로 복사해서 프로젝트 의존성에 추가한다.https://mvnrepository.com/artifact/org.springdoc/springdoc-openapi-starter-webmvc-ui org.springdoc springdoc..
1.예외(exception)정상적인 경우에는 일어나지 않지만 발생할 수 있는 문제이다오류가 아니라 프로그램 실행 중 발생할 수 있는 예상 가능한 문제로, 특정 상황에서 발생하며, 일반적으로 사용자가 처리할 수 있는 문제이다.예외는 try-catch 블록을 사용하여 프로그래머가 직접 처리할 수 있습니다. 2.오류 (Error)프로그램의 실행 중 발생하는 심각한 문제로, 일반적으로 시스템의 상태나 환경 문제와 관련됩니다. 이러한 오류는 프로그램이 정상적으로 작동할 수 없게 만듭니다.일반적으로 이러한 오류는 프로그래밍적으로 처리할 수 없으며, 사용자에게 보고되거나 프로그램이 종료됩니다. 3. throw예외가 발생하면 throw문을 통하여 예외 객체를 생성할수있다. ,를 통해 여러 예외 던질수있음 3-..
1.Subclassing (is-a관계)클래스를 확장하여 새로운 클래스를 만든다.상속을 통해 구현한다.class Animal { // 상위 클래스 void eat() { System.out.println("Eating"); }}class Dog extends Animal { // 서브클래스 void bark() { System.out.println("Barking"); }} 2.Subtyping(can be used as)서로 다른 타입 간의 관계를 나타낸다.인터페이스 및 구현 클래스를 통해 구현한다.class Animal { // 상위 타입 void makeSound() { System.out.println("Animal sound");..
1.객체생성1-1.new객체를 생성할때 사용하는 연산자를 사용하여 생성자로 생성한다.new 연산자를 이용하여 생성한 객체가 위치하는 메모리 공간을 쓰레기 수집가능 힙이라고한다.Person person = new Person("Alice"); 1-2.String?String의 경우 예외적으로 new연산자 없이 객체를 생성한다. (new로 할수도있음)Java는 메모리 효율성을 위해 문자열을 String Pool이라는 힙 내의 고정된 메모리 영역에 저장한다다. 이 풀에서는 동일한 내용의 문자열을 재사용합니다.String greeting = "Hello, World!"; 2.객체 참조변수생성한 객체를 유지하는변수임 (여러개가 하나의 객체를 참조하게할수도있다.)C++과 달리 자바의 참조타입은 객체만가능(원시타..
1.소스파일 구조1-1.package가장먼저 작성해야하고 한개밖에 작성할수없음 1-2.importpackage문이 없으면 가장먼저 작성, 없으면 package다음에 작성, 여러개작성가능(순서신경안씀)다음은 java.util 패키지에서 Scanner 클래스를 import 해온다는뜻이다.import java.util.Scanner; 1-3.클래스,인터페이스,열거형파일이름의 public 하나만 정의가능그외에는 여러개 한파일에 정의가능(순서 신경안씀)// package 문: 패키지가 있다면 가장 먼저 위치package com.example.demo;// import 문: 클래스에서 사용할 외부 패키지들을 불러오는 역할, 여러 개 가능 (순서 상관없음)import java.util.Scanner;import j..
1.AuctionUser유저가 소유하는 아이템, 닉네임을 추가하였고 기존 name 속성을 userid 로 바꿨다.@Getter@Setter@Entitypublic class AuctionUser { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Column(unique=true) private String userid; @Column(unique=true) private String usernickname; private String password; @Column(unique=true) private String email; private Integer mon..
0.개요2024년도 제11회 한국기술교육대학교 프로그래밍 경시대회준비용으로 만든 알고리즘 예시 1.자바import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.util.StringTokenizer;public class Main { public void solution() throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new Buff..