개발중632 [API 설계] 서비스단에서 유효성 검사 분리하기 현재 프로젝트에서 유효성 검사는 잘 이루어지지 않고 있었다. 하나의 속성 데이터에 대한 유효성 검사를 마음먹고 하려니 서비스단이 너무 길어졌다. 중복되는 코드들도 너무 많고 이거 참 난감한 상황이 발생했다. 애초에 유효성 검사 로직을 수행하는 공통 로직을 만들면 어땠을까 생각도 해봤는데 이미 늦은 듯하다. 그래서 고민을 하다가 서비스 폴더에 하나의 검증 클래스를 생성했다. 기존 보완 contoller ㄴ dataContoller.java service ㄴ dataService.java dao ㄴ dataDao.java vo ㄴ dataVo.java contoller ㄴ dataContoller.java service ㄴ dataService.java ㄴ dataValidate.java dao ㄴ data.. 개발중/Spring 2022. 5. 24. MYSQL 쿼리 활용 FIND_IN_SET 쿼리를 쓰다 하나의 속성 값에 여러 코드의 값이 ',' 로 묶여 하나의 문자열로 저장되어 있었는데, 현재 ',' 로 엮인 코드들을 OR 값으로 검색해야 하는 일이 생겼다. LIKE 절로 하자니 ,,,,, 뭔가 지저분해서 찾은 방법이 FIND_IN_SET 이다! FIND_IN_SET 는 두 개의 인자를 받는다. FIND_IN_SET( 찾고자 하는 문자열, 타겟 컬럼 ) 아래와 같이 쿼리를 작성하면 즉, CODE 컬럼에 'SB' 라는 문자열이 존재한다면 'SB' 의 인덱스를 반환한다 ! 따라서 0 이상이면 내가 찾고자하는 코드가 있다는거다 ! 쿼리 활용 SELECT * FROM SBTABLE WHERE FIND_IN_SET( 'SB', CODE ) > 0 MYBATIS 활용 WHERE FIND_IN_SET(.. 개발중/MYSQL 2022. 5. 23. WEB Cors 허용 설정 (Vue -> API) 성공 기록 Cors 는 이 블로그로 조금 이해를 얻었다. 요청시 Origin 에 요청 url 이 들어가고 응답해주는 응답에서는 Access Control Allow Origin 에는 요청을 허용해주는 url 이 들어가야 한다. 프론트에서 할 일은 하나밖에 없다.Origin 에 주소를 실어 보내주는 것. 왠만하면 기본으로 실어보내주던데 설정을 바꾸다보니 가끔 안날라올 때도 있는데,이 부분에 대해서는 내가 이설정 저설정 바꾸다보니 그렇게 된 것 같다. 결국은 백단 즉, 스프링에서 해결을 했는데 이블로그에서 정보를 얻었다. 기존 프로젝트를 뒤적 거리다가 WebMvcConfigurationSupport 를 상속받은 클래스를 찾았고 addCorsMappings 메소드를 @Override 하여 사용했다. add.. 개발중/Web 2022. 5. 13. 리눅스에서 npm run 시키기 세팅 Node.js 저장소를 추가하여 yum이 최신 Node.js를 설치할 때 찾을 위치를 알 수 있도록 한다 curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash - nodejs 다운로드 하려고 하니 sudo yum install -y nodejs 아래 에러 발생 removing mirrorlist with no valid mirrors: /var/cache/yum/x86_64/6/base/mirrorlist.txt 아래 명령어 입력 후 다시 nodejs 다운로드 받으니 성공 echo "https://vault.centos.org/6.10/os/x86_64/" > /var/cache/yum/x86_64/6/base/mirrorli.. 개발중/Vue.js 2022. 5. 11. 리눅스 톰캣설정 /usr/local/tomcat9/conf/server.xml 에 톰캣 설정이 있다. 새로 할당받은 도메인을 아래와 같이 추가시켰다. 끝이라니 ,,, 신기해 ,,, 기존에 설정해놓은 것들이 있기 때문에 나는 이렇게 도메인 하나를 추가시킬 수 있었다. 나중에 기회가 된다면 세팅도 해보고 싶다. 일주일 정도 걸릴줄 알았는데 빨리 되었당 ,,, (❁´◡`❁) 개발중/Linux 2022. 5. 11. 쿠버네티스의 여정 전통적인 배포 시대 초기 조직은 애플리케이션을 물리 서버에서 실행했었다. 한 물리 서버에서 여러 애플리케이션의 리소스 한계를 정의할 방법이 없었기에, 리소스 할당의 문제가 발생했다. 예를 들어 물리 서버 하나에서 여러 애플리케이션을 실행하면, 리소스 전부를 차지하는 애플리케이션 인스턴스가 있을 수 있고, 결과적으로는 다른 애플리케이션의 성능이 저하될 수 있었다. 이에 대한 해결책은 서로 다른 여러 물리 서버에서 각 애플리케이션을 실행하는 것이 있다. 그러나 이는 리소스가 충분히 활용되지 않는다는 점에서 확장 가능하지 않았으므로, 물리 서버를 많이 유지하기 위해서 조직에게 많은 비용이 들었다. 가상화된 배포 시대 그 해결책으로 가상화가 도입되었다. 이는 단일 물리 서버의 CPU에서 여러 가상 시스템 (VM.. 개발중/Kubernetes (k8s) 2022. 5. 4. Vue 프로젝트 생성 후 실행까지 Vue CLI 설치 npm을 이용하여 설치하는데 -g 옵션을 통해 현재 프로젝트 node_module에 설치하는 것이 아닌 시스템 전역으로 설치합니다.(global 패키지로 등록) --save 옵션을 줄 경우 현재 작업 중인 디렉토리 내에 있는 node_modules에 패키지를 설치하고, 이후 package.json 파일에 dependencies에 설치 패키지 정보를 추가합니다. npm install -g @vue/cli Vue 프로젝트 생성하기 1. cmd 혹은 터미널에서 vue 명령어 실행 - 프로젝트명을 카멜케이스로 입력할 경우 에러 (ex:vueProject) - 케밥케이스로 입력합니다. (ex:vue-project) -- vue/cli 3.x 이상일 경우 vue create 프로젝트명 -- vu.. 개발중/Vue.js 2022. 5. 4. 리눅스에서 스프링 프로젝트 띄우기 이클립스 해당 프로젝트에서 우클릭 > Export > Web > WAR file 선택 Web Project : 프로젝트 이름 (자동으로 입력 되어있다) Destination : 파일 저장 위치 설정 후 Finish WAR파일을 tomcat/webapps 폴더에 넣는다 tomcat 설치 경로의 conf를 들어간다 #vi server.xml 태그 밑에 주의 파일명을 입력할 때 .war제외 (ex: test.war 라면 test만 입력) 입력 후 톰캣을 재실행 해준다 bin으로 가서 ./shutdown.sh 후 ./start.sh http://서버 ip입력:8080/프로젝트명 입력하면 확인 할 수 있다 만약에 url에 프로젝트명을 입력하지 않으려면 개발중/Linux 2022. 5. 3. 이클립스 설치 무반응 이클립스 설치 무반응 .. 진짜 아무일도 일어나지 않았다. 해결 방안은 eclipse.ini 파일에 jdk 경로를 아래코드로 명시해줘야 한다. -vm C:\Program Files\Java\jre1.8.0_331\bin\javaw.exe 개발중/Troubleshooting 2022. 4. 30. 스칼라 서브쿼리와 인덱스 뷰 성능 차이 알아보고 개선하기 !! 🚦 스칼라 서브쿼리와 인덱스 뷰란? 스칼라 서브쿼리와 인덱스 뷰를 쉽게 이해하자면 위치로 구분할 수 있다. 아래와 같이 SELECT 와 FROM 사이에 있다면 스칼라 서브쿼리 SELECT (스칼라 서브쿼리) FROM (인덱스 뷰) 아래와 같이 FROM 절 뒤에 있다면 인덱스 뷰 SELECT (스칼라 서브쿼리) FROM (인덱스 뷰) 같은 목적을 가지고 쿼리를 실행시켰을 때 실행 속도가 아래와 같이 차이가 났다. 인덱스 뷰가 훨씬 빠르고 스칼라 서브 쿼리가 많이 느리다. 인덱스 뷰 스칼라 서브쿼리 SELECT A.SU_SEQ , B.PU_NAME FROM INFO JOIN USER B ON A.su_seq = B.PU_SEQ SELECT SU_SEQ , ( SELECT PU_NAME FROM USER WHER.. 개발중/MYSQL 2022. 4. 25. lombok.javac.apt.LombokProcessor 에러 해결 [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 4.471 s [INFO] Finished at: 2022-04-18T14:15:56+09:00 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project POMS: Fatal error compi.. 개발중/Troubleshooting 2022. 4. 18. vue 프로젝트 생성법 npm i -g @vue/cli vue.cmd --version vue.cmd create https://soobindeveloper8.tistory.com/282 이클립스에서 vue 파일 생성하는 방법 vue 로 프로젝트를 다시 생성해서 하나씩 알아가고 싶어서 프로젝트를 생성하는데 있어서 막히는 부분이 있었다. 그래서 @다솜 님의 도움으로 해결 할 수 있었다 #땡큐 Base 가 되는 프로젝트를 soobindeveloper8.tistory.com 개발중/Vue.js 2022. 4. 16. 이전 1 ··· 12 13 14 15 16 17 18 ··· 53 다음