개발/java
-
하이버네이트 서브쿼리개발/java 2016. 4. 29. 10:24
import org.hibernate.annotations.Formula; @Formula(value = "(SELECT REPLACE(CONCAT(T.FILE_PATH,T.FILE_NM,'.',T.FILE_EXT,'|',T.SNS_FILE_ID), '\\\\', '/' ) "+ " FROM SNS_FILE T"+ " INNER JOIN SNS X ON T.SNS_ID = X.SNS_ID"+ " WHERE X.USER_ID = USER_ID"+ " AND X.SNS_TP = 'PROFILE'"+ " AND X.PROFILE_Fl = 'Y'"+ " ORDER BY T.SNS_FILE_ID DESC LIMIT 1)");
-
javax 를 이용한 gmail 서버로 메일 보내기개발/java 2016. 4. 22. 09:34
import java.util.Properties; import javax.mail.Address; import javax.mail.Authenticator; import javax.mail.Message; import javax.mail.PasswordAuthentication; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; import mgood.domain.User; public class SMTPUtil{ private final static String ACCOUNT = mgood.common...
-
spring data jpa object references an unsaved transient instance - save the transient instance before flushing개발/java 2016. 3. 31. 15:35
해결방법@ManyToOne(fetch=FetchType.LAZY,cascade=CascadeType.ALL) 원문 http://stackoverflow.com/questions/2302802/object-references-an-unsaved-transient-instance-save-the-transient-instance-be
-
단위테스트를 시작해보자!개발/java 2016. 3. 27. 18:16
단위테스트를 작성한다. 처음에는 테스트할 코드가 없으니 당연히 통과하지 못한다.하지만 단위 테스트를 먼저 만들고 , 실제 제품에 들어갈 코드를 작성하는 것이 규칙이다. 실패하는 단위테스트를 통과하기 위해 작성한 것이 실제 코드의 모든 줄이 된다.이 테스트 먼저 (test - first ) 기법은 극히 반벅적인 기법이다. 먼저 다섯줄이나 열줄 을 넘지 않는 단위 테스트의 작은 조각을 작성한다 . 그리고 컴파일 해보지만 아직 작성하지도 않은 코드를 사용하기 때문에 분명 컴파일이 되지 않는다 . 그러면 단위테스트 코드의 컴파일이 성공할 만큼 실제 코드를 작성한다 .아마 여섯 줄 보다 적을 것이다. 그런다음 다시 테스트를 돌려본다. 컴파일은 되어도 아직 실제 코드를 다 작성한 것이 아니기 때문에 또 테스트를 통..
-
객체지향 개발의 원칙 (나쁜 설계의 냄새 7가지)개발/java 2016. 3. 27. 17:00
나쁜 설계의 냄새1. 경직성 : 무엇이든 하나를 바꿀때마다 반드시 다른것도 바꿔야 하며, 그러고 나면 또 다른것도 바꿔야하는 변화의 사슬이 끊이지 않기 때문에 시스템을 변경하기 힘들다. 2. 부서지기 쉬움 : 시스템에서 한 부분을 변경하면 그것과 전혀 상관 없는 다른 부분이 작동을 멈춘다. 3. 부동성 : 시스템을 여러 컴포넌트로 분해해서 다른 시스템에 재사용하기 힘들다. 4. 끈끈함 : 개발 환경이 배관용 테이프나 풀로 붙인 것처럼 꽉 달라붙은 상태다 . 편집 - 컴파일 - 테스트 순환을 한번 도는 시간이 엄청길다. 5. 쓸대없이 복잡함 : 괜히 머리를 굴려서 짠 코드 구조가 굉장히 많다. 이것들은 대개 지금 당장 하나도 필요 없지만 언젠가는 굉장히 유용할지도 모른다고 기대하며 만듯것이다. 6. 필요없..
-
자바 POI 멀티 시트 엑셀업로드개발/java 2016. 3. 10. 12:41
package web.util.excel; import java.io.File;import java.io.FileInputStream;import java.text.NumberFormat;import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.Map; import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse; import org.apache.poi.hssf.usermodel.HSSFCell;import org.apache.poi.hssf.usermodel.HSSFRow;import org..
-
java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener개발/java 2016. 2. 28. 22:21
프로젝트 >> properties >> Deployment Assembly를 선택한 후,"Add" >> Java Build Path Entries >> Maven Dependencies 선택한 후, "Apply"를 해준다. 아래와 같은 에러시 심각: Error configuring application listener of class org.springframework.web.context.ContextLoaderListenerjava.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListenerat org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassL..