Back-end 33

NginX 설치하기 NginX 와 Spring Boot Jar 파일 연결 배포하기

1. JDK 설치보통 자바 설치하면 설치되어있을 것이다.설치 사이트 : https://www.oracle.com/kr/java/technologies/downloads/archive/설치 잘 되었는지 확인>java -versionjava version "17.0.12" 2024-07-16 LTS 2. NginX 다운로드설치 사이트 : https://nginx.org/en/download.html 다운받고 압축을 풀면 nginx.exe 파일이 보이는데 더블클릭해서 실행하면된다. 분명 된다고 했는데 역시나 쉽게 되는 법은 없는..ㅋㅋㅋ더블클릭하면 창이 열렸다 닫히는데 전혀 실행되지 않았고, 작업관리자에서도 nginx는 찾아볼 수 없었다. 원인이 뭐일꼬.. 했는데 nginx는 기본으로 80포트를 ..

Spring Boot IntelliJ 스프링부트 배포 파일 만들기 Jar 파일 생성

그동안 배포할때 war 파일만 봤었는데 스프링부트에서 jar 파일을 제공하며,최근에는 jar파일도 많이 사용한다해서 한번 써보려한다. war파일은 톰캣을 따로 설치해야하지만 jar는 내장 톰캣이 같이 생성되어 만들어져서 jar파일 자체만으로도 동작한다. 1. Jar 파일을 만들 수 있도록 설정 [ build.gradle ]bootJar { archiveFileName = '프로젝트명.jar' }"프로젝트명"부분에 적은 이름대로 jar 파일이 생성된다. [ 파일 - 프로젝트 구조 ] 2. 프로젝트의 루트 위치에서 생성gradle로 빌드를 해야한다.프로젝트의 루트 위치로 가서 명령어를 입력해준다. > gradlew.bat clean bootJar 3. JAR 확인(안해도 됌)빌드가 ..

Spring Boot DB 연결 확인하기. 연결이 잘 되는지 확인하는 3가지 방법

Spring Boot DB 연결방법👉 https://luanaeun.tistory.com/282 Spring Boot DB 연결하기 MyBatis, MSSQL, MySQL, GradleSpring Boot 프로젝트를 시작하고 DB에 연결 1. Gradle에 의존성 추가dependencies { implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:3.0.3' implementation 'com.microsoft.sqlserver:mssql-jdbc:12.4.2.jre11' implementation 'orluanaeun.tistory.com 이번 페이지에서는 DB연결을 설정하고 실제로 연결이 잘 되는지 확인해보려한다. 1...

Spring Boot DB 연결하기 MyBatis, MSSQL, MySQL, Gradle

Spring Boot 프로젝트를 시작하고 DB에 연결 1. Gradle에 의존성 추가dependencies { implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:3.0.3' implementation 'com.microsoft.sqlserver:mssql-jdbc:12.4.2.jre11' implementation 'org.springframework.boot:spring-boot-starter-jdbc'}// MySQL의 경우implementation 'mysql:mysql-connector-java:8.0.33' 2. application.properties 에 DB정보 입력# MSSQL DBspring...

Vue + SpringBoot ) url 직접 입력해서 이동 되도록 설정하는 방법

기본 적인 vue의 라우터는 history router 이다. import { createRouter, createWebHashHistory } from 'vue-router'const router = createRouter({ history: createWebHistory()}); 이 라우터는 깔끔한 url을 제공하지만, 직접 주소창에 입력해서 들어갈 수는 없고 버튼을 통해서만 이동할 수 있다. 주소창에 직접 url을 입력해서 이동하는 방식을 사용하려면 Hash 모드 라우터를 사용해야한다. import { createRouter, createWebHashHistory } from 'vue-router'const router = createRouter({ history: createWebHashHi..

Spring Boot + Vue) 서버단에서 CORS 문제 해결하기

개발 환경 Vue3 Spring Boot 3.0.2 JAVA 17 Vue의 포트번호 : 3000 Spring의 포트번호 : 8080 Vue랑 Spring Boot를 처음으로 연동하여 공부를 하고 있는데 역시나 CORS에 부딪혔다. 수많은 블로그에 추천은 하지 않지만 프론트 단에서만 해결할 수도 있다고 하는데 아무리 Proxy를 설정해도 해결되지 않았다. 결국 프론트단의 proxy설정과 백엔드단의 설정이 둘다 필요했다. Vue webpack.config.js module.exports = { devServer : { proxy : { '/api' : { target:'http://localhost:8080', pathRewrite:{'^/api':''}, } } }, }; target : 위 내용은 /ap..

이클립스 안켜짐. workspace is in use or cannot be create, please choose a different one.

이클립스를 열면 다음과같은 에러메시지가 나온다. workspace is in use or cannot be create, please choose a different one. 문구 의미: 이미 해당 워크스페이스가 이클립스로 열려있으니 다른 워크스페이스를 선택해라~ 원인: 해당 워크스페이스를 연 이클립스가 이미 있어서. 상태: 이클립스가 열려있다고 문구가 뜨는데 열려있는 이클립스가 보이지 않는다. 해결방법1. 작업관리자를 열어 해당 작업을 종료한다. 작업관리자를 열어서 보면 화면으로는 보이지 않지만 이클립스가 실행되고 있는게 보인다. 이클립스를 우클릭해서 "작업끝내기"를 누른다. 다음으로 워크스페이스 폴더의 .metadata로 들어가서 .lock 퍼알울 삭제한다. 대부분 이 방법으로 하면 해결되는것같던데..

Back-end 2022.06.26

Spring) 비즈니스 계층. 서비스(Service)란?

비즈니스 계층, 서비스는 컨트롤러와 DAO사이에 위치해서 서로 의존성이 높아지는것을 방지하는 완충제 역할을 한다. 컨트롤러에서 DAO를 바로 호출할 수 있지만, 그러면 컨트롤러와 DAO가 종속되어버린다(강한결합). 그래서 컨트롤러와 DB의 다이렉트 연결을 한단계 떨어뜨려 종속되는것을 막는 것. => 외부 호출에 대한 영속계층(persistence) 종속성을 막는다. 종속성을 떨어뜨린다는건 매우쉽게 말하면 컨트롤러는 컨트롤러의 역할만 하게 하고, 그 외의 역할은 못하게 하는 것. 이렇게 하는 이유는 중간에 DB를 바꾼다거나 할때 바뀌는 부분만 갈아끼우기 형태로 바꿀 수 있기 때문이다. 종속이 되면 서로 강한결합이 되어있으니 모두 다 뜯어고쳐야 하는 상황이 발생하게된다. 1. 서비스 패키지 만들고 객체 등록..

Back-end/Spring 2022.05.02

Spring) 로그인 동작 만들기(테스트 형태)

로그인 동작 전 준비 - MemberVO - DB에 유저테이블에 유저 한명 이상 - DB연결할 dataSource, SqlSessionFactory, SqlSessionTemplate 객체Bean. 1. MemberDAO에 추상메서드로 로그인 메서드 만들어놓기 public void loginMember(String userid, String userpw); 이렇게 직접 적는것 보다 vo객체를 사용하는 것이 좋다. 이렇게 따로 정보를 가져와서 처리하는 방법은 뒤에 5번에 적어보겠다. // 로그인 동작 public MemberVO loginMember(MemberVO vo); 2. 로그인 동작 sql문 생성 src/main/resource/mappers/memberMapper.xml select * from..

Back-end/Spring 2022.04.29

Spring) Contoller 리턴 타입에 따른 매핑 방법

컨트롤러의 메서드의 리턴타입에 따라 페이지 이동 방법이 다르다. 리턴값이 없을때(void), 리턴타입이 String일때, 리다이렉트, 포워드 의 페이지 이동을 정리해보려 한다. 1. 리턴타입이 void일때 이전글에서 했던 대로 @RequestMapping("/주소") 괄호안에 적은 주소와 같은이름의 페이지를 매핑한다. @RequestMapping("/myPage") 로 하면 views/myPage.jsp 페이지를 호출. 2. 리턴타입이 String일때 형식 @RequestMapping("/doTest2") public String doTest02() { return "String리턴"; } @RequestMapping() 에는 /doTest2로 되어있지만 return된 문자열인 String리턴.jsp 페..

Back-end/Spring 2022.04.27
반응형