본문 바로가기

728x90
반응형

전체 글

(41)
JavaMailSender란 녀석을 만났다. 프로젝트 진행 중 메일 전송 로직을 개발 해야만 했다. 문자 서비스, 알림톡 서비스와는 다르게 메일 서비스는 무료로 사용 할 수 있는 거 같다. (이메일을 보내는데 우리가 비용을 지불하지 않지...) 그리고 고맙게도 JAVA에선 이미 메일을 보낼 수 있게 개발 해놓은 인터페이스가 존재하는데 그것이 바로 'JavaMailSender' 이다. ****JavaMailSender를 이용해서 메일 전송 로직을 개발하려면 사용하는 메일 사이트에서 선 작업이 필요한데 본 글에선 생략 하겠다. 본인은 구글 메일 gmail을 사용하였다. 개발 환경 : spring, gradle 자 그럼 코딩을 시작해보자. 1. build.gradle에 implementation 시켜줘야한다. // JavaMailSender implem..
IntelliJ 로컬서버와 실제 운영서버 소스코드 비교/수정/반영(Deployment) 어느덧 이클립스에서 인텔리제이로 넘어온지 2년 정도가 되어간다. IntelliJ에서 제공하는 기능을 그래도 어느정도 사용하고있다고 생각했는데... 또 다시 새로운 녀석을 만나게 되었다. 그녀석이 바로 Deployment 기능이다. 어느날 현재 운영중인 실서버에 올라가있는 소스코드중 정적페이지에 오타를 발견하였다. 본인이 처리한 과정은 putty, Git bash와 같은 프로그램을 사용해서 리눅스에 접속하여 직접 소스코드 파일을 찾아들어가 오타를 수정하는 방식이었다. 정적페이지 html, jsp와 같은 페이지는 톰캣 재시작 없이 바로 수정이 가능했기에 이런 방식을 선택했다. 하지만 수정을 하는 과정에서 소스코드의 위치를 찾아들어가야하는 번거로움을 느꼈다. 이번에는 그저 오타 하나였지만 만약에 수정할 것들이..
Arrays.sort() 배열 순서 정리하기 프로젝트 진행중에 배열의 순서를 정리해야하는 상황을 만났다. 배열 순서를 정렬할 때는 여러 상황이 있는데 오늘은 오름차순, 내림차순, 앞뒤비교를 알아보자. - 우선 오름차순은 가장 간단하다. Arrays.sort() 함수를 사용하면 된다. int[] arr = {2, 30, 11, 21, 9, 8, 100}; Arrays.sort(arr); System.err.println("Sorted arr[] : " + Arrays.toString(arr)); Sorted arr[] : [2, 8, 9, 11, 21, 30, 100]; 위와같이 아주 간다하게 정렬을 할 수 있다. 자료형이 String[]이라도 가능하다. - 다음 내림차순 정렬이다. 내림차순 정렬은 Collections.reverseOrder() 를..
Spring boot에서 mybatis mapper location 설정 아이디어가 생기면 언제든 개발에 들어가기 위해 간단한 테스트 프로젝트를 기본 셋팅을 해보는데... 셋팅 중에 '내가 정말 지금까지 Spring boot를 제대로 사용하지 못했구나'라고 생각들게 한 정보가 있어 공유해보려 한다. 지금까지 본인은 새로운 Spring boot 프로젝트를 셋팅할 때 mybatis를 사용했는데 mybatis를 사용하려면 프로젝트 내에 mapper 파일 위치를 셋팅을 해줘야한다. 헌데 지금까지 본인은 mapper 위치를 등록하기 위해서 TransactionConfig.java 파일을 생성해서 @Bean public SqlSessionFactory mainMybatisSqlSessionFactory( @Qualifier("mainDataSource") DataSource mainDa..
HeidiSQL에서 csv파일 import 프로젝트 진행 중 엑셀 파일에 정리된 내용을 데이터로 입력해야하는 일이 생겼다. 하나하나 언제 넣나 생각했지만 역시나 방법은 있었다. 일단 본인의 엑셀 파일이다. FILE_NAME, REG_NO이 있고 그 밑에 데이터가 존재한다. 만약 이 데이터를 tmp라는 데이터 테이블에 컬럼 값으로 자동으로 입력하려면 일단 엑셀 파일을 csv 파일로 export 해야한다. 엑셀에서 저장할 때 파일 형식을 csv로 변경하면 된다. 이제 데이터를 넣어보자. 먼저 HeidiSQL에서 tmp라는 테이블을 생성했다. tmp테이블은 FILE_NAME 과 REG_NO 컬럼을 갖고있다. (참고로 DB는 MYSQL이다.) tmp테이블이 생성됐다면 이제 csv 파일로 데이터를 넣어보자. 도구 -> CSV 파일 가져오기 이후 나온 설정..
intelliJ 에서 서버 재시작 없이 jsp 적용하기 프로젝트를 진행하다보면 jsp를 수정 할 일이 생기는데 그 때마다 서버 재시작을 해야하는 번거로움이 생긴다. 오늘은 서버 재시작 없이 새로고침만으로 jsp를 반영하는 방법을 알아 번거로움을 해결 해보자. 본인이 아는 방법은 2가지가 있다. 첫번째. tomcat 설정 변경하기 위 이미지와 같이 Edit Configurations을 클릭하면 나오는 창에서 On 'Update' action 과 On frame deactivation 항목을 Update classes and resources 로 변경해주면 된다. 두번째. Spring Boot 설정 변경하기 - maven 프로젝트 기준 pom.xml 종속성 추가 org.springframework.boot spring-boot-devtools 2.2.1.RELE..
intelliJ에서 Spring boot 프로젝트 생성하기 점점 본인은 개발 환경 방향성이 intelliJ와 Spring쪽으로 가고 있는듯하다. 그래서 프로젝트에 가장 기초인 프로젝트 생성을 한 번 처음부터 진행 해보았다. (정말 흔히 얘기하는 Create New Project는 처음인 거 같다...) 먼저 intelliJ 처음 화면에서 New Project를 선택한다. 좌측 탭에서 Spring Initializr를 선택하고 본인에게 맞는 설정들을 선택 해주면 된다. Name - 프로젝트 이름 Location - 프로젝트 저장 경로 Language - 개발 언어 Type - 사용할 종속성 종류 Artifact - 산출물 이름 Package name - 말그대로 패키지 이름 Project SDK - 소프트웨어 개발 키트 Java - Java version Pack..
cmd에서 JAVA 컴파일 및 class파일 실행(라이브러리 함께) 프로젝트 진행 중 셋팅이 전혀 돼있지 않은 pc에서 java파일을 실행해야하는 경우가 생겼다. 여기서 본인이 말한 셋팅은 java, 톰캣, framwork, 라이브러리 등등 어떠한 것도 설치 되어있지 않았다. 먼저 PC에 JAVA를 설치했다. 어찌됐든 JAVA로 작성한 기능이기 때문에 JAVA는 필수적으로 필요했다. 준비과정 JAVA설치는 이전 글을 참조 바랍니다. https://thecardeveloper.tistory.com/19 JAVA 설치 및 환경변수 설정 본인 생각에는 개발에서 가장 기본 기초라고 말 할 수 있는 것이 언어라고 생각한다. '자신이 개발을 시작할 때 어떠한 언어를 사용하여 개발을 할 것인가' 나는 많은 언어들 중 현재는 JAVA를 thecardeveloper.tistory.com..

728x90
반응형