[Spring] maven repository 경로 변경
2022. 2. 8. 11:17
스프링
프로젝트를 여러개 진행하다보면 기본적으로 라이브러리가 .m2 폴더안에 repositry 폴더에 저장이 됩니다. 프로젝트 라이브러리들이 한 폴더에 섞이기 때문에 repository 경로를 각각 지정하여 프로젝트별 라이브러리를 따로 관리하는게 좋습니다. 그래서 maven repository 경로를 지정하는 방법을 포스팅 하겠습니다. 1. settings.xml, repository 폴더 생성 settings.xml C:\project\meta_workspace\repository true false -> localRepository 경로는 라이브러리를 저장하고자 하는 경로로 수정하셔야 됩니다. 2. windows - preferences user settings 검색 - User Settings input란..
[Spring boot] 데이터베이스 멀티 커넥션
2021. 11. 24. 16:17
스프링
한프로젝트에 postgressql과 oracle 데이터베이스를 동시에 쓰고싶을때 사용하는 방법입니다. application-properties #Oracle spring.oracle.datasource.hikari.driver-class-name=net.sf.log4jdbc.sql.jdbcapi.DriverSpy spring.oracle.datasource.hikari.jdbc-url=jdbc:log4jdbc:oracle:thin:@ip주소:port번호:데이터베이스이름 spring.oracle.datasource.hikari.username=아이디 spring.oracle.datasource.hikari.password=패스워드 spring.oracle.datasource.hikari.maximum-po..
[Spring] json, xml 데이터 return 하기
2021. 11. 23. 17:42
스프링
Controller.java import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.dataformat.xml.XmlMapper; //타입이 json일경우 String resultType = "json" //String resultType = "xml" if("xml".equals(resultType)) { response.setContentType("application/xml"); response.setCharacterEncoding("UTF-8"); response.getWriter().write(new XmlMapper().writeValueAsString(result)); } //타입이 json일경우 els..
[Spring Boot] 이메일 발송하기 (Java mail)
2021. 10. 26. 15:07
스프링
build.gradle //email implementation 'org.springframework.boot:spring-boot-starter-mail' application-properties spring.mail.host=smtp.gmail.com spring.mail.port=587 spring.mail.username=gmail 아이디 spring.mail.password=gamil 패스워드 spring.mail.properties.mail.smtp.starttls.enable=true spring.mail.properties.mail.smtp.starttls.required=true spring.mail.properties.mail.smtp.auth=true EmailController.ja..
[Spring Boot] rememberMe 사용하여 자동 로그인 기능 개발
2021. 10. 22. 23:42
스프링
SecurityConfig.java package com.chatting.config; import com.chatting.common.Constants; import com.chatting.common.Url; import com.chatting.service.CustomUsersDetailService; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.context.annotation.Bean; import o..
[JPA] @valid 어노테이션을 사용하여 벨리데이션 처리하기
2021. 10. 18. 18:30
스프링
build.gradle implementation 'org.springframework.boot:spring-boot-starter-validation' 해당 라인추가하기 join.html Chats 회원가입 th:object에 validation이 선언된 객체를 넣고 th:field에 해당 객체의 이름을 넣으면 id="", name="" 필드가 자동으로 생성됩니다. controller /** * 회원가입 화면 * @return */ @GetMapping(Url.AUTH.JOIN) public String join(Model model){ model.addAttribute("usersDto", new UsersDto()); return Url.AUTH.JOIN_HTML; } /** * 회원가입 * @pa..
[SpringBoot] Querydsl 적용
2021. 10. 6. 17:42
스프링
QueryDsl 적용 build.gradle //(1) buildscript { dependencies { classpath("gradle.plugin.com.ewerk.gradle.plugins:querydsl-plugin:1.0.10") } } plugins { id 'org.springframework.boot' version '2.7.2' id 'io.spring.dependency-management' version '1.0.12.RELEASE' id 'java' } //(2) apply plugin: "com.ewerk.gradle.plugins.querydsl" group = 'jpa' version = '0.0.1-SNAPSHOT' sourceCompatibility = '11' confi..
[Spring boot] 웹서비스 ec2에 배포하기 (RDS 데이터베이스 연동)
2021. 10. 6. 16:22
스프링
개발환경 1. 인텔리 J 2. JAVA11 3. Amazone Linux 2 AMI 4. Amazone RDS (Maria DB) 5. gradle 6. Spring boot 7. 배포 방법 jar 1. RDS 신청하기 RDS를 클릭 1. 프리티어를 클릭 2. DB 인스턴스 식별자는 말그대로 aws db 인스턴스 이름입니다. 3. 마스터 사용자 아이디, 패스워드 본인의 취향에 맞게 설정 스토리지 자동 조정 활성화 끔 퍼블릭 액세스 -> 예 VPC 보안 그룹 -> 새로 생성 새 VPC 보안 그룹 본인의 취향에 맞게 설정 자동 백업을 활성화 끔 마이너 버전 자동 업그레이드 끔 자동 업그레이드나 버전관리 같은거는 요금 폭탄 맞을수도 있어서 다 사용안하는걸로 하였습니다. 이후 데이터베이스 생성 방금 생성한 데이..
[SPRING JPA] 쿼리 파라미터 로그 남기기 p6spy
2021. 9. 7. 11:25
스프링
build.gradle에 해당 라인 추가 implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.5.6' -> 개발에는 적용하기 괜찮은데 운영에 적용할때는 고민을 해봐야함, 성능상 로그를 남겨도 괜찮은가?
[Spring Boot] 7. 게시판 멀티파일 업로드, 파일 다운로드(Gradle+Mybatis+멀티프로젝트+MYSQL+STS)
2021. 8. 15. 19:06
스프링
시작하기에 앞서 테이블을 생성해야 합니다. CREATE TABLE `tb_board_file` ( `BOARD_FILE_IDX` int NOT NULL AUTO_INCREMENT, `BOARD_IDX` int DEFAULT NULL, `FILE_ID` int DEFAULT NULL, `USE_YN` varchar(1) DEFAULT 'Y', PRIMARY KEY (`BOARD_FILE_IDX`) ) ENGINE=InnoDB AUTO_INCREMENT=20 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='게시판 파일테이블' CREATE TABLE `tb_file` ( `FILE_ID` int NOT NULL AUTO_INCREMENT COMMENT..