일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- LOG4J
- Windows
- react
- NCP
- MySQL
- mybatis
- Git
- Java
- docker
- sapfiorielements
- Kubernetes
- dbeaver
- log4j2
- JPA
- nodejs
- gson
- gradle
- tibero
- useEffect
- database
- VSCode
- springboot
- nginx
- JavaScript
- BPMN
- Spring
- Linux
- IntelliJ
- maven
- SAP
- Today
- Total
목록분류 전체보기 (263)
두 손끝의 창조자
JetBrains 제품을 사용하면 프로그램이 별도로 만들어내는 데이터를 저장하는 공간이 있는데 그 위치가 C:\Users\[유저]\AppData\Local\JetBrains , C:\Users\[유저]\AppData\Roaming\JetBrains 이다. 문제는 IDE를 업데이트 하면 기존에 썼던 데이터를 그대로 유지하고 있어서(폴더이름이 버전으로 되어 있음) 소중한 공간을 낭비하고, 크기도 어마한 공간을 잡아 먹는다. 불필요한 공간을 삭제하자. Menu->Help->Delete Leftover IDE Directories 를 눌러서 불필요한 공간 검색을 하게하고 지울게 있으면 알림 형태로 뜨는데 클릭해서 삭제하면 된다.
[Spring Boot]war로 배포하기 (Gradle + 내/외장 톰캣) (tistory.com)
다운로드 Apache Tomcat® - Apache Tomcat 9 Software Downloads 에서 apache-tomcat-9.0.70-windows-x64.zip 다운로드 설치 압축을 풀고 bin/startup.bat 을 실행하면 JAVA_HOME 이 지정이 안되어 있다고 나온다. 시스템 환경 변수에 자바 홈을 추가한다 다시 startup.bat을 실행한다. localhost:8080 접속하면 잘 기동된다. shutdown.bat 으로 종료한다. 포트변경 8080 포트는 다른 서비스에서 많이 쓰기 때문에 톰캣 실행 포트 변경한다. conf/server.xml 파일을 열어서 8080 -> 8088 로 변경 매니저 접속 URL 열기 톰캣 매니저 접속 권한 변경 webapps/manager/META..
tail -f 걸었는데 트래킹을 하지 않는다면 그 파일이 없어졌다가 새로 만들어지는 파일이 아닌가 의심해봐야 한다. -f 옵션은 inode로 팔로우 하는 옵션이고, 없어졌따가 새로 만들어지는 로그파일 같은 경우 파일이름으로 추적해야 하기 때문에 -F 옵션을 사용해야 한다.
백앤드 자원은 WAS에 디플로이 하면 되는데 넥사크로에서 생성한 js 파일은 nginx의 resource 디렉토리 쪽으로 매번 옮겨야 한다. 파일을 옮길 때 전체를 다 복사하면 보통 UI쪽은 파일 수가 많기 때문에 상당한 시간이 걸릴 수 있다. 리눅스에 rsync 라는 도구를 이용하면 편리하게 할 수 있다. rsync -av /home/cothe/source/ /home/cothe/target/

myBatis는 파라미터 바인딩을 위해 #{name} 이나 ${name} 형식으로 바인딩 변수를 선언한다. 대부분 SQL 툴에서는 :name 형태로 바인딩 변수를 지정하는데 myBatis로 작성된 sql은 바인딩 변수 형식을 변경을 해야 DB 툴에서 사용할 수 있다. Intellij에 포함되어 있는 Database Console 에서는 이 바인딩 변수의 패턴을 지정할 수 있다. 그래서 #{name} 이나 ${name} 패턴으로 된 변수도 sql 수정 없이 사용할 수 있다. 환경 설정에서 패턴을 추가하자. 추가된 패턴 : #\{([^\{\}]*)\}
private List splitSql(String sqlChunk) { StringBuilder sb = new StringBuilder(); List sqlList = new ArrayList(); boolean openQuote = false; for (int i = 0; i < sqlChunk.length(); i++) { char c = sqlChunk.charAt(i); if (c == '\'') { openQuote = !openQuote; } if (c == ';' && !openQuote) { sqlList.add(sb.toString().trim()); sb = new StringBuilder(); } else { sb.append(c); } } re..
ssh-keyscan -t rsa [접속하고자하는호스트주소] >> ~/.ssh/known_hosts gradle에서 org.hidetake.ssh 를 이용하여 파일을 업로드 하는 등 스크립트를 실행하려고 하니 com.jcraft.jsch.JSchException: reject HostKey 오류가 발생했다. OS에 해당 호스트에 대한 정보(?)가 없기 때문인것 같은데 위 명령을 수행해서 known_hosts에 추가한다.
Gson gson = new GsonBuilder() .registerTypeAdapter(new TypeToken() { }.getType(), (JsonDeserializer) (element, typeOfT, context) -> { if (element.isJsonPrimitive()) { return new Table(Collections.emptyList()); } else { JsonElement jsonElement = ((JsonObject) element).get("T_DATA"); if (jsonElement.isJsonObject()) { CompanyInfo deserialize = context.deserialize(jsonElement, CompanyInfo.class); re..
Map에 Key가 abc01 이고 Object 필드의 필드명이 abc_01 일 때 서로 매핑 가능하도록 하려면 매핑전략을 정의해야한다. Gson gson = new GsonBuilder() .setFieldNamingStrategy(f -> concatUnderscoredIndex(f.getName())) .create(); String concatUnderscoredIndex(String str) { if (str == null) return null; if (!str.contains("_")) return str; int i = str.lastIndexOf("_"); if (i == 0) return str; String prefix = str.substring(0, i); String suffix ..
netstat -tnlp | grep [찾을 포트 번호]kill -9 [프로세스 번호]
SELECT * FROM ( SELECT sid || ',' ||serial# "Sid,Serial" ,username "Username" ,status "Status" ,ipaddr "IPaddr" ,to_char(logon_time,'yy/mm/dd hh24:mi:ss') "Logon_Time" ,prog_name "Program" --,pga_used_mem/1024 "PGA(KB)" ,wlock_wait "Wlock_Wait" --,NVL(sql_id, prev_sql_id) "SQL_ID" ,NVL(sql_id, prev_sql_id) || '/' || NVL2(sql_id, sql_child_number, prev_child_number) "SQL_ID" --,client_pid "Client..

데이터베이스 네비게이터에서 데이터 소스를 선택 후 제네럴 선택 Customize 버튼 클릭 다른건 다 필요없고 스키마와 테이블만 표시하도록 체크 아래 Schemas / Users 클릭 유저 추가 표시 예외 조건 추가 여기서 이걸 추가 안하면 시스템 오브젝트 언더바로 시작하는 것들 등등 다 표시된다. 결과 매우 깔끔쓰
이미지 다운 host>docker run -i -t -p 8629:8629 --name tdb_ubuntu --platform linux/amd64 --hostname [호스트이름] ubuntu /bin/bash --platform linux/amd64 옵션은 arm image가 아닌 amd64 이미지를 사용하도록 한다. 호스트 이름은 라이선스에서 지정한 호스트이름과 같아야 한다. 터미널에서 hostname 쳤을 때 보이는 이름 우분투 업데이트 container>apt update && apt upgrade && apt dist-upgrade container>apt install sudo vim container>apt install libaio1 libncurses5 우분투 환경설정 환경설정 파일 열..
windows 11 version 22h2 로 업데이트 한 뒤 tibero를 실행하려고 tbboot 명령했더니 아무런 반응을 하지 않는다. tbdown 명령을 내려도 마찬가지. 윈도우 서비스 목록에 티베로가 없음을 확인하고 서비스 등록을 다시 했다. tbinstall %TB_HOME% %TB_SID% 해결됨.
특정 경로에 있는 모든 jar 파일 implementation fileTree(dir: 'libs', includes: ['*.jar']) 파일 지정 implementation files('libs/bla.jar')

select * from table명 으로 조회해서 그리드에서 직접 데이터 변경하고 싶은데 Column is read-only: No corresponding table column. 뜨면서 안되고 잠겼다고 뜰 때 조회할 때 스키마를 붙여서 조회해볼 것. select * from 스키마명.테이블명
SMTP 서버 설정정보로 세션을 흭득하고 MimeMessage에 세션을 가지고 메시지를 만들고 Transport 로 메시지를 전송한다. 세션을 만들때 default세션으로 가져오면 다른 계정에 대한 정보를 인지하지 않고 기본세션정보만 가져오기 때문에 유의해야한다. import org.springframework.util.StringUtils; import javax.mail.*; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Propertie..
ctrl+f 를 눌러서 찾기/바꾸기 창을 연 뒤에 정규식 옵션을 체크하고 찾기에 #\{(\w+)\}바꾸기에 :$1를 넣는다. 그 반대는 :(\w+)#{$1}이다.