기본 콘텐츠로 건너뛰기

3월, 2024의 게시물 표시

개발 공부 - JavaFX (exe 실행 파일 생성 문제로 진행 중)

 결국 java swing을 버리고 javaFX를 써보려는 나의 모습을 보이게 되었다. (근데 사실 awt랑 swing도... javaFX도 좀 별로인 거 같은...) https://openjfx.io/openjfx-docs/#gradle   이 사이트에 들어가서 설치도 하고 뭘 했는데, 결국 external libraries로 다시 불러와야 해서 sdk 는 삭제했다. 일단 이 JavaFX는 gradle.kotlin으로 하면 호환이 뭐가 안 된다 말이 많아서 groovy로 다시 변경해서 진행했다. https://www.youtube.com/watch?v=bRpGnCjJ0ro   위 유튜브 참조해서 설정 변경하고 진행했다. gradlew run! 하면 일단 실행은 되고, 누덕누덕 만든 소스로 exe 실행 파일을 만드는 작업이 또 한 참 걸렸다. fx:deploy is not available in this JDK 이 오류는 끔찍한 것! 구글링 해보니 자바 8 정도로 내리고 해보라고 해서 재시도하는 중이다. https://www.jetbrains.com/help/idea/javafx.html#create-project https://thinkerodeng.tistory.com/320 https://live-for-myself.tistory.com/124 https://www.youtube.com/watch?v=t1Ay3RcNJoE https://www.youtube.com/watch?v=hS_6ek9rTco https://streamls.tistory.com/entry/JAVA-Intellij-JavaFX-%EC%84%A4%EC%B9%98Java-11-%EC%9D%B4%ED%9B%84-%EB%B2%84%EC%A0%84%EC%9A%A9 https://johnmarc.tistory.com/100 일단 6시간 정도 투자해서 ↑ 이 걸 해 보았다. Java 11 javafx 19 launch4j 3.0.5 intellij 환경  정도로 동작 시키는 방법은 알아냈는데, 

개인 작업 - 이북 단말기 구매 (오닉스 페이지)

https://www.bubblecat.co.kr/2023/09/1-3_4.html   이 사건 이후로 일본어랑 영어 공부를 못 하고 있었는데, 회복이 99% 되어 공부를 다시 시작 한다!  progress bar 상태라면 ↓ 나의 안위 >>>>>>>>>>>>>>>>>>>>>>>>>>> 공부 (중지) 나의 안위(해결) <<<<<<<<<<<<<<<<<<<<<<< 공부 (재시작) 어쨌든 공부를 시작 할 땐 뭐다? 운동을 시작 할 땐 뭐다?               ╰(*°▽°*)╯ (●'◡'●)  돈 을   ♥   쓴 다 (❁´◡`❁)               (@^0^@)/ 그렇기 때문에 이북 단말기를 구매하려 했으나, 춘추전국 같은 제품군에 필요 기능을 요약 해 보았다. 1) pdf, txt 가 인식 되어야 한다. 2) word 도 인식 되면 좋다. 3) 필기 많이 쓴다. 4) 문제집을 풀어야 해서 국내 전자책 서점 되어야 한다. (drm 극혐!) 5) 화면이 눈이 안 아픈 해상도를 지원해야 한다. 6) 좀 튼튼해야 한다. 2) 빼고는 필수조건이다! 4) 가 좀 걸리긴 하는데, 이걸 만족 시키는 게 없어서 킨들 스크라이브를 보고 있긴 하다. 일단은 갤럭시 탭 흑백 필터로 공부 하고 있긴 한데, 이직 시 구매 예정이다!!!! 곧!!! 그런데 사실 전자책 단말기 카페에서 보면 보통 충족이 다 안 되어서 2~3개씩 사긴 하시는 것 같다. 나 책 엄청 보는데 좀 디톡스가 되길 바라며... 또한 구매 후 공유하지 않을 것인데, 구매 한 책 단말기에 넣게 어케 좀 해줘라!!!! 보안 회사 분들아!!!! 어케 잘 할 수 있잖아요!!!!!!!!  구매  29cm       오닉스 페이지     

개발 공부 - ㅎㅏㄴㄱㅡㄹㅇㅣ ㅎㅏㄴㄱㅡㄹㅈㅏㅆㅣㄱ (윈도우 한글 자모음 분리 현상)

윈도우 + . (마침표) = 이모지 창 한번 띄워짐 누르면 해결된다!!! 이 이슈 때문에 잠시 영어로만 쓰다가 찾아보고 한번에 해결! 출처 : https://junk-storage.tistory.com/62

사용 후기 - SKT 브로드밴드 사용기 (2015 ~ )

인터넷, 1999년부터 2015년까지 KT 외길 인생. (근성으로 16년 사용) 2015년부터 현재까지 SK브로드밴드 사용 중이다. 이 당시 KT가 7일에 한 번씩 끊기는 경험을 했고, LG는 싫어서 SK를 사용하게 되었다. (LG는 통신사 느낌이 한국 3위였기 때문에 사용하고 싶지 않았다.) 그런데 SK도 참으로 많은 수난이 있었다!!!!! 1) TV가 안 나와요. (빈도수 1위) 2) 인터넷이 안 되어요. (빈도수 3위) 3) 전화가 안 되어요. (빈도수 2위) 4) 인터넷은 되는데 사이트가 안 들어가져요. (2024-03-05~2024-03-08) (빈도수 1회!) 불편이 큰 이슈대로 기재해 보았다. 신비롭게도 모든 해결이 모뎀 교체로 이루어진다. (기사님은 친절한데 모뎀이 똥인가 생각이 드는 것을 참을 수 없다.) 어쨌든 이 혼란스러움을 극복할 수는 없는데, 고장 및 교체 사유를 잘 모르기 때문이다. 1) TV가 안 나옴 - 기계로 테스트를 해 봄 - 모르겠음 - 모뎀 교체 - 해결 2) 인터넷이 안 됨 - 집 PC로 테스트를 해 봄 - 해결 안됨(신호가 안 온다고 하심) - 모뎀 교체 - 해결 3) 전화가 안 됨 - 테스트 안 해보고 모뎀 교체 - 해결  4) 인터넷은 되는데 사이트가 안 들어 가짐 - 집 PC로 테스트를 해 봄 - 모뎀 교체 - 해결 (의문) 이 SK 인터넷을 쓰며 개인 PC 수리의 달인이 되어버렸는데, 나는 (컴퓨터 공학과에서 컴퓨터 조립&부품 배우는 건 아닌데 일단 나는 할 줄 알지만 님 컴퓨터 안 맞춰 줄 거고 나는 [용산]의 컴퓨터 부품 시스템을 체험 후 대기업 컴퓨터 쓰기 때문에 아주 표준화된 상태로 돌리기가 용이한 환경이다.) 인터넷에 나온 모든 걸 해 본 뒤 에 고객센터에 문의를 해 보았지만 결론은 모뎀 교체라는 엔딩이었다!! (아무것도 안 한 상태와 일치하는 이상한 해결책!) 심지어 요즘은 3개월 정도 되면 교체를 하는 이상함을 겪고 있다!  이 정도면 역시 SK 모뎀이 문제가 아닌가 싶다. 어쨌든 이번 이슈로

개발 공부 - 공부를 위한 kafka 관련 회고

 오랜만에 면접을 보고, 거의 Producer 역할을 개발했던 Kafka에 대해 회고해 본다. 금일 면접은 퇴사 사유를 너무 정직하게 말해서 조금 반성하는 점이 있다. 그렇지만 계약 사항 준수는 중요하다고 생각하고... 사실 거짓말 해도 인사팀끼리 커넥션을 통해 진실을 알지 않을까? 싶어서 정직하게 말했다... (그러나 Kafka 관련 회고를 할 수 있어서 좋은 경험!) 어쨌든 카프카의 중복 컨슘 에 관해 면접 질의가 와서, 회고 및 부족 사항을 R&D 해보기로 했다! 퇴사한 회사에서는 MSA 구조 내에서 해결 할 수 있는 방식이었는데, Kafka 단독으로 할 수 있는 방식이 구글링하니 많이 나와서 알아두기로 했다. 일단 트렌디하게 chatgpt에게 외주를 줘본다.

개발 공부 - @Transactional, @Propagation

 @Transactional 어노테이션을 붙이면, 해당 메소드/클래스의 메소드가 트랜잭션 처리를 받을 수 있게 해준다. 일반적으로 @Transactional 어노테이션을 붙이지 않으면, 각각 메소드 호출이 자신만의 트랜잭션을 가지게 되어, 메소드 호출이 별도 트랜잭션에서 동작하게 된다. 따라서 만약에 여러 개 메소드를 호출하는 중에 오류가 발생하면, 발생한 지점 이후 작업은 롤백되지 않고, 이전에 정상 완료 된 작업들은 영향을 받지 않는다. 그런데 @Transactional 어노테이션을 붙이면, 해당 메소드나 클래스들의 메소드가 하나의 트랜잭션 내에서 동작하게 된다. 따라서, 여러 개의 메소드를 호출 하는 도중에 오류가 발생하면 해당 트랜잭션 전체가 롤백되어 모든 작업이 이전 상태로 복원된다. 동작 예시를 몇 개 들면 아래와 같다. test1() -> testRepo1() @Transactional 이 2개 다 적용 됨 test1()이 끝날 때 testRepo1()에 대한 것이 같이 동작함 만약 testRepo1()에 오류가 나면 test1()도 롤백됨 test2() -> testRepo2() @Transactional이 testRepo2()에만 적용 됨 test2() 메소드에서 testRepo2()를 호출해도 testRepo2() 메소드가 별도 트랜잭션임 testRepo2()에서 예외가 발생해도 test2() 메소드는 롤백되지 않음  test3() -> testRepo3() @Transactional이 test3()에만 적용 됨 test3()에서 testRepo3()을 호출해도, testRepo3() 메소드는 새로운 트랜잭션 없이 실행됨 testRepo3() 을 호출한 뒤에 오류가 발생하면, test3() 의 트랜잭션 안에서 testRepo3()이 호출되었기 때문에 롤백됨. test4() -> testRepo4() @Transactional 이 2개 다 없음 두 메소드 서로 트랜잭션 없이 실행됨 예외가 발생 시에는 해당 메소드 내에서만

개발 공부 - github 잔디 날짜 변경 방법 (n day ago, 날짜 지정)

github에 잔디 심기를 하다가, 간혹 12시가 넘어서 날짜 안에 못 커밋 한 적이 있다! 그럴 때는 간단하게, 1. git add . 2. git commit --date="1 day ago" -m "커밋 메시지" 3. git push 하면 해결이 된다.  저렇게 n day ago 같이 쓸 수도 있고, git commit --date="2024-02-23 12:00:00" -m "커밋 메시지" 와 같이 YYYY-MM-DD HH:MM:SS 형태로 날짜 지정해서 커밋 해도 된다. 그리고 나서 바로 날린 커밋 메시지 내용을 수정하려면 ↓ 이렇게 하면 되고, git commit --amend -m "새로운 커밋 메시지" git push --force origin <브랜치 이름> hash 값이 수정되므로 force push 를 해 줘야 한다. 그러나 사실 매일 커밋 하는 게 목표이므로 잘 쓰지 않는 것으로...ㅎㅎ

사용 후기 - 프로그래머스 프로필에 Github 저장소 연동

Programmers 에서는 이 상태로 2022년 이후로 새로고침을 안 한 상태라, 오랜만에 연동 해 봤다. 이직 시에도 Programmers로 한 적은 없어서 관리를 덜 하긴 했는데, 분석 해준다길래 오랜만에 땡겨봤다. (private 까지 조회 되는지 궁금해서 해 보기도 했다. - Kotlin이 집계된다면 private가 보이는 것인데...) 2024-02-27 18:47 시작했으므로 내일 확인 예정이다. 2024-03-01 확인 결과로 3531 라인 정도의 kotlin이면 private 제하고 확인 되는 걸로 추측된다! 아무튼 JS로 집계되는 것이 꽤 많아서 당황했는데... public에 js 모듈 include 한 것이 뜬 것인가 싶다... maven이나 gradle 사용 이전 코드 집계가 된 건 가...