JVM68 [Java] 추상클래스와 인터페이스 차이 [Java] 추상클래스와 인터페이스 차이 추상클래스 (abstract class) - 정의 : 한 개 이상의 추상메서드를 가지는 클래스 - 목적 : 추상메서드는 선언만되며 구현이 되지 않은 불완전한 메서드이므로 객체로 생성되지 않는다. 구분 일반 클래스와 추상 클래스의 차이 예시 일반 클래스 세부적이고, 구체적 고양이, 사자, 강아지 추상 클래스 추상적 고양이과, 개과 추상메서드 - 정의 : 내용이 없는 메서드, 구현(정의)는 하지 않고 선언만 한 메서드 - 목적 : 메서드의 내용이 너무 일반적인 내용이므로 부모 클래스에서 구체화하여 정의할 필요가 없을 경우, 추상메서드로 선언만하고 상속받은 자식 클래스에서 재정의하도록 할 때 사용 추상 클래스는 반드시 하나 이상의 추상메서드를 가지며, 객체를 생성할 수.. JVM/Java 2020. 8. 19. [Spring] context-datasource.xml 설정 : DBCP configuration 살펴보기 [Spring] context-datasource.xml 설정 : DBCP configuration 살펴보기 - globals.properties driver=oracle.jdbc.driver.OracleDriver url=jdbc:oracle:thin:@127.0.0.1:1521/sols// @ host name : port / SID username=eca_new// user name password=eca!@34// password - conetext-datasource.xml ${url} ${username} ${password} DBCP configuration DBCP BasicDataSource iBATIS SimpleDataSource Option description driverClass.. JVM/Spring 2020. 7. 6. [Java] Spring Controller 파라미터 값 가져오기(HttpServletRequest, @RequestParam, @RequestBody, @ModelAttribute) [Java] Spring Controller 파라미터 값 가져오기 (HttpServletRequest, @RequestParam, @RequestBody, @ModelAttribute) 일반적인 웹 프로젝트 구성에서 Controller 레벨에서 응답을 받고 비지니스 로직을 처리한 후에 다시 View 레벨로 넘어간다. 이 부분에서 파라미터를 어떻게 받고 어떻게 넘기는지에 대한 방법을 정리하고자 한다. HttpServletRequest.getParameter() 아래소스처럼 HttpServletRequest의 getParameter() 메서드를 이용하여 파라미터 값을 가져올 수 있다. 이때 parameter로 보낸 변수명과 getParameter("변수명") 에 들어갈 변수명이 일치해야한다. @Request.. JVM/Java 2020. 1. 28. [Java] SimpleCaptcha를 이용한 이미지 보안문자 생성하기 [Java] SimpleCaptcha를 이용한 이미지 보안문자 생성하기 보안문자코드를 사용해야하는데, SimpleCaptcha를 주로 많이 사용하길래 한 번 써봤다. - 스펙 : 전자정부프레임워크 3.8, 자바1.8 1. SimpleCaptcha-1.2.1.jar 파일 다운로드 - 먼저 SimpleCaptcha 홈페이지에 들어가서 Java 버전에 맞는 버전을 다운받자. 참고로 SimpleCaptcha라이브러리를 이용한 CAPTCHA 샘플 프로그램은 JDK 1.6 기반이 가장 최신이라 SimpleCaptcha for Java 6을 다운받았다. 2. 다운로드받은 jar파일을 프로젝트에 추가해준다. 방법1. Spring MVC 프로젝트 구조의 WEB-INF의 lib에 위에서 다운받은 jar 파일을 추가해주었다.. JVM/Java 2020. 1. 23. [Java] POI 라이브러리 사용 : 엑셀 다운로드 로직 구현하기 [Java] POI 라이브러리 사용 : 엑셀 다운로드 로직 구현하기 - 의존성 추가 Spring Boot 경우 build.gradle에 Gradle dependency 추가 compile group: 'org.apache.poi', name: 'poi', version: '3.13' Spring 경우 pom.xml Maven dependency 추가 org.apache.poi poi 3.13-beta1 - Haenny 엑셀 다운로드 다음과 같은 두 개의 클래스로 엑셀 다운로드 로직을 구현하였다. 참고로 엑셀에 입력될 데이터는 EgovMap이 아닌 VO List 형태를 전제로 구현하였다. DownloadExcel.java import java.io.IOException; import java.net.URL.. JVM/Java 2020. 1. 17. [Java] Object 타입에 상관없이 VO 데이터 가져오기 [Java] Object 타입에 상관없이 VO 데이터 가져오기 1. 전혀 다른 두 개의 VO - 참고로 @Data는 Lombok 라이브러리를 사용하기 때문에 쓴 것이니, Lombok이 따로 설치되지 않은 경우에는 getter, setter, toString 메서드를 오버라이딩하길 바란다. @Data public class Grade { private String subject; private String name; private int grade; } @Data public class Favorite { private String color; private String animal; private int number; } - 예시) 두 VO의 데이터는 다음과 같다 Grade grade = new Grad.. JVM/Java 2020. 1. 17. [Java] 특정문자로 문자열 나누기 split 사용방법과 주의점 [Java] 특정문자로 문자열 나누기 split 사용방법과 주의점 - 문자열 split("\\") 에러 "Unexpected internal error near index 1 \" 해결방법 먼저 split에 대해 살펴보자. java.lang.String.split() 문자열을 구분해서 사용하고 싶을 때 특정 구분자를 기준으로 나눠 배열에 담아 이용하는 방법이다. 문법 1. split(String regex) - 가장 일반적으로 사용하는 문법으로, 문자열을 구분할 때 사용하는 정규 표현식이 하나의 인수로 들어간다. 2. spilt(String regex, int limit) - 첫번째 인수는 위와 같고, 두번째 인수는 분류할 문자열의 수이다. (예를들어 분류할 문자가 5개인데 limit가 2이면 2개만 분.. JVM/Java 2020. 1. 3. [Java] StartsWith/EndWith : 문자열의 시작/끝 부분과 특정 문자열이 일치하는지 확인하기 [Java] StartsWith/EndWith : 문자열의 시작/끝 부분과 특정 문자열이 일치하는지 확인하기 String.StartsWith 메서드 - 문자열 인스턴스의 시작 부분과 지정한 문자열이 일치하는지를 확인한다. String str = "오늘은 날씨가 추워요, 따뜻하게 입어야해요"; String value1 = "오늘"; String value2 = "날씨"; boolean bool1 = str.StartsWith(value1);// true boolean bool2 = str.StartWith(value2);// false 매개변수(value) - String : 인스턴스의 시작 부분에 있는 부분 문자열과 비교할 문자열 반환 - Boolean : 인스턴스의 시작과 일치하면 true, 그러지 않.. JVM/Java 2019. 12. 30. [Error] Class : org.springframework.util.AntPathMatcher not found 에러 [Error] Class :org.springframework.util.AntPathMatcher not found 에러 # Spring MVC 프로젝트 context-*.xml 에러 : Class not found error 전자정부프레임워크 3.8.0 버전 업그레이드 후 Spring 프로젝트 SVN Import 후에 난 에러이다. [Eclipse] 전자정부프레임워크 3.8 버전 업그레이드 하기 (1) Spring [Eclipse] 전자정부프레임워크 3.8 버전 업그레이드 하기 (1) Spring 기존 egovFramework 3.6.0 버전에서 개발을 하고 있었는데 3.8버전을 업그레이드 하려한다. 분명 언젠가 또 업그레이드 할 날이 올 것을 대비.. haenny.tistory.com 다음과 같은 에.. JVM/Spring 2019. 11. 18. [Error] (Java 버전 중복) could not open `C:\java\lib\amd64\jvm.cfg' 에러 레즈스트리 수정하여 해결하기 [Error] (Java 버전 중복) could not open `C:\java\lib\amd64\jvm.cfg' 에러 레즈스트리 수정하여 해결하기 최근 전자정부 프레임워크를 3.6.0에서 3.8.0으로 업그레이드 하면서 자바버전도 같이 업그레이드 했다.. Spring Boot 기반의 jetty Server 프로젝트를 만들고, 실행도 잘 되는 것을 확인한 후 jar 파일을 만드려 Gradle Build를 하던 중 자바 경로에 대한 에러로 인해 애썼다. [Error] 이클립스 Springboot Gradle Task :compile.Java Error [Error] 이클립스 Springboot Gradle Task :compile.Java Error 분명 실행은 잘 됐는데 Gradle 빌드에서 에러가 나는.. JVM/Java 2019. 11. 5. [Error] Springboot Gradle Task :compile.Java Error (자바 경로를 찾지 못하는 현상) [Error] Springboot Gradle Task :compile.Java Error (자바 경로를 찾지 못하는 현상) 분명 실행은 잘 됐는데 Gradle 빌드에서 에러가 나는 순간 언제나 한숨.. 컴파일 에러가 나면 원인 찾기가 왜이렇게 어려운건지.. 이 에러를 잡기 위해 많은 시도를 해봤기 때문에 모든 자료를 남기려한다. 1. 에러 로그 Execution failed for task ':compileJava'. > Could not find tools.jar. Please check that C:\java contains a valid JDK installation. - Gradle Executions - Console에 찍힌 Error Log 2. 원인 - 원인 : 이클립스 Java 경로 설정.. JVM/Java 2019. 11. 4. [Error] Spring 웹 프로젝트 META-INF\MANIFEST.MF (지정된 경로를 찾을 수 없습니다) 에러 해결 [Error] Spring 웹 프로젝트 META-INF\MANIFEST.MF (지정된 경로를 찾을 수 없습니다) 에러 해결 전자정부 프레임워크 버전 업그레이드 하면서 Spring Web Project를 SVN Import하면서 pom.xml에 발생한 에러이다. " META-INF\MANIFEST.MF (지정된 경로를 찾을 수 없습니다) " 처음 import할 때는 아무런 에러가 없다가 Maven Update Project를 하면 에러가 발생한다. 위에서 알려주는 경로 [target] - [m2e-wtp] - [web-resource] - [META-INF] 로 가니 MANIFEST.MF 가 존재하지 않았다. 처음에는 기존 프로젝트 같은 경로에 있는 MANIFEST.MF 파일을 복사해서 넣는 방식으로 했는.. JVM/Spring 2019. 10. 25. 이전 1 2 3 4 5 6 다음 추천 글 728x90 반응형