본문 바로가기
반응형

Dev Story 💻/Java10

[MyBatis] selectKey태그를 이용하여 insert하고 난 후 key값 리턴받기 1. 개요 MyBatis로 데이터 CRUD를 관리하는 프로젝트를 진행할 때, 간혹 insert 후 시퀀스 값을 얻어와야 할 때가 있다. 예를 들어, 다른 시스템과 인터페이스되는 API를 개발할 때, 시퀀스key 값을 리턴을 해줘야 하거나, 인서트한 후에 생성된 시퀀스 key값을 다른 테이블의 FK로 넣어줘야 할 경우이다. 지금부터 서술할 방법 외에도 다른 여러가지 방법이 있겠지만, MyBatis xml내부에서 간단하게 사용가능한 방법을 이번 포스팅에 기술하려고 한다. 2. 태그 insert문 내부에 태그를 사용하여 key값을 얻어올 수 있다. 이번 예제에서는 insert태그의 parameterType을 hashmap으로 한 예제임을 하자. 태그 내부에 태그를 추가하여 사용가능하다. keyProperty .. 2023. 3. 8.
[Java] class(클래스) 이해를 위한 예제 - 2 Class 이해를 위한 예제 만들어보기 - 2 지난번 글에서는 TV를 예로들어 Class가 설계도로써의 역할을 수행하고, 그 Class를 기반으로 객체를 생성하는 과정까지 작성하였다. 즉 설계도를 기반으로 TV한대를 생산하는 느낌을 갖는 것이 이해하기 편리할 것이다. 2021.12.01 - [개발자 공부/Java] - [Java] class(클래스) 이해를 위한 예제 -1 (객체지향 겉핥기) 이번에는 TV를 작동시키기 위한 리모콘을 한대 만들어보는 예제를 만들어 볼 것이다. ClassMain에서 TV를 직접 껐다 키고, 볼륨 그리고 채널을 작동을 했었다. 이것은 사람이 직접 TV의 버튼을 직접 조작한다고 상상을 해보자. 이제 TV를 직접 조작하는 것이 아닌 리모콘을 통하여 TV를 조작해보는 코드를 만들것.. 2021. 12. 9.
[Java] class(클래스) 이해를 위한 예제 -1 (객체지향 겉핥기) Class 이해를 위한 예제 만들어보기 객체 지향 프로그래밍이란? - OOP(Object Oriented Programming) 객체지향에 대한 이해를 제대로 다루려면 내용이 많이 길어지기 때문에, 클래스 이해를 위하여 간단하게 겉핥기 형식으로 서술하겠다. 객체 지향 프로그래밍은 우리의 현실세계와 밀접한 관련이 있으며, 현실세계를 기반으로 모델링하여 컴퓨터 프로그램으로 나타내는 것이다. 현실세계의 모든 것들은 객체로 표현할수가 있고 각각 서로 다른 객체는 유기적으로 상호작용을 한다. 예를 들어서 담배라는 객체는 라이터라는 객체로 불을 피우고, 인간이라는 객체가 그 담배를 피운다. 이것이 일련의 프로그램이 동작하는 과정인것이다. 객체 기반 프로그래밍은 클래스를 기반으로 구현 되어 있으며, 여기에서 클래스는.. 2021. 12. 1.
[Java] int를 String으로, String을 int으로 String에서 int로 혹은 int에서 String으로 변환을 할 때, 자주 사용되는 메소드에 관해서 알아보자. 1) int를 String으로 첫번째) String클래스의 valueOf()메소드 사용하기 public class aboutStringMethod { public static void main(String[] args) { int num = 12345; String str1 = String.valueOf(num); System.out.println(str1); } } 특징 기본적으로 역할은 toString()메소드와 비슷하다. int형 외에도 아래 그림의 자료형들도 String으로 바꿀 수 있다. 파라미터의 값이 null값이라면 toString() 메소드와 달리 예외(NullPointerEx.. 2021. 11. 30.
[Java] 무한의 길이를 갖는 배열 만들기 반복문을 이용하여 입력할수록 길이가 늘어나는 무한의 배열 만들기 (int형과 String형) 배열은 한번 길이를 설정하면 길이를 늘릴 수 없다. 하지만 이번 예제에서는 어떻게든 늘리는 방식을 생각해보며 고민해보는 것이 목표이다. 1. int형 - 중복값을 허용하지 않는다.(중복값이 있다면 "중복!"을 출력하고 다시 입력받도록 프로그래밍 한다.) - 길이는 임의의 길이 3부터 시작하여 배열이 꽉차면 3씩 길이를 늘린다. - 입력 받을 값은 정수형으로 제한한다. ↓↓답↓↓ 더보기 package exam; //import java.util.Arrays; import java.util.Scanner; public class InfinityArrayDuplicationForInt { public static vo.. 2021. 11. 28.
[Java] Self-number 알고리즘과 합 Self-number(셀프 넘버) 알고리즘 문제 package selfnumberQuiz; public class SelfNumberQuiz { public static void main(String[] args) { /* * 어떤 자연수 n이 있을때, d(n)을 n의 각 자릿수 숫자들과 n자신을 더한숫자라고 정의 * 예를 들어 d(91) = 9+1+91=101과 같은식이 있을때 * n을 d(n)의 제너레이터라고 함. * 위의 예에서 91은 101의 제너레이터 이다. * 어떤 숫자들은 다음과 같이 하나 이상의 제너레이터를 갖고있다. * 101의 제너레이터는 91뿐 아니라 100( d(100) = 1+0+0+100=101)도 있다. * 어떤숫자들은 제너레이터를 가지고 있지 않다. * 이런 숫자를 인도 수학.. 2021. 11. 27.
반응형