목록전체 글 (462)
hyeonga_code
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/TtNB8/btsBF2ohbpw/sFdQ5GXOStR8wWkwCgeETK/img.jpg)
- 스프링 IoC - 소스코드를 변경하지 않고 매개 변수를 이요하여 객체를 변경할 수 있도록 구현합니다. - 스프링 설정 파일 생성 및 스프링 컨테이너 구동 1) 클라이언트가 스프링 설정 파일을 로딩하여 컨테이너를 구동합니다. 2) 스프링 설정 파일에 bean 등록된 객체를 생성 3) getBean() 메소드로 bean에 설정한 객체를 요청 4) 객체를 반환 - src/main/resources > Spring Bean Configuration File 생성하기 'applicationContext.xml' 추가 ===== 1 2 3 4 5 6 7 8 9 - src/main/java > basic.spring.polymorphism > 'TVUser4.java' 클래스 생성 ===== 1 2 3 4 5 6..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cl5nwB/btsBR802EaB/Igob8T47oOkASOfTgKfrak/img.jpg)
- 디자인 패턴 이용하는 방식 - basic.spring.polymorphism > 'BeanFactory.java' 클래스 생성 ===== 1 2 3 4 5 6 7 8 9 10 11 package basic.spring.polymorphism; public class BeanFactory { public Object getBean(String beanName) { if(beanName.equals("samsung")) return new SamsungTV(); else if(beanName.equals("lg")) return new LgTV(); return null; } } - basic.spring.polymorphism > 'TVUser3.java' 클래스 생성 ===== 1 2 3 4 5 6 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/E3vTr/btsBHPPhuAs/RCpcYDwjkcnMZ4jYRTymCk/img.jpg)
- 다형성을 이용한 방식 - basic.spring.polymorphism > 'TV.java' 인터페이스 생성 ===== 1 2 3 4 5 6 7 8 package basic.spring.polymorphism; public interface TV { public void powerOn(); public void powerOff(); public void volumeUp(); public void volumeDown(); } - basic.spring.polymorphism > 'SamsungTV2.java' 클래스 생성 ===== 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 package basic.spring.polymorphism..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/XqPIz/btsBY8GyEz3/rZ4rb0sIZKURijPV7duQVK/img.png)
reProject_02_ input 태그 간단한 css, 로그인 페이지, 아이디 찾기/ 비밀번호 찾기 페이지 구현하기 2023.12.12. input 태그 css 정리 > css 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 inpu hyeonga493.tistory.com 2023.12.13 1. jQuery를 이해하고 싶어 집에 있던 책을 한 번 훑었다. - 클래스 추가 $()..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/FRkwQ/btsBRSDUb07/IfuwxKOsB1fEhf0IBKaTNK/img.jpg)
- 지금까지 사용한 방식으로 작성 - src/main/java > basic.spring.polymorphism 패키지 생성 - basic.spring.polymorphism > 'SamsungTV.java' 클래스 생성 ===== 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 package basic.spring.polymorphism; public class SamsungTV { public void powerOn() { System.out.println("SamsungTV 전원을 켠다."); } public void powerOff() { System.out.println("SamsungTV 전원을 끈다."); } public void volumeUp() { ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bJaz4p/btsBRS4YX5P/nQkdmuK2rCAWWRKNtz4uK1/img.jpg)
- MVC 프로젝트 생성하기 - New > Spring Legacy Project - Name : myboard - Templates : Spring MVC Project > Next - Project Settings > Spring MVC Project : basic.spring.myWeb으로 작성합니다. - 나중에 변경하기 복잡하므로 처음 생성 시 정확하게 작성합니다. > Finish - 에러 발생합니다. - JRE가 1.6으로 지정되어 있습니다. - properties > Project Facets - Java : 11 version으로 변경합니다. - Runtimes : Tomcat 체크합니다. > Apply and Close - src/main/java > basic.spring.myWeb 폴더..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/lJP0C/btsBF0KL6lM/UNWFhKcs2kgN93euZgKYhk/img.jpg)
- 객체 지향 프로그래밍 이론 - 객체 지향 설계의 원칙 - SRP_Single Responsibility Principle : 단일 책임 원칙 - OCP_Open Closed Principle : 개방 폐쇄 원칙 - LSP_Liskov Substitution Principle : 리스코프 치환 원칙 - ISP_Interface Segregation Principle : 인터페이스 분리 원칙 - DIP_Dependency Inversion Principle : 의존 관계 역전 원칙 - 높은 응집도 : 하나의 관심사에 집중 - 낮은 결합도 : 책임의 분리 - 전략 패턴 - 외부로부터 분리, 필요에 따라 변경
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/kUmwB/btsBHP2Sa0R/PpN9ZHqgHgvpV5Si8q5uUk/img.jpg)
- sql문장과 실행, 구현을 하나의 DAO로 구현하는 경우 발생하는 문제점 - 관심사의 분리 - SoC_Seperation of Concern - 같은 관심사를 가진 것끼리 하나의 객체로 분류합니다. - 서로 영향을 주지 않도록 분리합니다. - UserDAO의 관심사항 1) DB와 연결을 위한 커넥션을 가져오는 방식 2) 사용자 등록을 위해 DB에게 보낼 SQL 문을 담을 Statement 생성, 실행 3) 사용 완료된 리소스(statement, Connection) 반환 - DB 커넥션 생성의 독립 - 여러 사용환경의 호환 - 적용 방법 - 디자인 패턴 - 템플릿 메소드 패턴 - 팩토리 메소드 패턴 - DAO 확장 - 두 개의 독립된 클래스로 분리합니다. - 문제점 - SimpleConnection ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/yVwy1/btsBHrH19xp/jtrzDsacmOG8PtkqHCeaR1/img.png)
reProject_01_프로젝트 재정비 2023-12-08 - 프로젝트 기간이 종료되었지만 프로젝트가 완벽하지 않은 상태로 마무리되었으므로 다시 보완하기로 결정 - 부족한 점 - 화면이 일관성 없이 각자 진행하여 충돌하는 css - 일관되지 않 hyeonga493.tistory.com 2023.12.12 input 태그 css 정리 > css 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 7..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ZnUoW/btsBGYlql1Y/onK8eRIXW3B5l0AUJSjkTk/img.jpg)
- 스프링을 이용한 의존성 주입하기 - day01 > sts.day01.exam02 패키지를 sts.day01.exam03으로 복사합니다. - web > WEB-INF > lib 폴더에 기본 spring을 위한 jar 파일 추가합니다. - commons-logging-1.2.jar - spring-beans-5.3.27.jar - spring-context-5.3.27.jar - spring-core-5.3.27.jar - spring-expression-5.3.27.jar - spring-jcl-5.3.27.jar - new > Source Folder - 이름 : srcmain/resources > Finish - srcmain/resources 폴더에 새로운 spring bean 파일 생성하기 - ..