본문 바로가기

JAVA

4일차 "" != char"" != nullstr.charAt(0) -> java.lang.StringIndexOutOfBoundsException for( int i=0;i 더보기
3일차 11. 메서드public static void main(String[] args){접근제어자 / static returnType 메서드명 parameter } 11-1 접근제어자클래스package외부전체publicooooprotectedoo상속xdefaultooxxprivateoxxx 11-2 static모든곳에 공개되어 있는 친구메모리에 할당되어 reference(주소)를 가지고 있다.언제 ? Load 할 때non-static12 package구분을 위해 나눴던 것 13. import 더보기
2일차 보수의 법칙 / 논리 오류 시스템 설계도 작성할 때, 명명법 넣어야 함.4. 명명법(권고사항)안지켜도 되지만, warning이 뜬다. 배포시 문제가 발생한다.(API DOC만들때 발생) 1) PASCAL 표기법 - 첫글자가 대문자로 시작(클래스명),java.lang.ArrayIndexOutOfBoundsException2) CAMEL 표기법 - 첫글자가 소문자로 시작 (메소드명, 변수명) PersonService3) HUNGARIAN 표기법 - TexT ,function(메소드명, 변수명) 4) UPPER - 상수 Math.PI5) LOWER - 예약어 int,double, import,package 젤못하는것 , 주석달기 , DOC만들기 6. 식별자(Identifier)1) 첫글자는 숫자 쓸 수 없다... 더보기
1일차 1. JDK : Java Development Kit(회사마다 쓰는 버젼이 다르니, 설치시 버젼 주의 하기) JavaSE(Standard Edition)JavaEE(Enterprise Edition) : JRE -> JavaEEJavaME(Micro Edition) 관공서(1.6)개발(1.7)자바10으로 변경을 하겠다는 이야기가 나오는 중(java4 까지 따로 설치 했어야 했다)JDK---JRE|JVM|----java2java4JDK - 컴파일, 배포, 역컴파일 / exe실행파일[javac(컴파일러 - binary 로 변경) , javap(binary를 자연어로 변경), javadoc(매뉴얼), jdb( 디버거_검수)] JRE (Java Runtime Environment) 이것 때문에 이식성이 높다.자.. 더보기
JDBC API java.sql Package 살펴보기 java.sql.Driver- DriverManager에 의해서 관리되고 Class.forName(Driver이름);을 주면 DriverManager에 register한다. java.sql.ConnectionConnection 에다가 url과 user ,password를 넘겨줘서 네트워크 소켓 넘겨주듯, 넘겨준다.- conn = DriverManager.getConnection(url,user,password); java.sql.preparedStatementstatement를 가져옴.stmt = conn.prepareStatement(sql); java,sql.resultSetDB가 swap 공간에 resultSet을 넘겨주면, 그 주소를 연결해서 가지고 있는다!.. 더보기
JDBC의 구성 & 주요 DBMS 더보기
DAO (Data Access Objects) DAO와 DatabaseUtil 이 만들어지게 된 논리적 흐름. 1. 프로그램 실행시 DB에 연결을 유지시켜주는 것보다 DB에 연결을 시도할 때마다 연결하고 연결을close 해주는 것이 좋은데 이렇게 연결을 자꾸 연결했다, 닫았다 를 반복한다면, 퍼포먼스가 떨어진다. 그렇다면, 어떻게 구현을 할까??? 연결을 반복하면 안되지만, 연결을 유지해서도 안된다. 2. 연결을 만들어 놓자!!!!! 그러면 만들어진 연결을 가져다 쓰면 될것 아니겠음?? 그 연결을 관리하는 클래스가 필요했다. BasicDataSource!! DatabaseUtil Class의 탄생 3. 그런데 이렇게 만들어진 DAO와 Util이 여러개가 있다면? - 객체가 생성될 때마다 제한을 두는 행동들이 의미가 없어진다. 때문에 싱글톤 패턴이 필.. 더보기
Singleton Design Pattern Singleton Pattern 은 Manager 또는 Service 같은 관리하는 클래스 즉, 두개 이상 만들면 안되거나, 만들 필요를 느끼지 못할 때 사용한다. 1. 생성자를 private으로 선언해서 접근이 불가하게 만든다. 2. 클래스를 인스턴스로 생성한다. 3. getInstance라는 static 메소드를 만들어서 , 이 곳을 통해서만 객체를 넘겨준다. ㄴ 이때, 생성된 객체는 클래스 변수로 만들어져서 하나의 객체만이 생성이된다. 이렇게 생성!! public class DepartmentDAO { private static DepartmentDAO deptInstance = new DepartmentDAO(); private DepartmentDAO(){ } public static Depar.. 더보기
JDBC Driver Loading 1.Driver loading2.Connection(연결)3.Statement/PreparedStatement4.SQL문 전송–ResultSet(Select의 경우)5.close(1. ResultSet, 2. Statement, 3. Connection) String url = "jdbc:oracle:thin:@192.168.7.195";//:1521:XE";String user = "scott"; // IDString password = "tiger"; // PWString driveClass = "oracle.jdbc.driver.OracleDriver"; Connection conn = null;Statement statement = null;ResultSet resultSet = null; 1. .. 더보기
조인 (JOIN) 조인 : 일반적으로 부모테이블과 자식테이블을 연결해서 조회 ( 부모의 PK와 자식의 FK 연결 ) 0. 카티션 조인(CARTESIAN JOIN) - 그냥 막 묶어줌 N x M 개 만큼 나온다.SELECT e.employee_name, d.department_nameFROM employee e, department d 1. 내부조인(INNER JOIN)두 테이블간의 연결고리가 되는 컬럼이 필요 SELECT e.employee_name, d.department_nameFROM employee e, department dWHERE e.department_id = d.department_id AND e.employee_id = 100 2. 외부조인(OUTER JOIN)- 내부조인의 경우 Join 조건을 만족하지.. 더보기