영원한 고민거리, Java에서의 데이터베이스와 SQL 접근 Java 개발자에게 있어 데이터베이스와 SQL 접근은 영원한 고민거리이다. 요즘같이 생산성이 중요시되는 시대에 공부 목적이 아닌 이상 java.sql.* 패키지만을 사용하여 Plain JDBC로 데이터베이스 접근 코드를 구현하는 사람은 적을 것이다. Plain JDBC만을 사용하면 간단한 SQL 쿼리 결과를 얻기 위해 불필요한 Boilerplate Code(보일러플레이트 코드)가 너무 많아 프로젝트의 규모가 조금만 커져도 생산성의 발목을 잡게 된다. MyBatis, JdbcTemplate, Hibernate... 이러한 생산성을 향상시켜주는 라이브러리가 존재한다. 먼저 너무나도 유명한 MyBatis는 iBatis의 전신으로 국내 프로젝트 환경에서..
Java 소스 코드 작성시 날짜와 시간을 다룰 때 Java의 기본 API가 제공하는 java.util.Date 클래스를 사용하지 않고 Joda-Time의 org.joda.time.DateTime 클래스를 이용하는 편이다. 사용이 훨씬 편리하기 때문이다. DateTime 클래스 사용시 주의할 점은 데이터베이스에 대한 CRUD 작업시 JDBC Driver를 이용하여 MySQL에 파라메터로 전달할 때 변환 작업이 필요하다. 변환 없이 그래도 파라메터로 전달하면 아래와 같은 오류를 출력한다. com.mysql.jdbc.MysqlDataTruncation: Data truncation: Incorrect datetime value... 해답은 DateTime 객체를 yyyy-MM-dd HH:mm:ss 형식의 St..
* 사내 웹 애플리케이션을 개발하면서 발생하는 모든 예외 메시지를 DB에 로그로 기록하는 작업을 진행하면서 최초 발생한 Exception 객체에 접근할 필요성이 생겼다. * 구글링 결과 간편하게 Apache Commons Lang 라이브러리가 제공하는 ExceptionUtil.getRootCause() 메써드를 사용하기로 했다. * 먼저 현재 최신 버전의 Apache Commons Lang v3.1 라이브러리를 다운로드한다.http://commons.apache.org/proper/commons-lang/ * 압축해제 후 commons-lang3-3.1.jar(308 KB) 파일을 프로젝트의 \WebContent\WEB-INF\lib 디렉토리에 복사한다. 라이브러리를 CLASSPATH에 추가하는 과정이다..
* 튜토리얼이라기 보다는 내가 주로 사용하는 JavaScript 라이브러리를 JSP에서 임포트하는 방법을 설명했다. * JavaScript로 작성하는 부분은 .js로 분리해야 IDE 환경의 도움을 얻기 편하지만 소스 코드 중간중간 JSTL 태그 라이브러리를 사용할 필요가 있어 분리하지 않고 .jsp 파일 안에 작성했다. 아래와 같이 /WEB-INF/fragment/common-js.jsp 파일을 작성하고 템플릿 파일에서 태그로 호출한다. * JSTL 태그 라이브러리를 사용하려면 jstl-1.2.jar와 standard-1.1.2.jar 라이브러리를 임포트해야 한다. maven jstl, maven standard 키워드로 구글링하여 쉽게 받을 수 있다. * /WEB-INF/fragment/common-j..
- Total
- Today
- Yesterday
- JHipster
- jsp
- Kendo UI Web Grid
- node.js
- 구동계
- bootstrap
- 태그를 입력해 주세요.
- Eclipse
- Spring MVC 3
- 자전거
- Spring Boot
- kotlin
- DynamoDB
- Kendo UI
- java
- Docker
- 평속
- jstl
- graylog
- chrome
- 로드바이크
- CentOS
- 로드 바이크
- JavaScript
- spring
- Tomcat
- maven
- MySQL
- jpa
- 알뜰폰
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |