본문 바로가기
반응형

Back-End89

예외처리 예외와 예외 클래스 에러(Error) : 컴퓨터 하드웨어의 고장으로 발생되는 응용프로그램 실행오류 예외(Exception) : 잘못된 사용 또는 잘못된 코딩으로 인한 오류 자바는 예외가 발생하면 예외 클래스로부터 객체를 생성 Error, Exception : Throwable을 상속받음 예외클래스 : Throwable.Exception 상속받음 일반예외(Exception) 컴파일러가 예외처리 코드 여부를 검사O 예외처리 코드가 없다면 컴파일 오류를 발생시킴 실행예외(Runtime Exception) 컴파일러가 예외처리 코드 여부를 검사X Exception.RuntimeException 클래스를 상속 받음 예외처리 코드가 없다면 오류발생 없이 컴파일 가능하나 실행도중 예외발생 예외처리 코드 예외가 발생했을.. 2023. 1. 19.
라이브러리와 모듈 라이브러리 프로그램 개발 시 활용 할 수 있는 클래스와 인터페이스들을 모아놓은 것 클래스와 인터페이스의 바이트코드 파일(~.class)들을 압축하여 JAR파일형태로 존재(~.jar) 모듈 Java9부터 지원 패키지 관리 기능까지 포함된 라이브러리 일부 패키지를 은닉하여 접근할 수 없게끔 할 수 있음 모듈간의 의존관계 설정도 가능함 모듈을 만들때는 모듈기술자 파일이 반드시 포함되어있어야 하는데, 모듈기술자를 보면 모듈간의 의존관계를 파악할 수있음 모듈도 라이브러리이므로 JAR 파일 형태로 배포할 수 있음 응용프로그램을 기능별로 서브 프로젝트(모듈)로 쪼갠다음 조합해서 개발 할 수있음 2023. 1. 19.
Internet & database 우리가 MySQL을 사용한다 라는 개념은 데이터베이스 클라이언트에서 명령어로 데이터베이스 서버를 제어한다 라는 뜻 현재까지 실습한 건 ‘MySQL monitor’ MySQL monitor mysql을 설치하면 함께 설치되기 때문에 따로 설치하지 않아도 됨 GUI가 아닌 CLI(명령어 기반)의 프로그램, 어디서든지 실행가능 명령어를 기억해야 사용가능함 -h(host) : 제어하려는 서버에 해당되는 주소를 적어주면 됨 host : 인터넷에 연결되어 있는 각각의 컴퓨터 현재 실습은 클라이언트와 서버가 같은 컴퓨터 이기 때문에 주소를 적지 않아도 됨 (클라이언트와 서버가 같은 컴퓨터 = localhost or 127.0.0.1라고 적어도 됨) Workbench 사용하기 DB를 제어할 해당 주소와 연결 SCHEM.. 2023. 1. 17.
TABLE 분리와 JOIN TABLE 분리 RENAME TABLE (원래 table명) TO (바꿀 table명) JOIN SELECT (column명) FROM (table명) LEFT JOIN (묶을table명) ON (묶는 방법) topic.id : id column은 두 테이블에 동일하게 존재하므로 어떤 테이블의 id인지 명시해줘야 함 2023. 1. 17.
CRUD (Create, Read, Update, Delete) CREATE INSERT INTO table명(column) VALUES(column에 들어갈 row 데이터값) id 컬럼은 auto_increment 처리되어있기 때문에 따로 언급하지 않아도 됨 NOW() : 현재시간이 자동으로 저장됨 SELECT * FROM topic; : topic 테이블의 데이터를 모두(*) select READ 데이터 조회의 제한, 데이터 조회 방법 💡키워드가 오는 순서 중요! SELECT [ALL | DISTINCT | DISTINCTROW ] [HIGH_PRIORITY] [STRAIGHT_JOIN] [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT] [SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS] select.. 2023. 1. 17.
데이터베이스 만들기 데이터 베이스(schema) 만들기 CREATE DATABASE opentutorials; : opentutorials라는 데이터베이스를 생성 SHOW DATABASES; : 생성된 databases 확인 USE opentutorials; : opentutorials 를 사용시작 SQL(Structured Query Language) 이용하여 표(table) 만들기 💡 서칭 할 때 cheat sheet 키워드를 이용하여 검색하는 것이 팁! CREATE TABLE topic : topic 이란 테이블을 생성 INT(N) : 여기서 N값은 얼마까지 저장하느냐가 아닌 얼마까지 노출시킬 것인가 NOT NULL : id 값은 필수값이므로 값이 없는 것을 허용하지 않게 NOT NULL로 처리함 AUTO_INCREM.. 2023. 1. 17.
MySQL 시작하기 명령프롬프트 실행 mysql -uroot -p -u : 유저의 약자 root(유저네임) : 관리자, 모든 권한이 열려있음 -p : 패스워드를 치겠다 > p 뒤에 패스워드를 바로 쳐도 되지만 비밀번호가 노출됨 데이터 베이스의 이해 mysql 설치 = 데이터베이스 서버라는 프로그램을 설치한 것, 프로그램을 이용하여 데이터와 관련된 작업을 한다 데이터 베이스의 효용 데이터베이스는 자체적인 보안 체계가 있기 때문에 데이터를 안전하게 보관 가능 권한부여를 할 수 있음 2023. 1. 17.
인터페이스 - 01 인터페이스 사전적 의미로 두 장치를 연결하는 접속기 다형성 구현의 주된 기술 인터페이스 선언 class 대신 interface를 사용 접근제한자는 class와 동일 (public, default) 인터페이스 필드 (public static final) 무조건 public, static, final 특성을 갖는 상수필드 public, static, final 을 생략하더라도 컴파일 과정에서 붙게됨 인터페이스 추상 메소드 (public abstract) 무조건 public, abstract 을 가짐 public, abstract 를 생략하더라도 컴파일 과정에서 붙게됨 중괄호 블록 없음 인터페이스 구현객체에는 재정의된 메소드가 반드시 있어야함 인터페이스 디폴트 메소드 (public default) 선언 방법은.. 2023. 1. 5.
상속 - 02 자동 타입변환 자식 클래스는 부모의 특징과 기능을 상속받기 때문에 부모 클래스와 동일하게 취급될 수 있음 바로 위의 부모가 아니더라도 상속 계층에서 상위 타입이라면 자동 타입 변환이 일어날 수 있음 부모 타입으로 자동 타입 변환된 이후에는 부모 클래스에 선언된 필드와 메소드만 접근이 가능 (비록 변수는 자식 객체를 참조하지만 변수로 접근 가능한 멤버는 부모 클래스 멤버로 한정됨) 그러나 자식 클래스에서 오버라이딩 된 메소드가 있다면 부모 메소드 대신 오버라이딩된 메소드가 호출됨 부모타입 변수 = 자식타입객체; class Cat extends Animal { } Cat cat = new Cat(); Animal animal = cat; cat == animal // true 강제 타입 변환 (casting.. 2022. 12. 22.
반응형