Bible, Lee, Data
Faith, software, data, and everyday life.
JavaAll posts
[Spring] 코드 조각 관리 게시판
🌿코드 조각 관리 게시판코드 조각 관리 게시판을 구현해 보도록 하자. 파일 생성com.test.controllerCodeController.javacom.test.persistenceCodeDAO.java (I)CodeDAOImpl.java (C)com.test.domainCodeDTO.javaviewslist.jspviews.jspadd.jspsrc/main/resources > mappercode.xml 기본 작업1. 프로젝트 설정 2. CodeDTO 태그 name 추가3. CodeDAOImpl과 CodeDAO implements 설정4. CodeDAOImpl이 bean이 되도록 @Repository 붙임@Autowiredprivate CodeDAO dao; //public CodeControlle..
[Spring] MyBatis: 반환값과 매개변수에 따라 달라지는 쿼리
🌿쿼리 경우의 수1. 반환값(X), 매개변수(X)2. 반환값(X), 매개변수(O)3. 반환값(O), 매개변수(X)반환값: 단일값반환값: 레코드 1줄반환값: 레코드 N줄4. 반환값(O), 매개변수(O)반환값: 단일값반환값: 레코드 1줄반환값: 레코드 N줄 [Spring] MyBatis: Connection Pool (Commons DBCP, HikariCP)🌿MyBatis 영속성 계층 (데이터베이스 조작 계층) Mybatis는 자바 오브젝트와 SQL사이의 자동 매핑 기능을 지원하는 ORM(Object relational Mapping) 프레임워크이다. MyBatis는 Spring 기술이 아닌 독립적인 기술isaac-christian.tistory.com이전 MyBatis 글에서 이어진다. 🌿반환값(..
[Java] Baekjoon Online Judge 10431: 줄세우기
10431번: 줄세우기 초등학교 선생님 강산이는 아이들을 데리고 단체로 어떤 일을 할 때 불편함이 없도록 새로 반에 배정받은 아이들에게 키 순서대로 번호를 부여한다. 번호를 부여할 땐 키가 가장 작은 아이가 1 www.acmicpc.net 💡문제 초등학교 선생님 강산이는 아이들을 데리고 단체로 어떤 일을 할 때 불편함이 없도록 새로 반에 배정받은 아이들에게 키 순서대로 번호를 부여한다. 번호를 부여할 땐 키가 가장 작은 아이가 1번, 그 다음이 2번, ... , 가장 큰 아이가 20번이 된다. 강산이네 반 아이들은 항상 20명이며, 다행히도 같은 키를 가진 학생은 한 명도 없어서 시간이 조금 지나면 아이들은 자기들의 번호를 인지하고 한 줄로 세우면 제대로 된 위치에 잘 서게 된다. 하지만 매년 첫 며칠간..
[Spring] MyBatis: Connection Pool (Commons DBCP, HikariCP)
🌿MyBatis영속성 계층 (데이터베이스 조작 계층)Mybatis는 자바 오브젝트와 SQL사이의 자동 매핑 기능을 지원하는 ORM(Object relational Mapping) 프레임워크이다.MyBatis는 Spring 기술이 아닌 독립적인 기술이지만, Spring에서 도입을 해서 사용할 수 있도록 연동되어 있다.MyBatis는 SQL을 별도의 파일을 분리해서 관리하게 하며, 응용프로그램과 데이터베이스를 연결하는 JDBC 같은 역할을 한다. 단, SQL을 그대로 사용할 수 있다는 점에서 JDBC을 사용할 때의 불편함을 해결했다. [JDBC] JDBC란? (Java Database Connectivity)🍁JDBC JDBC는 자바 프로그램과 데이터베이스(오라클)를 연결시켜 주는 자바 API(응용 프..
[Java] Baekjoon Online Judge 9655: 돌 게임
9655번: 돌 게임 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. www.acmicpc.net 💡문제 돌 게임은 두 명이서 즐기는 재밌는 게임이다. 탁자 위에 돌 N개가 있다. 상근이와 창영이는 턴을 번갈아가면서 돌을 가져가며, 돌은 1개 또는 3개 가져갈 수 있다. 마지막 돌을 가져가는 사람이 게임을 이기게 된다. 두 사람이 완벽하게 게임을 했을 때, 이기는 사람을 구하는 프로그램을 작성하시오. 게임은 상근이가 먼저 시작한다. ✏️입력 첫째 줄에 N이 주어진다. (1 ≤ N ≤ 1000) 📑출력 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. 예제입력 1 5 예제출력 1 SK 🔎알고리즘 분류 수학 다이나믹 프로그래밍 게임 이론 📌풀이 코드 1 pac..
[Java] Baekjoon Online Judge 2798: 블랙잭
2798번: 블랙잭 첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장 www.acmicpc.net 💡문제 카지노에서 제일 인기 있는 게임 블랙잭의 규칙은 상당히 쉽다. 카드의 합이 21을 넘지 않는 한도 내에서, 카드의 합을 최대한 크게 만드는 게임이다. 블랙잭은 카지노마다 다양한 규정이 있다. 한국 최고의 블랙잭 고수 김정인은 새로운 블랙잭 규칙을 만들어 상근, 창영이와 게임하려고 한다. 김정인 버전의 블랙잭에서 각 카드에는 양의 정수가 쓰여 있다. 그 다음, 딜러는 N장의 카드를 모두 숫자가 보이도록 바닥에 놓는다. 그런 ..
[Spring] 요청 메서드의 반환 자료형
요청 메서드의 반환 자료형은 String의 빈도가 가장 높고, 다음으로 3번의 redirect, 5번의 사용 빈도가 높다.요청과 응답은 어떤 업무든 연관이 되어 있기 때문에 이에 대한 정리가 필요하다. 🌿String//- JSP 파일명//- ViewResolver 호출@GetMapping(value="/ex06.do")public String test() { return "ex06";} 문자열은 ViewResolver를 호출하면서 JSP 파일 이름을 나타내는 용도로 사용했다. 🌿void@GetMapping(value="/ex06.do")public void test() {}서블릿에서 jsp를 호출을 안 하는 것과 같다. 그러면 브라우저에서 하얀 화면이 나와야 한다.그런데 화면이 출력된다. void..
[Spring] 컨트롤러 구현: 어노테이션 (Controller, RequestMapping, GetMapping, PostMapping, RequestParam, ModelAttribute)
🌿컨트롤러 구현1. Controller 인터페이스 구현2. @Controller 어노테이션 사용어노테이션을 사용하는 방식이 편의성이 좋기 때문에 더 많이 사용한다. 🍃@Controller 어노테이션 사용@Controllerpublic class Ex03Controller { }어노테이션을 사용하는 순간 인터페이스를 선언하는 것과 결과가 같다.handleRequest는 만들고 싶어서 만들었던 게 아니라 Controller 인터페이스가 만들라고 했기 때문에 만든 것이었다. 하지만 어노테이션을 사용하면 강제로 만들어야 하는 게 없다. 자유로운 요청 형식@Controllerpublic class Ex03Controller { public String test() { return ""; } publi..