백엔드 70

Mybatis - <sql>, <include> | TIL_159

Mybatis를 사용하면서 개인적으로 기록한 내용을 정리 Mybatis 기본내용 id = 구현시 호출할 이름 parameterType = 파라미터 값 타입 public int Select(int bno) //괄호 안 부분 resultType = 결과타입 return 타입 = public int Select() | public Dto Select() 과 를 사용할 떄 1. 태그는 다른 구문에서 재사용가능한 sql 구문을 정의할 때 사용한다 select * from board *주의 : sql태그 내에 있는 쿼리들을 재사용 할 경우 재사용할 쿼리의 상단에 선언되어야 한다 하단에 선언되면 불러올 수 없다 sql 태그 내에 파라미터 값을 추가할 수도 된다 단, 인자 값이 존재해야 에러가 나지 않는다 title ..

백엔드/Database 2022.11.03

Spring - 어노테이션으로 값 초기화, 설정 | TIL_158

https://www.youtube.com/playlist?list=PLq8wAnVUcTFUHYMzoV2RoFoY2HDTKru3T 스프링 강의를 듣고 정리한 내용입니다 어노테이션을 이용하여 값 초기화하기 @Value 어노테이션을 이용한다 @Component public class NewlecExam implements Exam { @Value("20") //기본값 할당 private int kor; @Value("30") private int eng; private int math; private int com; } ApplicationContext에 등록된 빈들의 어노테이션들이 적용될 수 있게한다 어노테이션이 설정된 새롱운 빈들을 찾는 스캔도 할 수 있게 만든다 @Component 방식의 주의점 MVC..

백엔드/Spring 2022.11.01

Spring - 어노테이션으로 객체 생성 | TIL_157

https://www.youtube.com/playlist?list=PLq8wAnVUcTFUHYMzoV2RoFoY2HDTKru3T 스프링 강의를 듣고 정리한 내용입니다 객체를 어노테이션으로 생성하기 ▷ @Component를 이용한다 InlineExamConsole 클래스 @Component class InlineExamConsole { @Autowired//@Autowired(required=false) private Exam exam; @Autowired public void setExam(Exam exam) { this.exam = exam; } } 해당 코드만으로는 객체가 만들어지지 않는다 → 클래스를 읽어오는 설정이 필요하다 component-scan을 이용하여 지정한 컴포넌트를 읽어올 수 있도록..

백엔드/Spring 2022.10.26

Spring - @Autowired(required) | TIL_156

https://www.youtube.com/playlist?list=PLq8wAnVUcTFUHYMzoV2RoFoY2HDTKru3T 스프링 강의를 듣고 정리한 내용입니다 @Autowired의 위치와 Required 옵션 @Autowired는 필드 위에도 쓸 수 있다 @Autowired private Exam exam; 기본 생성자를 호출하여 Injection InlineExamConsole 클래스 @Autowired @Qualifier("exam2") public Exam exam; public InlineExamConsole() { System.out.println(“constructor”); } public InlineExamConsole(Exam exam) { System.out.println(“ov..

백엔드/Spring 2022.10.24

Spring - @Autowired의 참조 기준 | TIL_155

https://www.youtube.com/playlist?list=PLq8wAnVUcTFUHYMzoV2RoFoY2HDTKru3T 스프링 강의를 듣고 정리한 내용입니다 Dependency를 Injection 하는 어노테이션 @Autowired 스프링의 IoC 컨테이너에서 설정대로 객체를 생성하고, Injeciton 한다 * 참고 설정을 따로 하지 않을 경우 @Autowired라는 어노테이션을 읽어들이지 않는다. @Autowired 어노테이션의 문제점 @Autowired가 무엇을 근거로 참조했는지 여부를 알 수 없다 컨테이너에서 exam 객체를 찾아서 세팅을 할 때 @Autowired 된 객체를 찾는 기준 찾기 자료형을 기준으로 찾는다 변수명을 기준으로 찾는다 테스트 Program 클래스 Applicati..

백엔드/Spring 2022.10.22

Spring - 어노테이션의 장점 | TIL_154

https://www.youtube.com/playlist?list=PLq8wAnVUcTFUHYMzoV2RoFoY2HDTKru3T 스프링 강의를 듣고 정리한 내용입니다 어노테이션 생성 계기 이전까지는 소스 코드를 바꾸지 않고 결합 상태를 변경을 하기 위해 xml에 설정을 따로 빼놓는 방식을 사용했다 생성할 객체를 B3로 바꾸기 위해서는 위의 설정을 바꾸어야 한다 ※ 객체를 바꾸었을 때 설정도 함께 바꿀 수 없을까? -> 코드에 메타데이터를 추가한다 -> 어노테이션을 사용하게 된 계기이다 스프링의 어노테이션 @Component 라는 어노테이션을 B2객체와 B3 객체에 붙이면 스프링이 코드를 읽은 후 객체화 한다 -> 최근에는 설정을 분리할 때 xml대신 어노테이션의 방식이 자주 사용된다. xml에서 구현한..

백엔드/Spring 2022.10.20

Spring - Collection 생성&목록 DI | TIL_153

https://www.youtube.com/playlist?list=PLq8wAnVUcTFUHYMzoV2RoFoY2HDTKru3T 스프링 강의를 듣고 정리한 내용입니다 Program 클래스 ▷ exam을 참조하는 ArrayList 생성 //List exams = new ArrayList(); List exams = (List) context.getBean("exams"); exams.add(new NewlecExam(1, 1, 1, 1)); for(Exam e : exams) System.out.println(e); ▷ xml에서 ArrayList 생성하기 Program 클래스에서 exams.add(new NewlecExam(1, 1, 1, 1)); 코드를 xml로 변환하는 방법 ▷ setting.xml..

백엔드/Spring 2022.10.17

Spring - 생성자 DI | TIL_152

https://www.youtube.com/playlist?list=PLq8wAnVUcTFUHYMzoV2RoFoY2HDTKru3T 스프링 강의를 듣고 정리한 내용입니다 Constructor를 이용한 속성 값 설정 NewlecExam 생성자 추가 public NewlecExam() { } public NewlecExam(int kor, int eng, int math, int com) { this.kor = kor; this.eng = eng; this.math = math; this.com = com; } 태그 추가 ▷ 문제점 : 각 객체에 해당하는 순서를 알 수 없다 해결법 1. index를 추가한다 2. index 대신 name을 사용한다 위의 태그를 사용하기 위하여 NewlecExam 클래스에 to..

백엔드/Spring 2022.10.12

Spring - 값 형식 DI | TIL_151

https://www.youtube.com/playlist?list=PLq8wAnVUcTFUHYMzoV2RoFoY2HDTKru3T 스프링 강의를 듣고 정리한 내용입니다 값 형식 DI setting.xml에서 exam의 값을 설정할 때 setter를 이용하여 값을 주입할 수 있다 Exam exam = new Exam(); exam.setKor(20); exam.setEng(50); exam.setmath(80); 위의 코드를 xml 형식으로 변환한다 property 단일 태그를 이용한 방식 태그를 중첩하여 값을 할당할 수도 있다 20

백엔드/Spring 2022.10.10

Spring - IoC 컨테이너(ApplicationContext) | TIL_150

https://www.youtube.com/playlist?list=PLq8wAnVUcTFUHYMzoV2RoFoY2HDTKru3T 스프링 강의를 듣고 정리한 내용입니다 IoC 컨테이너 이용하기 – ApplicationContext ApplicationContext 스프링에서 DI 지지서를 읽고 생성하는 객체이다 ApplicationContext 자체는 인터페이스이며, 이를 구현한 구현 객체 중 하나가 아래의 코드이다 ClassPathXmlApplicationContext("config.xml"); //xml이 실행될 위치를 적어넣는다 ApplicationContext의 종류 ClassPathXmlApplicationContext : 어플리케이션의 경로를 지정할 때 사용한다 FileSystemXmlAppl..

백엔드/Spring 2022.10.06