목록Spring Framework (79)
seo92iy
Annotation @Override @Configuration 같은 표시 메타데이터 / 유효성 검사 용이 / 코드 정리 @Configuration 오브젝트 설정 담당 클래스 / @Bean 오브젝트 설정(생성) 담당 메소드 이클립스 스프링 기본 설치 blog.naver.com/kroa/222297200849 ApplicationContext
UserDaoTest, DaoFactory에서도 리펙토링 한다. 이렇게 계속 클래스 만들면 엄청 많아져서 나중에 이름 헷갈리겠다. 제어 역전(IoC)
인터페이스 슈퍼클래스와 서브클래스 간의 연결을 추상적인 고리로 느슨하게 만들어주는 역할 생성자에서 클래스 이름을 특정해야 한다. -> 클래스 간 분리 안됨. 클라이언트 클라이언트(main)에다가 클래스 이름 특정 문제를 넘긴다. 이제 D, N 바꿀 때 UserDao는 안 봐도 된다. 위아래로 책임을 넘겨서 독립을 시킨다. 목적을 집중시킨다. 궁금점 main은 바꿔도 되나? -> 클래스/모듈은 확장엔 열려 있어야 하고 변경엔 닫혀 있어야 한다.(OCP) SOLID / 높은 응집도 / 낮은 결합도 / 전략 패턴
파일보다 구조적으로 데이터를 저장하고 가공 가능 스프레드시트 또한 DB의 특성을 가지고 있지만, 프로그래밍 언어를 통해 CRUD를 수행하기 위해서 DB가 필요하다. -> 자동화 cmd창으로 경로 들어가서 mysql -uroot -p (-u = user의 약자 -uroot = root라는 사용자로 접속) root는 모든권한이 허용되므로 평소에는 일반 사용자를 만들어서 쓰다가 필요할 때 root를 사용하는 것을 권장 SQL(Structured Query Language)모르는 건 검색하자. CHEAT SHEET도 보면 좋다.CRUD (INSERT SELECT UPDATE DELETE)
JAVA1 System.out.println -> sout + ctrl+space System.out.println(6 + "7"); -> 67 / String 쌍따옴표 : String / 따옴표 : Char \ = escape 쌍따옴표 출력 : \" 사용 (따옴표는 그냥 사용가능) ex) \\\\\'World!' -> \\'World!' float - 끝에 f를 붙여야한다. 0.01f Run Configurations 을 통해 args 설정가능 API Application Programming Interface 자바가 기본적으로 제공하는 lib의 조작 방법 시간순으로 UI User Interface 사용자가 조작 Package Class 그룹 Class 변수,메소드 그룹 주석처리 Ctrl + / or ..
문제점 - add, get Method에 중복 코드가 있음. 해결방법 - 코드를 그룹으로 묶는다. 1. DB와 연결 2. SQL 생성,실행 3. 리소스 반환 - getConnection Method로 중복 코드를 빼낸다. (Refactor 기능 사용) (1.DB 연결과 2.SQL 분리) - 추상화, 상속을 통해 서브 클래스로 getConnection Method를 빼낸다. (이건 코드 확장을 위한 방법) (단점 : 1. 자바는 다중상속이 안되므로 다른 목적으로 상속을 해야 할 때 한계가 있다. 2. 상속은 생각보다 더 밀접한 관계다. 서브클래스를 위해 슈퍼클래스가 바뀌면 안되는 경우 발생 가능) - 하지만 더 깔끔하게 할 수 있을 것 같음. import java.sql.Connection; import ..
읽기 전 내가 생각한 문제 - add, get Method에 중복 코드가 있음. 해결방법 - createConnection Method로 중복 코드를 빼낸다. (Refactor 기능 사용) - 하지만 깔끔하지 않음. import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public class UserDao { private PreparedStatement ps; private Connection createConnection(String strQuery) throws ClassNotFound..