본문 바로가기

java

(9)
PreparedStatement ? 부분까지 쿼리문 로그찍기 JDBC로 쿼리 조회시 select * from board where title = ? and reg_date = ? 로 예를 들어 검색할 경우, pstmt.setString(0, title); pstmt.setString(1, reg_date); 등으로 입력하지만, 실제 데이터가 잘 들어가서 검색이 되는지 궁금하기도 하다. 하단내용을 그대로 실행하면 이클립스 console창에서 볼수 있다. 더보기 package db; import java.sql.*; import java.net.URL; //import java.sql.Connection; //import java.sql.PreparedStatement; //import java.sql.SQLException; import java.util.Array..
자바 람다(Lambda) 기초부터 사용방법 정리 자바에서 람다(Lambda)는 기존의 클래스에 메소드를 만들고 객체화 한 뒤에 끌어쓰는 방식이 아니라 그때 바로 만들어서 사용하는 식인데 위 예제를 보면 인터페이스를 통해 메소드를 만들 수 있도록 만들어 두고 인터페이스명 메소드명 = (파라미터) -> {수행할 코드;}; 를 람다 메소드를 만들고 사용하는 것이 보이는데 딱 보면 알겠지만 저거 쓰느니 그냥 일반 메소드 끌어다 쓰는 게 나아 보일거다 람다의 핵심은 (파라미터) -> {수행할 코드} 를 통해 메소드를 정의하지 않고도 메소드처럼 사용할 수 있다는 것인데 메소드와 같은 기능이지만 정의하지 않고도 사용하는 것이 람다의 핵심이 되겠다 다음 예제를 보면 list와 map에 값을 넣어놓고 forEach를 이용해 코드를 수행하는 형태인데 파라미터, 코드가 ..
자바 스트림(Stream) 예제부터 사용법까지 정리 자바에서 스트림이라고 하면 대부분 엄청나게 어려운 기술인 줄 알고 시작도 전에 포기하는 경우가 많은데 스트림은 엄청 간단하고 유용한 기술이다 다만 설명하는 사람들이 쉬운 걸 너무 어렵게 설명하기 때문에 아 들어도 모르겠네.. 그냥 어렵네.. 난 못하겠다.. 이러고 넘어가는 경우가 대부분인데 스트림은 간단한 개념이지만 정말 유용하기 때문에 반드시 알아두는 것이 좋다 먼저 스트림을 왜 쓰냐면 스트림은 배열이나 컬렉션(List, Set, Map)으로 원하는 값을 얻을 때 for문 도배를 방지하기 위해 나온 개념인데 가령 int 형태의 배열을 가지고 중복을 제거하고 내림차순으로 정렬한 뒤 List 형태로 반환한다고 생각을 해 보자 일단 배열 내용을 가지고 for를 돌리면서 set에 값을 밀어넣은 후 set의 내..
Java에서 목록의 두 요소 교환 이 게시물은 Java에서 List의 두 요소를 바꾸는 방법에 대해 설명합니다. 1. 사용 Collections.swap() 방법 목록의 두 요소를 교환하는 표준 솔루션은 다음을 사용하는 것입니다. Collections.swap() 목록의 지정된 위치에 있는 요소를 교환하는 메서드입니다. import java.util.Arrays; import java.util.Collections; import java.util.List; class Main { public static void main(String[] args) { List words = Arrays.asList("a", "c", "b", "d"); Collections.swap(words, 1, 2); System.out.println(words);..
[Java] split 점(.)으로 하기 점으로 스플릿 안됨 String[] split = "TEST.ABC".split("."); 위와 같이 하면 split이 되지 않는다. String[] split = "TEST.XLS".split("[.]"); 또는 String[] split = "TEST.XLS".split("\\."); 위와 같이 .이 아니라 [.] 또는 \\. 으로 하면 해결된다. Java API에서 split를 찾아보면 Splits this string around matches of the given regular expression. 라고 설명되어 있다. split의 매개변수는 String이 아니고, 정규식이고, 정규식에서의 .은 임의의 문자열을 의미한다. 정규식에서는 []안에 있거나 \\다음에 오는 문자만 특수문자로 취급한다. 출처 : https..
[Java] 코모란(Komoran) 형태소분석기 사용하기 문장에서 가장 많이 나오는 단어에 해당되는 인덱스 컬럼을 가져오고 싶어서 match 검색 함수를 사용했다 select a.tags as tags, match (tags) against (?'serch Text' IN BOOLEAN MODE) as score from adjuster_member a group by a.id order by score desc match (tags) against 에 관한 설명 링크 - https://kmongcom.wordpress.com/2014/03/28/mysql-%ED%92%80-%ED%85%8D%EC%8A%A4%ED%8A%B8fulltext-%EA%B2%80%EC%83%89%ED%95%98%EA%B8%B0/ 하지만 match 사용법을 잘 몰라서 인지 인덱스에 여행..
[Java] 문자열 붙이기(Concat, StringBuffer(Append)) 사용법 & 예제 자바에서는 문자열을 붙이는 방법이 여러가지 있습니다. String a = "첫번째 텍스트입니다. "; String b = "두번째 텍스트입니다. "; System.out.println(a+b); //결과값 : 첫번째 텍스트입니다. 두번째 텍스트입니다. 대부분 이런식으로 문자열에다가 + 를 시키는 방법으로 문자열을 합치지만 +연산자가 내부적으로 어떻게 돌아가는지는 전혀 모르고들 계시죠? 이번 포스팅에서는 자바String클래스의 문자열 붙이기 함수인 Concat과 Append 함수를 활용하여 문자열을 붙이는 방법에 대해 알아보도록 하겠습니다. Concat Concat과 +연산자는 같은 문자열을 합치는 기능을 합니다. 하지만 동작하는 방식이 다른데요. Concat은 합친 문자열을 String으로 생성해줍니다...
java 전화번호 형식 변환 서비스를 개발하다보면 전화번호를 다룰때가 많습니다. 집전화나 휴대폰전화 형식이 조금씩 다르고 사용자가 임의로 입력하게되면 그 형식이 또 다를수 있습니다. 그래서 보통 DB에 저장시에는 숫자만 저장하고 보여줄 때 형식에 맞게 보여줍니다. 그 형식에 맞게 보여주는 코드를 공유해봅니다. public class FormatUtil { public static String phone(String src) { if (src == null) { return ""; } if (src.length() == 8) { return src.replaceFirst("^([0-9]{4})([0-9]{4})$", "$1-$2"); } else if (src.length() == 12) { return src.replaceFirst..