목록JAVA (5)
ITSTEIN
spring mvc 웹서버에서 외부서버로 https 통신을 하여서, 데이터를 주고 받아야 할 일이 생겼다. 개발 완료후, 로컬 테스트 , TB테스트를 하고 상용 서버 테스트를 진행하던중 Connection reset에러가 발생하였다. 에러로그를 확인하였지만, 정확한 원인 파악아 안되어서 골머리를 앓던중 스택오버플로우에서 글을 발견하였다. 몇년전 나와 같은 문제로 고민하던 사람이 질문을 했는데. 수만은 해결방법과 원인에 대한 논쟁이 오가고 있었다. connection reset이 되는 이유는 여러가지가 있는듯하다. 서버 부하로 인한 connection timeout, 일시적인 네트워크 속도 문제, Client에서 연결을 끊는경우, 서버에 설정된 maxHttpHeaderBody옵션, 메모리 이슈...등.....
자바로 http통신을 시도하던중, ssl handshake 에러가 발생하였다. 통상 ssl hand shake exception은 ssl/tls의 버전이 맞지 않아서 발생하는 문제이다.구글 검색을 통해서, 금방 문제를 해결할수 있었다. ============== 에러로그 ==============javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure at sun.security.ssl.Alerts.getSSLException(Alerts.java:192) at sun.security.ssl.Alerts.getSSLException(Alerts.java:154) at sun.security.ssl.SSLSocketImpl.r..
Springframework와 mybatis의 연동은 많은 방법이 있다. 그중 SqlSessionTemplate, SqlSessionDaoSupport, MapperScanner 3가지 방식을 알아보겠다. 1. 기본 설정 (SqlSessionFactory) 2. SqlSessionTemplate 사용하기 @Repository public class UserCommonDAO { @Autowired private SqlSessionTemplate sqlSession; public void insertUser(UserVO user) { sqlSession.insert("UserDAO.insertUser", user); } } 3. SqlSessionDaoSupport 사용하기 - SqlDaoSupport는 S..
자바의 equals()와 hashCode()는 java.lang.Object의 메소드로서 자바의 모든 객체가 상속받아서 사용하고 있다. 메소드의 목적은 객체의 비교이다. 1. equals()equals()메소드는 객체의 내용을 비교하기 위한 메소드이다. equals의 영어풀이는 다음과 같다. equal(equals) 미국·영국 [|i:kwəl] 영국식 중요도 별점 2개 예문보기1. (수・양・가치 등이) 동일한 2. 동등한, 평등한 3. 감당할 수 있는 '수', '양', '가치'가 동일한, 동등한의 의미를 갖고 있는것과 같이, 객체의 내용이 동일한지 비교하는 것이 주 목적이다. 예를 들면 String, Map클래스의 equals()메소드가 대표적이 예이다. 1) String 문자열을 비교할때, == 연산자..
Java에서 DB connection을 맺을때, DBCP를 사용하는 방법이 있고, JNDI를 사용하는 방법이 있다. DBCP, JNDI 모두 기본적인 JDBC를 사용한다. 1. JDBC (Java DataBase Connectivity)- 자바에서 데이터베이스에 접속할 수 있도록 하는 자바 API이다. JDBC는 데이터베이스에서 자료를 쿼리하거나 업데이트 하는 방법을 제공한다.- 자바의 DB 컨넥셕의 기본이 됩니다. interface로서 각각의 DB벤더(oracle, mysql, sql server, maridb, postgresql ...)마다 jdbc 인터페이스를 구현한 드라이버를 제공함. 2. DBCP (DataBase Connction Pool)- 아파치에서 만든 컨넥션 풀 오픈소스 라이브러리- ..