분류 전체보기 261

[SVN/Error] Some of selected resources were not committed.

Some of selected resources were not committed. Some of selected resources were not committed. svn: E200009: Cannot commit 'D:\...\src\main\webapp\WEB-INF\jsp\system\testLog' because it was moved to 'D:\...\src\main\webapp\WEB-INF\jsp\workflow\testLog' which is not part of the commit; both sides of the move must be committed together 위는 ...\jsp\system\에 있는 testLog.jsp를 ...\jsp\workflow\로 옮긴 후 커밋하..

Repository/SVN 2023.11.20

[Linux] Resource temporarily unavailable(자원이 일시적으로 사용 불가능함)

Resource temporarily unavailable(자원이 일시적으로 사용 불가능함) 정상적으로 잘되던 계정 전환이 갑자기 되지 않으면서 다음과 같이 에러가 떴다. 그래서 계정에 할당된 리소스를 확인해보았다. 이는 /etc/security/limits.conf에서 확인하면 된다. vi /etc/security/limits.conf root soft nofile 81920 root hard nofile 81920 root soft nproc 81920 root hard nproc 81920 위와 같이 root에는 리소스가 할당되어 있었으나, 내가 접속하려는 계정은 그렇지 않았다. 그래서 해당 계정도 /etc/security/limits.conf에 추가하였다. vi /etc/security/limit..

OS/Linux 2023.10.16

[Tomcat/Error] Unsupported major.minor version 52.0

Unsupported major.minor version 52.0 Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/Catalina/startup/Bootstrap : Unsupported major.minor version 52.0 at java.lang.ClassLoader.defineClass1 (Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:800) ... version 52.0은 Java 8(jdk 1.8) 이상의 버전이 필요하나 현재 이보다 버전이 낮아 발생하는 에러이다. 나의 경우에는 서버에 jdk 1.7이 설치되어 있었는데, ..

WAS/Tomcat 2023.10.13

[Java] Stream API - stream().map().collect()

Stream API - stream().map().collect() 1. Stream API (1) Stream API란? - 기존에 배열이나 컬렉션을 사용하면서 코드의 길이가 길어지고 가독성이 떨어지며, 코드의 재사용이 힘들어지는 문제점을 극복하기 위해 Java SE 8부터 Stream API가 추가되었다. -> Stream API는 데이터를 추상화하여 다루기 때문에 배열이나 컬렉션 뿐만 아니라 파일에 저장된 데이터도 모두 같은 방법으로 다룰 수 있게 해준다. (2) Stream API의 특징 ① Stream은 외부 반복을 통해 작업하는 컬렉션과 달리 내부 반복을 통해 작업을 수행한다. ② Stream은 재사용이 가능한 컬렉션과 달리 단 한 번만 사용할 수 있다. ③ Stream은 원본 데이터를 변경하..

[MySQL/Error] com.mysql.cj.jdbc.Driver 오류

com.mysql.cj.jdbc.Driver 오류 해결방법 Spring Boot에 MySQL을 연동시키려고 하였다. application.yml에 datasource 속성을 입력했는데 driver-class-name에서 에러가 떴다. 처음에 다음과 같은 의존성을 추가했음에도 에러는 그대로였다. runtimeOnly 'mysql:mysql-connector-java' runtimeOnly 'mysql:mysql-connector-java:8.0.32' 좀더 구글링해보다가 다음 방법으로 해결하였다. build.gradle 파일에서 다음 dependencies를 추가한 후 gradle을 재실행해주면 된다. dependencies { ... runtimeOnly 'com.mysql:mysql-connector-..

Database/MySQL 2023.10.08

[MySQL] 데이터베이스 생성과 계정 생성 및 권한 부여, 계정 삭제

MySQL 데이터베이스 생성 및 계정 생성, 권한 부여, 계정 삭제 MySQL Workbench에서 다음 쿼리를 실행하였다. 1. 데이터베이스 생성 CREATE DATABASE 데이터베이스명; --ex) CREATE DATABASE dbtest; 2. 계정 생성 및 권한 부여 - 로컬에서만 접속할 수 있는 계정 생성 및 권한 부여 CREATE USER 계정명@'localhost' IDENTIFIED BY '비밀번호'; --ex) CREATE USER myuser@'localhost' IDENTIFIRED BY 'My111!'; GRANT ALL PRIVILEGES ON 데이터베이스명.* TO '계정명'@'localhost'; --ex) GRANT ALL PRIVILEGES ON dbtest.* TO 'm..

Database/MySQL 2023.10.08

[Spring Boot] Spring이란?

Spring이란? 1. Spring은 Framework이다. 2. Spring은 Open Source다. 3. Spring은 IoC 컨테이너를 가진다. - IoC란 Inversion of Control의 약어로, 주도권이 Spring에게 있다는 의미이다. class : 설계도 object : 실체화가 가능한 것 instance : 실체화가 된 것 변수 song은 실체화되어 heap 메모리에 올라간다. 이때 처음에 올라간 song은 다음에 올라간 song과는 아예 다른 변수이므로 heap 메모리에 새로 올라간다. => 이름은 같아도 각각 다른 변수이므로 나중에 관리하기가 힘들어진다. Spring이 class를 관리한다. Spring은 class 전체를 쫙 스캔하여 heap 메모리에 전부 올려놓는다. cla..

IDE/Spring 2023.10.03

[Java] Map 계열 메소드 - get() vs. containsKey()

get() get()은 key에 해당하는 value를 가져올 때 사용한다. public class getMethod { public static void main(String[] args) { HashMap hmap = new HashMap(); hmap.put("fruits", "과일"); hmap.put("apple", "사과"); System.out.println(hmap.get("fruits")); // 과일 System.out.println(hmap.get("apple")); // 사과 System.out.println(hmap.get("banana")); // NullPointerException 발생 } } hmap에 put()으로 key와 value(fruits:과일, apple:사과)를 ..

[Tomcat] 패치 후 웹 반영이 안될 때 해결방법(포트 충돌)

문제상황 검증서버와 운영서버에 ui 패치한 후 톰캣을 재기동하였다. 검증서버는 웹에 정상적으로 반영이 되었으나, 운영서버는 그렇지 않았다. 이를 해결하기 위해 검증서버 ui 전체를 tar로 묶어 운영서버 ui에 덮어씌운 후 톰캣을 재기동하였으나 이 역시 웹 반영이 되지 않았다. 원인 A 고객사는 한 서버 내에 운영서버와 개발서버를 함께 구성해놓았었다. 즉, 한 서버(ex. 192.168.2.71) 내에 2개의 톰캣(운영 및 개발)이 기동되고 있었다. 1. 톰캣의 /work와 /temp에서 이전 작업 저장 톰캣 내 /work와 /temp에 패치 이전의 작업들이 저장되어 있어 패치 이후의 작업이 반영되지 않았다 생각해 해당 디렉토리들을 rm으로 삭제하고 재기동해보았으나 전과 같았다. 2. 톰캣 포트번호 확인..

WAS/Tomcat 2023.09.08

[Java] linux에서 jar 설치

jar 설치 jar는 파일을 압축 및 해제하는 파일 포맷이다. 리눅스 서버에 jar가 설치되어 있지 않아 jar를 설치하였다. 이때, root 이외의 사용자로 접속하여 jar를 설치하려고 하면 제대로 설치가 완료되지 않았다. jar를 설치할 땐 root로 접속해서 진행해야 한다. 1. 설치할 수 있는 jdk 리스트 확인하기 (root에서 실행) # yum list java*jdk-devel jdk 리스트에 jdk 1.6~1.8버전과 11버전이 있다. 2. jdk 원하는 버전 설치하기 # yum install 설치할jdk버전 나는 1.8버전이 필요하므로 java-1.8.0-openjdk-devel.x86_64를 설치하였다. 설치과정 마지막에 Complete! 라는 문구가 출력되면 jar 설치가 완료된 것이다.