목록나의보물들/Java (10)
솔솔

🍀 Scanner 특징다양한 타입(int, double, String 등)으로 직접 변환 가능공백(띄어쓰기, 개행) 기준으로 자동 구분하여 입력 처리내부적으로 정규 표현식을 사용하기 때문에 다소 느림사용법 import java.util.Scanner;public class Input { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String str_input = sc.next(); // 문자열 입력 받기 int int_input = sc.nextInt(); // 정수 입력 받기 double double_input = sc.nextDouble(); // 실수 ..
🍀 Lombok이란?Lombok은 자바의 라이브러리로 코드의 반복을 줄이고 개발 생산성을 높이기 위해 사용됨. 주로 Entity 클래스와 같은 데이터 중심의 클래스에서 유용하며 여러 가지 어노테이션을 통해 컴파일 타임에 자동으로 코드의 일부를 생성해 줌. 이를 통해 개발자는 자주 작성해야 하는 코드(예: getter, setter, 생성자 등)를 직접 작성할 필요 없이 더 간결하고 유지보수하기 쉬운 코드를 작성할 수 있음. 🍀 Lombok의 장단점1. 장점코드 간결화: 반복적이고 장황한 코드 작성이 줄어들어 코드가 간결해짐.개발 생산성 향상: 필요한 메서드를 자동으로 생성하여 개발 시간을 단축할 수 있음.2. 단점디버깅의 어려움: 자동으로 생성된 코드가 보이지 않기 때문에 디버깅할 때 문제가 발생할..
🍀 JDBC란? Java에서 데이터베이스와 연결하고 상호작용할 수 있도록 해주는 API 🍀 JDBC의 주요 구성 요소 DriverManager: 데이터베이스 드라이버를 로드하고, 데이터베이스 연결을 관리.Connection: 데이터베이스와의 연결Statement: SQL 문을 실행PreparedStatement: 사전 컴파일된 SQL 문을 실행하는 데 사용됨ResultSet: SQL 쿼리의 결과를 저장하고 탐색할 수 있음 🍀 JDBC의 주요 구성 요소 상세 1. Connection - Connection 객체는 데이터베이스와의 연결을 나타내며 DriverManager를 통해 생성됨import java.sql.Connection;Connection conn = DriverManager.getCo..
🍀 MVC 패턴이란?소프트웨어 공학에서 사용되는 소프트웨어 디자인 패턴 중 하나로 애플리케이션 개발 시 세 가지(Model-View-Controller) 주요 구성 요소로 분리하여 구조화된 방식으로 개발할 수 있도록 도와줌. [ M ] Model 역할 : 비즈니스 로직과 데이터 관리를 담당 책임 : 비즈니스 로직을 처리하고 데이터베이스와 상호작용하여 데이터를 가져오거나 저장하는 역할 예외 처리 : 비즈니스 로직에서 발생하는 예외를 처리 그러나 모델은 사용자에게 직접적인 응답을 생성하거나 표시할 수 없음 [ V ] View 역할 : 사용자 인터페이스를 담당 책임 : 모델의 데이터를 사용자에게 보여주고 사용자가 데이터를 입력할 수 있도록 함 예외 처리 : 일반적으로 예외를 직접 처리하지 않지만 컨트롤러가 ..
SArrayList data3 = new ArrayList();data3.add("1");data3.add("2");data3.add("3");data3.add("4");data3.add("5");System.out.println(data3.stream().mapToInt(Integer::parseInt).max()); // OptionalInt[5]System.out.println(data3.stream().mapToInt(Integer::parseInt).count()); // 5System.out.println(data3.stream().mapToInt(Integer::parseInt).min().getAsInt()); // 1 위의 코드에서 3가지의 출력문이 있는데 data3에서 Stream을 활..
for(Animal animal : searchAnimals) { if(animal.getPetId() != animalPK) { searchAnimals.remove(animal); }} [에러가 나왔던 상황]미니 프로젝트를 진행하던 중 아래의 3번째 줄 코드에서ConcurrentModificationException 라는 에러가 났다. [에러가 나온 원인]ConcurrentModificationException은 번역기로 직역하면 동시수정예외인데Java에서 컬렉션을 반복하면서 컬렉션의 내용을 수정하려고 할 때 발생하는 에러이다.ArrayList와 같은 컬렉션에서 for-each 루프를 사용하여 요소를 순회하면서 요소를 제거하면 이 예외가 발생한다. 이 에러는 내부적으로 Iterator를 ..

1. [Java]폴더에 버전 여러개 설치 해둔다.(저는 자바11, 17을 설치했습니다.) 2. [Java]폴더안에 [scripts]폴더를 만든다. 3. 메모장을 열고 아래 코드를 복사 하고 붙여넣은 후 본인 컴퓨터에 JDK가 있는 경로와 버젼을 맞게 적는다. @echo off set JAVA_HOME={JDK 경로} set Path=%JAVA_HOME%\bin;%Path% echo Java {버젼} activated. 4. 다른이름 저장에 들어가서 파일이름은 "java{버전}.bat"로 파일형식은 모든파일로 해서 배치 파일을 만들어준다. 바로 [scripts]폴더로 저장하려고하면 접근자권한 때문에 문제가 생기니 바탕화면에 저장했다가 [scripts]로 옮기는편이 편하다. 5. 시스템환경변수편집에 들어간다..

로그인 할 때 1.로그인페이지 클릭 → 로그인 → 메인페이지 2. 회원만 들어갈 수 있는 페이지 클릭 → '회원만접속가능합니다 로그인 해주세요' 알림창 후 → 로그인 → 처음클릭한 페이지 이렇게 로그인 후 특정페이지로 이동하는것을 볼 수 있는데 이걸 한 번 해보겠습니다! 💡스타트! 1. 저는 실시간예약이라는 메뉴를 회원만 이용할 수 있도록 하겠습니다. // html 실시간예약 // js function realTimeRsv() { $.ajax({ url: url, type : type, datatype : 'json', data : data, success : function(data) { if(로그인 확인 후 로그인 세션有) { location.href="{이동할 페이지}"; }else{ alert("..