• Statement와 PreparedStatement 비교  Statement와 PreparedStatement 클래스는 Java 애플리케이션에서 데이터베이스에 접근하여 SQL 쿼리를 작성하고 DB에 전달할 때 쓰는 클래스들로 다른 특성을 가지고 있다. StatementSQL 쿼리에서 변수를 직접 문자열로 결합하여 사용String sql = "insert into student values(" + sno + ", '" + name + "', ...);";st.executeUpdate(sql);SQL 인젝션 공격에 취약하며, 매번 새롭게 SQL 구문을 컴파일하므로 성능이 떨어질 수 있다.문자열 결합형식을 취하기 때문에 동적 쿼리 사용시 작성의 불편함이 있다.  PreparedStatement ?로 표기하는 ..

  • Frontend 와 Backend 간의 데이터 전송프론트앤드에서 사용자가 입력한 데이터를 서버로 전송하고 최종적으로 해당 데이터를 SQL문을 통해 데이터베이스에 저장이과정에서 JAVA 는 SQL 문을 통해 DB와 상호 작용하는 중간 역할을 수행한다.Java 와 DB 연결을 위한 JDBC 사용JDBC(Java Database Connectivity)java 애플리 캐이션이 다양한 데이터베이스에 연결될 수 있도록 해주는 API자바 운영체제에 JVM이 있던것 처럼,DB에 관해서도 각 DBMS 마다 존재하게 된다 ➡️JDBC Driver APIJDBC Driver각 DB 회사마다 드라이버를 제공하고 있다.mySQL은 커넥터를 이용하여 JDBC 드라이버 API를 사용한다.드라이버들도 공통된 규칙이 정해져 있고 ,..

  • 인터페이스란 ? 추상클래스의 추상메서드를 활용하는 것과 같이더 강력하게 추상만 넣어두어 규칙만 명시한것이라고 볼 수있다.클래스와 클래스를 연결하는 기법이고,서로 상속관계가 아닌 클래스들을 연관성 있게 다형성을 활용하여 체계성을 만들고 싶을때 사용한다.추상 메서드와 상수(리터럴 의무!) 만 올 수있다. interface의 특징1. 완전한 추상화 : 인터페이스는 기본적으로 모든 메서드가 추상 메서드이며 , 구현을 가질 수 없다.(Java 8 이후부터는 디폴트 메서드와 정적 메서드에 한해 구현을 가질 수 있다. 아래의 메서드 사용법 있음.)2. 상태없음 : 인스턴스 변수를 가질 수없다(단 , 상수는 가질 수 있다.)3. 다중 상속 지원 : 하나 이상의 인터페이스를 구현 할 수 있다.4. 구현 : 클래스가 인터..

  • 1. 직접 처리 해당 메서드 내에서 try ~ catch 블럭 처리public static String readString1() { byte [] bf = new byte[100]; System.out.println("readString1 ) 문자를 입력하세요."); System.in.read(bf); //컴파일 오류 : Unhandled exception…} Java의 system.in.read()메서드는 입력 스트림에서 바이트를 읽어들이는 과정에서 다양한 예외가 발생할 수 있기 때문에 이를 처리할 필요가 있다. 입력 및 출력 작업 중에 발생하는 예외로, 스트림이 닫혔거나, 입출력 장치가 사용 불가능한 경우에 발생 → IOException즉 system.in.read 는 IOException 을 던질 ..

  • 자바의 예외처리 방식자바에서 발생 가능한 오류 상황을 예외 처리의 객체로 만들어 현재 관리되고 있는 것이다.필요하다면 , 그 오류에 대해서 대응하고 진행하는 방법에 대해 정의해 놓았다.그에 대한 구문이 try - catch - finallytry { // 예외가 발생할 수 있는 코드} catch (ExceptionType1 e1) { // ExceptionType1 예외를 처리하는 코드} catch (ExceptionType2 e2) { // ExceptionType2 예외를 처리하는 코드} finally { // 예외 발생 여부와 상관없이 항상 실행되는 코드}  예외 처리에 대한 중요성예외 처리는 프로그램의 안정성과 신뢰를 높이는데 중요하다.적절한 예외 처리는 예기치 않은 상황에서..

  • enum 의 개념열거형(enum) 타입을 정의하는 데 사용되는 특별한 클래스.여러 상수들을 하나의 타입으로 정의할 수 있도록 해준다.단순히 상수 집합을 표현하는 것이 아닌 클래스 처럼 동작하여 메서드 또는 필드를 가질 수 있어 더 강력한 기능을 제공한다. [✔️예시01_기본동작]public enum Day { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY} Day today = Day.MONDAY;if (today == Day.MONDAY) { System.out.println("오늘은 월요일입니다.");}➡️의미를 가진 단어들을 상수로 사용하기 때문에 가독성은 물론 안정적으로 사용할 수 있다. enum 의 특징타입의 안전성 잘..

  • Copyright 2024. GRAVITY all rights reserved