본문 바로가기

Java22

Java String Left, Right 메소드 구현 문자열의 외쪽 또는 오른쪽으로 문자 갯수로 얻는 함수입니다. 물론 String 클래스의 substring으로 구현이 가능 하지만 유틸리티 클래스에 구현하여 사용하면 편합니다. left : 외쪽으로 문자 갯수만큼 문자열을 반환 public static String left(String str, int length) { String leftStr = null; if(str.length() < length) { length = str.length(); } leftStr = str.substring(0, length); return leftStr; } right : 오른쪽으로 문자 갯수만큼 문자열을 반환 public static String right(String str, int length) { String .. 2021. 11. 3.
Jsoup HTML 파싱 여러 클래스 select 하기 아래와 같이 여러 클래스의 태그를 Jsoup를 이용하여 select 하는 두가지 방법입니다. (1) Class를 속성처럼 Select 하기 - CSS 클래스의 순서가 변경 되면 해당 소스로는 select가 안될 것으로 생각됩니다. Document doc = Jsoup.parse(new URL("http://..."), 10 * 1000); Element ele = doc.selectFirst("TagName[class='클래스명1 클래스명2 ... 클래스명n']"); (2) Class로 Select 하기 Document doc = Jsoup.parse(new URL("http://..."), 10 * 1000); Element ele = doc.selectFirst("TagName.클래스명1.클래스명2... 2021. 8. 14.
이클립스 Gradle 라이브러리 추가 이클립스에서 Gradle 프로젝트를 생성했습니다. Java 라이브러리를 추가와 라이브러리 다운로드 하는 방법입니다. 1. Gradle 프로젝트에서 build.gradle 파일을 더블 클릭하여 엽니다. 2. build.gradle 내에 dependencies에 라이브러리를 추가합니다. 3. 프로젝트를 선택 후 마우스 오른쪽을 클릭하고 팝업 메뉴에서 Gradle > Refresh Gradle Project 메뉴를 클릭하여 라이브러리를 다운로드합니다. 3. 추가된 라이브러리를 확인해보세요. 2021. 8. 14.
Java String 앞 또는 뒤의 공백만 제거하기. Java String 앞 또는 뒤의 공백만 제거하기. String에서 trim 메소드를 사용하면 앞과 뒤의 모든 공백을 제거합니다. 앞 또는 뒤의 공백만 제거하는 방법입니다. JAVA 11 이상에 앞의 공백 제거 메소드 stripLeading, 뒤의 공백 제거 메소드 stripTrailing가 추가되었습니다. 앞의 공백 제거하기 String str = " ABCD "; str = str.stripLeading(); https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html#stripLeading() String (Java SE 11 & JDK 11 ) Compares two strings lexicographical.. 2021. 7. 21.
OpenJDK를 이클립스에 설정하기 오라클의 JDK가 유료화 되면서 Open JDK로 개발해야 할 경우가 많이 생길 듯합니다. Open JDK를 이클립스에 설정하는 방법입니다. 1. Open JDK를 아래의 사이트에서 다운로드 후 압축을 해제합니다. https://jdk.java.net JDK Builds from Oracle jdk.java.net 2. 이클립스 설치 폴더내의 eclipse.ini에 vm 경로를 Open JDK로 지정합니다. 반드시 -vmargs 위에 -vm 설정을 추가하세요. 2021. 5. 18.
Java 시간 차이 구하기(날짜 비교) Java 시간 차이 구하기(날짜 비교) 날짜 시간 관련 로직을 구현시 Calendar 클래스를 많이 사용하고 있습니다. Calendar클래스를 이용한 시간 차이를 구하는 간단한 예제입니다. [소스] import java.text.SimpleDateFormat; import java.util.Calendar; public class TimeCalculate { public static void main(String[] args) { SimpleDateFormat hhmmssSSS = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); Calendar before = Calendar.getInstance(); System.out.println("BEFORE : " + hh.. 2021. 2. 18.
Annotation을 이용한 Servlet 매핑과 액션 Servlet 매핑하는 방법은 2가지가 있습니다. web.xml에 설정하는 방법과 WebServlet 어노테이션(Annotation)을 이용하는 방법입니다. 어노테이션으로 Servlet 매핑을 하고, 각 액션별로 로직을 구현하기 위한 간단한 예제를 소개합니다. 서블링 맵핑 : /test 액션 : /test/액션명.do [예제] import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servl.. 2021. 2. 16.
[JAVA] File 객체를 이용한 폴더내 파일 검색 3가지 방법 폴더내의 파일 또는 폴더 목록을 갖고 올 수 있는 3가지 방법입니다. 소스는 간단하니 필요에 따라서 3가지 방법 중 하나를 선택하면 될 듯 합니다. Win으로 시작하는 모든 파일 찾기 예제입니다. 1. public File[] listFiles() import java.io.File; public class FileListSample { public static void main(String[] args) { String dirPath = "C:\\Windows\\System32"; File dir = new File(dirPath); File[] files = dir.listFiles(); for(File f : files) { if(f.isFile() && f.getName().toUpperCase(.. 2021. 2. 9.
Java - HTML 문자 Escape 하기 JSP로 게시판을 등에서 사용자가 입력한 문자에 HTML Tag와 Javascript를 입력하여 리다이렉트를 시키는 경우가 있습니다. 이러한 크로스사이트 스크립팅을 방지하기 위해서 게시판 내용의 HTML을 Escape 처리해야 합니다. 아파치 프로젝트 중 Common Lang에서 이러한 작업을 할 수 있습니다. 1. Common Lang Jar 파일을 다운로드하기 위해서 아래의 URL에 방문하세요. https://commons.apache.org/proper/commons-lang/download_lang.cgi Lang – Download Apache Commons Lang Download Apache Commons Lang Using a Mirror We recommend you use a mirro.. 2021. 2. 3.
Java - SQLite 데이터베이스 사용하기 안드로이드 개발 시 SQLite 데이터베이스를 자주 활용하고 했습니다. Java Application에도 SQLite 데이터베이스를 어떻게 구현하는지 차근차근 설명드리겠습니다. 1. SQLite 데이터베이스 파일 생성 (1) 무료 SQLite 툴 다운로드 https://docko.tistory.com/entry/%EB%AC%B4%EB%A3%8C-SQLite-%ED%88%B4?category=589478 무료 SQLite 툴 안드로이드 개발 중에 데이터베이스(SQLite) 사용을 위해서 파이어폭스에 플러그인 된 프로그램을 사용했었습니다. 그렇지만 이놈의 툴이 너무 투박하고 불편해서 다른 무료 툴을 찾다가 DB Browse docko.tistory.com (2) SQLite 데이터베이스 생성 https://.. 2021. 2. 1.
Java SQL 인젝션(SQL Injection) 해킹 방지를 위한 Escape 문자 변환 방법 SQL 인젝션을 방비하기 위해서는 PreparedStatement를 이용하는 것이 좋습니다. 하지만 문자열로 SQL을 생성 시에는 SQL 조건절의 상수 문자내의 Escape 문자를 변경해야 합니다. 예로 홀따옴표(')의 경우는 홀따옴표를 두개('')로 변환해서 SQL 문자열을 만들어야 하죠. 아파치 프로젝트 중 Common Lang에서 이러한 작업을 할 수 있습니다. 1. Jar 파일을 다운로드하기 위해서 아래의 URL에 방문하세요. https://commons.apache.org/proper/commons-lang/download_lang.cgi Lang – Download Apache Commons Lang Download Apache Commons Lang Using a Mirror We recom.. 2021. 1. 22.
Java DecimalFormt의 올림, 내림, 반올림 적용 Java 1.8에서 DecimalFormat을 적용했는데, 소숫점에서 반올림이 됩니다. 정확히는 어떤 버전까지인지는 기억이 나지 않지만 기본적으로 format 메소드를 호출하면 버림이었던 것 같은데, 반올림이 되고 있습니다. 아래의 코드를 보면 RoundingMode 지정하지 않으면 소숫점 3째자리가 반올림(HALF_UP)이 됩니다. 필요에 따라 올림(CEILING), 내림(DOWN), 반올림(HALF_UP)을 지정 후 사용하시길 바랍니다. [소스] DecimalFormat df = new DecimalFormat("0.##"); double d = 123.765; System.out.println("기본(반올림) : " + d + " → " + df.format(d)); d = 123.761; df.s.. 2020. 7. 16.
이클립스에 Github 프로젝트 연동하기 이클립스에 Github 프로젝트를 연동하는 방법입니다. 1.이클립스의 메뉴 Window > Show View > Other를 클릭합니다. 2. Git Repositories를 선택하고 Open 버튼을 클릭합니다. 3. 이클립스에 아래와 같이 Git Repositories View가 표시됩니다. 4. Git Repositories View에서 Clone a Git repository를 클릭합니다. 5. Clone Git Repository화면에서 Location URI를 입력하면 Host와 Repository Path는 자동으로 입렵되고, 계정 정보 User와 Password를 입력 후 Next 버튼을 클릭합니다. 6. 저는 아래와 같이 오류 메세지가 표시되어 조치하였습니다.(1) http.sslVerif.. 2019. 12. 15.
JavaFX Webstart 배포하기 JavaFX로 구현한 Application을 Webstart로 배포하는 방법입니다. Applet에서도 JDK 버전이나 보안, Signing Jar 등의 문제가 있었는데 Webstart도 비슷한 문제점들이 있을듯 합니다. 1. JavaFX로 Application을 구현했고, Webstart로 배포하려면 JDK의 javafxpackager.exe로 패킹해야합니다. PATH에 /bin이 지정되어 있지 않다면 PATH 환경변수에 추가하세요. 2. JavaFX 프로젝트 폴더에서 아래의 명령을 실행합니다. (1) -appclass : JavaFX의 패키지명과 Main클래스명 (2) -name : 이름 (3) -width, -height : JavaFX Application의 윈도우 폭과 높이 javapackager.. 2019. 9. 5.
JavaFX Scece Builder 설치 및 이클립스 설정 JavaFX에서 UI를 쉽게 만들기 위한 Scene Builder 설치 및 이클립스 설정 방법입니다. Java 코딩으로 UI를 만들 수 있지만 가성비가 너무 안좋습니다. 따라서 Scene Builder를 설치하고 사용하는 것을 추천드립니다. 1. 아래의 URL에서 Sence Builder를 다운로드합니다. 저는 JDK 8 용으로 다운로드하였습니다. Scene Builder - Gluon Drag & Drop,Rapid Application Development. Download Now Integrated Scene Builder works with the JavaFX ecosystem – official controls, community projects, and Gluon offerings includ.. 2019. 9. 5.
JavaFX 이클립스 설정 이클립스에서 JavaFX를 개발하기 위한 설정방법입니다. JavaFX 플러그인은 아래의 이클립스 버전에서만 사용 할 수 있습니다. 이클립스가 아래의 버전이 아니면 Eclipse Marketplace에서 찾을 수 없습니다. Eclipse Versions: 2019-09 (4.13), 2019-06 (4.12), 2019-03 (4.11), 2018-12 (4.10) 1.이클립스에서 Help > Eclipse Marketplace... 메뉴를 클릭하여 Marketplace를 실행합니다. 2. Eclipse Marketplace에서 "fx"로 검색 후 e(fx)clipse 3.6.0의 Install 버튼을 클릭합니다. 3. 라이센스를 동의 후 Finish 버튼을 클릭하여 플러그인을 설치합니다. 4. JavaF.. 2019. 9. 5.
Java SimpleDateFormat 패턴 SimpleDateFormat의 패턴 사용 방법입니다. //사용예제 SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd"); String format = sdf.format(Calendar.getInstance().getTime()); // 20180328 sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); format = sdf.format(Calendar.getInstance().getTime()); // 2018-03-28 11:30:59.987 Letter Date or Time Component Presentation Examples G Era designator Text AD y Year Year 199.. 2018. 3. 27.
이클립스의 Dynamic Web Project에 톰캣의 web.xml 추가하기 이클립스의 Dynamic Web Project에 톰캣의 web.xml 추가하는 간단한 방법입니다. Dynamic Web Project를 선택 후 마우스 오른쪽 클릭하여 팝업 메뉴에서 Java EE Tools 하위 메뉴에서 Generate Deployment Desciptor Stub 을 클릭하면 web.xml이 생성됩니다. 2018. 2. 28.
MSSQL JDBC 다운로드 방법 Java로 MSSQL에 접속하려면 MS에서 제공하는 JDBC를 사용해야 합니다.다운로드 URL은 아래와 같습니다. Microsoft JDBC Driver 6.0 for SQL Server 다운로드 아래의 화면에서 다운로드 버튼을 클릭하면 압축파일 또는 실행파일을 다운로드 할 수 있습니다. 아래와 같이 압축을 해제하면 JRE7과 JRE8의 JDBC jar를 있으면, 기본적인 예제는 samples 폴더에 있습니다.개발에 참고하세요. 2017. 3. 5.
Tomcat Post 사이즈 설정 Tomcat에서 Post로 데이터를 보내는 경우 Post의 사이즈를 설정하는 방법입니다. 설정된 Post의 사이즈보다 큰 데이터를 보낼 경우 데이터가 짤리는 현상이 발생합니다. 즉 request.getParmater로 데이터를 얻는 경우 null 이 됩니다. /conf/server.xml에서 Connector에 maxPostSize attribute를 byte로 설정해야 합니다. 아래와 같이 attribute가 없을 경우는 기본적으로 2Mb입니다. 아래의 경우는 5Mb를 설정한 예(maxPosSize="5242880")입니다. 2017. 3. 2.
Eclipse - 종료 시 멈추는 현상 해결방법. 이클립스를 저장 시 멈추는 현상(행)이 걸리는 경우가 있습니다.이유는 여러가지가 있는 것을 생각됩니다. 이클립스의 Workspace의 .metadata 폴더 내의 .log 파일에 아래의 오류가 있을 경우 처리하는 방법입니다. !MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Gituser global configuration and to define the default location to store repositories: 'C:\Users\UserID'. If this isnot correct please set the HOME environment va.. 2017. 1. 13.