목록분류 전체보기 (240)
요르딩딩
Mybatis란 Java 오브젝트와 SQL문 사이의 자동 Mapping 기능을 지원하는 Sql Mapper 입니다. MyBatis의 특징 1. 쉬운 접근성과 코드의 간결함. - JDBC의 모든 기능을 MyBatis가 대부분 제공합니다. - 깔끔한 소스코드를 유지할 수 있습니다. - 수동적인 파라미터 설정과 쿼리 결과에 대한 맵핑 구문을 제거할 수 있습니다. 2. SQL문과 프로그래밍 코드의 분리. - SQL에 변경이 있을 때마다 자바 코드를 수정하거나 컴파일 하지 않아도 됩니다. - SQL 작성과 관리 또는 검토를 DBA와 같은 개발자가 아닌 다른 사람에게 맡길 수도 있다. 3. 다양한 프로그래밍 언어로 구현가능 - Java, C#, .NET , Ruby MyBatis3의 주요 컴포넌트의 역할 - MyB..
context-datasource.xml => BasicDataSource를 Bean으로 등록합니다. => datasource란 JDBC는 명세의 일부분이면서 일반화된 연결 팩토리입니다. DB와 관계된 Connection 정보를 담고 있으며, Bean으로 등록하여 인자로 넘겨줍니다. Spring은 Datasource로 DB와의 연결을 합니다. => properties를 읽어서 값을 가져올 때 # 과 $ 방식이 있는데, Jasypt를 사용하면 $ 방식을 사용해야 합니다. destroy-method속성을 하지 않더라도 DBCP connection close 처리를 해주고 있었다. default 처리 출처: https://one0.tistory.com/15 [ONE.0의 공부노트], https://gmlwjd..
context-common.xml => component-scan 빈으로 등록 될 준비를 마친 클래스들을 스캔하여, 빈으로 등록해주는 것. (@Controller, @Service, @Component, @Repository 어노테이션을 붙인 클래스들이 빈으로 등록 될 준비를 한 것이다.) => base-package는 패키지를 어디부터 스캔할지 지정해주는 부분. (base package 기준으로 클래스들을 스캔하여 빈으로 등록) => stereotype은 간략히 말해, 고정된 또는 일반적인 패턴을 의미. => exclude-filter는 @Controller 를 제외하고 싶을때 사용 use-default="false"는 기본 어노테이션 @Controller, @Component @Service등을 스캔..
context-common.xml => component-scan 빈으로 등록 될 준비를 마친 클래스들을 스캔하여, 빈으로 등록해주는 것. (@Controller, @Service, @Component, @Repository 어노테이션을 붙인 클래스들이 빈으로 등록 될 준비를 한 것이다.) => base-package는 패키지를 어디부터 스캔할지 지정해주는 부분. (base package 기준으로 클래스들을 스캔하여 빈으로 등록) => stereotype은 간략히 말해, 고정된 또는 일반적인 패턴을 의미. => exclude-filter는 @Controller 를 제외하고 싶을때 사용 use-default="false"는 기본 어노테이션 @Controller, @Component @Service등을 스캔..
1. @Controller vs @RestController @Controller는주로 View를 반환하고, @RestController는 주로 Data를 반환합니다. ⇒ 즉, 역할을 구분따져보면 @Contoller(view) + @Responsebody(data) = @RestContoller(view+data)라고 생각하면 됩니다. @Controller와 @RestController의 차이는 용도에 따른 차이입니다. 예전에는 백엔드에서도 @Controller를 사용하여 jsp나 html과 같은 View를 전달해 주었기 때문에 사용해 왔지만, 최근에는 프론트엔드, 백엔드를 따로두고, @RestController를 백엔드에서 json으로 Data만 편리하게 전달하기위해 사용합니다. ⇒ 즉, Rest AP..
이번 문제는 나름 꽤 시간이 걸렸던 문제였습니다. 물론 시간날때마다 도전해서 그렇긴 하지만 String 문자를 char형으로 변환하여 증가/감소 시킬수 있다는 점과 변환하는 방법, 그리고 익숙하지만 잘 안쓰게 되는 swich문도 사용해 보았습니다. 1. 먼저 문제를 읽은 후 문제에 대한 이해가 중요합니다. 이번문제에서 헷갈렸던 부분은 돌을 언제 움직일 수 있느냐 였습니다. 문제를 보고 이해한 바로는 = 체스가 돌이 있는 위치로 이동하게 되면, 그 돌을 체스가 이동해온 방향으로 이동시킨다 였습니다. 문제를 풀어본 결과 다행이 제대로 이해한거 같습니다. 2. 이제 문제를 이해했으니, 규칙을 만드는 것이었습니다. 규칙을 만들어야 로직을 짤때 수월하기 때문입니다. 여기서 고민했던점은 "RT"로 이동할때 "R"로..
jar, war란 (ver.1) https://hyeounstory.tistory.com/74?category=849984 ver.1에 이어서 jar, war에 대한 설명을 다시 정리해 보려합니다. Jar, War, Ear란 모두 자바의 jar툴을 이용하여 생성된 압축(아카이브) 파일이며, 어플리케이션을 쉽게 배포하고 동작시킬 수 있도록 관련 파일(리소스, 속성파일 등)들을 패키징해주는 역할을 합니다. 파일 규모 :ear > war > jar > class JAR 자바 클래스 파일과 관련 소스파일 및 메타데이터을 압축한 파일입니다. 하나의 Application 기능이 가능하도록 java파일을 압축하고 지원합니다. java 어플리케이션이 동작할 수 있도록 자바 프로젝트를 압축한 파일로 생각할 수 있습니다...
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main{ public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String[] a1 = br.readLine().split(" "); int count = Integer.parseInt(a1[0]); int len = Integer.parseInt(a1[1]); // 2차원 배열로 세팅 String[][] arr = new Strin..