[JAVA] java에서 JSON 데이터 다루기. google의 json-simple 사용 방법
참고글JSON이란? JSON 규칙JSONJSON은 JavaScript Object Notation 의 줄임말로 말 그대로 자바스크립트에서 객체를 표현하는 방법입니다.var obj = { "name" : "kim", "age" : 29 };원래는 자바스크립트 언어에서 객체를 정의할 때 사용하는 문법, 규칙이었는데, key-value 방식으로 데이터를 표현하거나 이해하는데 직관적이고 규칙도 간단하여 여러 언어나 통신에서 사용되게 되었습니다. JSON은 네이버나 구글같은 플랫폼 기업에서 제공하는 공개 API에서도 XML과 같이 사용되고 있습니다.JSON은 데이터를 표현하는 규칙(RFC 7159에 정의)만 지켜주면 되기때문에 어떤 언어, 어떤 플랫폼에서든지 사용 가능하며, 거의 대부분의 언어에서 자체적으로 JS..
자바[Java]
2019. 1. 22. 14:26
[JAVA] 메서드 오버라이딩(Method Overriding)시에 throws문 규칙에 대해
참고글[JAVA] 자바 예외 떠넘기기 - throws[JAVA] 자바에서 예외(Exception)란?메서드 오버라이딩(Method Overriding)시에 throws문 규칙에 대해메서드를 오버라이딩 할때에는 상위 클래스나 인터페이스의 메서드 선언부에 따라 그것을 오버라이딩 할때 제약을 받게되는데, 그 중 하나는 예외를 떠넘기는 throws에 대한 규칙입니다.규칙에 대해 앞서 말하자면 메서드 오버라이딩시에 하위 클래스는 예외를 throws 하지 않거나, 자신이 상속받은 상위 클래스의 메서드보다 같거나 하위의 예외만을 throws할 수 있습니다.상위클래스의 메서드에서 throws를 선언했더라도 하위클래스는 throws 처리를 하지 않을 수 있다.하위클래스는 상위클래스의 메서드에서 throws 하는 예외와 ..
Servlet&Jsp
2019. 1. 11. 15:48
[서블릿/JSP] @WebFilter 어노테이션으로 필터 설정하기
이전글[서블릿/JSP] 필터(Filter) 사용 방법 및 예제[서블릿/JSP] 필터(Filter)란? 필터 개념 및 설명@WebFilter 어노테이션으로 필터 설정하기서블릿 스펙 3.0 이전까지는 web.xml을 통해 Servlet과 Filter를 등록하고 URL 맵핑등을 설정하여 사용하였습니다. 그러나 서블릿 3.0 부터는 web.xml에서의 서블릿, 필터 설정을 자바 소스상에서 대체할 수 있는 어노테이션이 추가되었습니다.@WebFilter 어노테이션은 필터를 등록하고 설정하는 어노테이션입니다. 서블릿 3.0은 톰캣을 기준으로 7 버전부터 지원하므로 톰캣7 이상의 서블릿컨테이너를 사용한다면 @WebFilter 어노테이션을 사용하여 필터를 등록할 수 있습니다.다음은 이전글에서 사용했던 예제인 Loggin..
Spring Framework
2019. 1. 8. 09:50
[Spring] MSSQL JdbcTemplate 프로시저 실행시 xx 문에서 결과 집합을 반환하지 않았습니다. 오류 원인
MSSQL JdbcTemplate 프로시저 실행시 xx 문에서 결과 집합을 반환하지 않았습니다. 오류 원인JdbcTemplate을 사용하여 프로시저를 실행했고 프로시저는 실행 결과를 출력하도록 되어 있었습니다. DBMS는 MSSQL Server입니다. 그런데 다음과 같은 오류가 발생합니다.org.springframework.jdbc.UncategorizedSQLException...Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: 문에서 결과 집합을 반환하지 않았습니다.분명 SQL 클라이언트로 직접 프로시저를 실행하면 결과 테이블이 반환되는데, JdbcTemplate을 통해 실행하면 위와 같은 오류가 발생합니다.이럴때에는 SQL 구문 앞에 다음과 ..
자바[Java]
2018. 7. 25. 23:12
[JAVA] H2 DB에 JDBC 연결시 예외 unexpected status 16777216 또는 Could not load requested class 해결 방법
Hibernate H2 DB 연동 예외 해결하이버네이트를 H2 DB에 연동하여 사용하려고 프로젝트를 세팅하고 쿼리를 수행하려고 하니 다음과 같은 첫번째 예외가 발생했습니다.첫번째 예외Exception in thread "main" javax.persistence.PersistenceException: Unable to build entity manager factory...생략...Caused by: org.hibernate.exception.JDBCConnectionException: Unable to set auto-commit (false)...생략...Caused by: org.h2.jdbc.JdbcSQLException: Connection is broken: "unexpected status ..
Spring Framework
2018. 7. 24. 00:10
[스프링 프레임워크] Multiple ResultSets, SELECT 결과 TABLE 여러개일 때
결과 테이블이 여러개 - ResultSet이 여러개 리턴하는 저장 프로시저 SP저장 프로시저(Stored Procedure)의 실행 결과가 여러 테이블을 출력할 수 있습니다. 이러한 경우 단순히 JdbcTemplate 등에서 사용하는 queryForObject() 나 queryForList() 등의 메서드로는 하나의 테이블 결과만을 다룰 수 있기 때문에 여러 테이블이 결과로 리턴되는 경우 처리할 수 없습니다.JDBC API 측면에서 보면 쿼리의 실행 결과가 여러 테이블을 리턴한다는 것은 ResultSet을 여러개 리턴한다는 것입니다.MySQL 샘플다음은 여러 테이블을 결과로 리턴하는 매우 심플한 예제입니다. 별 의미 있는 DB는 아니며 단순히 예로 사용하기 위한 두 개의 테이블입니다. 다시 보니 인코딩도..
자바[Java]
2018. 7. 23. 21:00
[Java] MySQL JDBC 연결시 예외 User does not have access to metadata required to determine stored procedure parameter types 해결 방법
Java로 JDBC 연결시 다음과 같은 예외를 마주할 수 있습니다.java.sql.SQLException: User does not have access to metadata required to determine stored procedure parameter types. If rights can not be granted, configure connection with "noAccessToProcedureBodies=true" to have driver generate parameters that represent INOUT strings irregardless of actual parameter types. at com.mysql.jdbc.SQLError.createSQLException(SQ..
Spring Framework
2018. 7. 23. 18:30
[스프링 프레임워크] Spring JDBC SQLException Access denied for user 오류 해결 방법
java.sql.SQLException: Access denied for user 예외스프링 프레임워크에서 JDBC 연동을 하는데, MySQL 서버에 대한 DataSource 생성시 예외가 발생했습니다. 정확히는 커넥션 연결시 발생한 것입니다.[main] [2018-07-23 14:47:17] INFO com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource:getPoolManager - Initializing c3p0 pool... com.mchange.v2.c3p0.ComboPooledDataSource [ acquireIncrement -> 3, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoComm..
자바[Java]
2018. 7. 10. 01:27
[Java] java.io.File 클래스 [2] File 클래스 사용법
이전글[Java] java.io.File 클래스 [1] File 클래스 개념 및 생성 방법java.io.File 클래스이전글에서 설명했지만 File 클래스는 여러 시스템 환경에서의 파일 개념을 추상화 한 클래스로서 자바 개발시 시스템의 파일의 정보를 다룰 수 있는 클래스입니다. 파일의 정보를 다룬다고 했는데, 파일의 내용을 읽거나 수정하기 위해서는 FileInputStream 또는 FileOutputStream 등 파일 입출력을 통해서만 가능하며, File 클래스로는 파일 생성 및 제거 파일 생성일, 수정일, 권한 등의 정보를 다룰 수 있습니다.또한 자바에서의 File은 바이너리파일, 텍스트 파일 뿐만 아니라 디렉터리 또한 하나의 파일(다른 파일 list를 가진)로 취급합니다. 따라서 File 클래스를 ..
자바[Java]
2018. 7. 9. 01:36
[Java] java.io.File 클래스 [1] File 클래스 개념 및 생성 방법
관련글[운영체제] File System이란? 파일시스템 및 파일(FIle)에 대한 설명java.io.File 클래스File 클래스는 자바 입출력과 관련된 패키지인 java.io 패키지에 속해 있는 클래스이며, 디스크에 존재하는 파일에 대한 정보를 얻거나 파일을 새로 생성하거나 제거하기 위한 기능을 하는 클래스입니다. 그러나 File 클래스는 실제 파일의 내용은 조작할 수 없으며, 파일에 대한 정보 즉 메타 데이터(생성 날짜, 권한, 수정일, 경로, 파일명, 소유자 등)를 다루기 위해 추상화된 클래스라고 볼 수 있습니다.파일을 추상화한 클래스라고 했는데 추상화라고 표현한 이유는 파일은 파일 시스템에 따라서 다른 의미를 갖기 때문입니다. 파일 시스템이란 파일을 관리하는 체계(또는 방법)을 의미하며, 예를 들..