자바+스프링 프로그래밍을 하다 보면 propagation_required isolation_default 이런 에러를 만날 수 있다. 잘 되다가 갑자기 안되는 경우 저런에러를 볼 수 있다. 구글링 해도 잘 안나오고 해서 내가 해결한 방법을 공유해 보면.. 로그인시 먹통이 되었다. 뭔가 잘못되면 에러메시지가 나오는데.. 먹통이라.. 소스를 좀 보니까 id로 초기 db connection 맺어서 select 하는 부분에서 먹통이 되었다. 뭔가 db connection 문제리라.. 아무리봐도 소스 수정한건 없고 톰캣 catalina.log 는 propagation_required isolation_default 이런것만 뱉어내고.. 원인을 알 수가 없었다. 결국에는 톰캣 localhost_날짜.log 파일을 ..
package getemail; import java.io.IOException; import java.util.HashSet; import java.util.regex.Matcher; import java.util.regex.Pattern; import org.jsoup.Connection; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; public class GetEmailAddr { static String url="https://newsis.com/view/?id=NISX20200623_0001068975&cID=10101&pID=10100"; public static void fillEmailsHashSet(String line,HashSe..
package zzz; import java.io.BufferedReader; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.util.HashSet; import java.util.regex.Matcher; import java.util.regex.Pattern; public class foo { public static void main(String[] args) { // TODO Auto-generated method stub HashSet hs = new HashSet(); FileReader file = null; try..

콘솔의 버퍼 사이즈를 키워서 한번에 보여줄 수 있는 양을 늘릴 수 있습니다. 메뉴에서 "Window -> Preferences -> Run/Debug -> Console" 를 선택합니다. Console buffer size(characters) 부분에 기본값은 80000입니다. 이 값을 키워서 콘솔에 보여지는 로그의 양을 늘릴 수 있습니다. 8000000으로 백배 늘려 보았습니다. 열배 늘려도 작아서 백배 늘렸습니다. 변경후 "Apply and Close" 를 눌러 적용합니다.

이 포스트에서는 로그인이 필요한 사이트와 Request Header를 검사하는 사이트를 파싱하는 과정을 적어둔다. 0. 웹 사이트 로그인 먼저 웹 사이트에 로그인에 대해 다시 생각해 볼 필요가 있다. 최근 웹 사이트에서 사용되는 로그인 방법은 크게 두 가지로 볼 수 있다. 첫 번째는 세션을 이용한 방법이고, 두 번째는 Restful API에 주로 사용되는 토큰 인증이다. 발급 받은 토큰을 이용하는 방법은 이전 포스트에서 원하는 값을 Jsoup의 Document를 파싱해 얻어낸 것처럼, 간단하게 얻어낼 수 있다. 물론 토큰이 HTML요소가 아니라 Script 요소로 있는 경우도 많지만 정규식이나 replace, split 같은 메소드를 이용하면 별 어려움이 없다. 다시 첫 번째 세션 로그인으로 돌아가면, ..

Jsoup는 아주 강력하고 재미있는 라이브러리다. 단순한 HTML 문서 파싱을 넘어 웹 사이트에 대한 Request, Response를 모두 처리할 수 있다. 덕분에 일부 특별한 경우(플래시, 애플릿, ActiveX같은 비표준이나 WebSocket)가 아니라면 브라우저로 사이트를 이용하는 상황을 그대로 재현해낼 수 있다. 다시 말해, 대부분의 사이트의 원하는 정보만 뽑아내는 '뷰어'를 만들 수 있다는 것이다. 몇 가지 간단한 예제를 통해 사이트에서 원하는 정보만 뽑아내는 과정을 적어보려 한다. 0. Gradle 디펜전시 추가 compile group: 'org.jsoup', name: 'jsoup', version: '1.10.2' Maven Repository를 통해 간단하게 디펜전시를 추가 할 수 있..
자바에서 wav 파일 실행하는 방법 입니다. 식당에 가면 "배달의 민족 주문~" 하는 소리가 들리던데 소리파일만 그걸로 하면 똑같이 나올듯 합니다. war 파일을 D 드라이브 루트로 해놨으니 원하는 경로랑 파일을 File file = new File("D:\\beep.wav"); 이부분에서 지정하면 되겠습니다. 그런 전체 소스를 살펴보겠습니다. import java.io.File; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.Clip; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel;..
자바 윈도우 환경에서 디렉토리 (폴더)에 파일이 생성되거나 삭제, 변경되었을 시 모니터링 하고 있다가 알람등을 할 수 있는 프로그램 입니다. smtp를 연결하면 메일보내기 등도 할 수 있겠네요.. 구글 smtp를 사용해서 메일보내는 전체 소스도 이 블로그에 있으니 참고하시면 될듯 합니다. import java.io.IOException; import java.nio.file.FileSystems; import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.StandardWatchEventKinds; import java.nio.file.WatchEvent; import java.nio.file.WatchKey; import ja..
- Total
- Today
- Yesterday
- proc
- 오라클
- Python
- ocjap
- 파싱
- 자바 smtp
- ocajp
- 이클립스
- php
- 문자열
- 파이썬
- xe addon
- 포인터
- C언어
- 프로씨
- KG
- MySQL
- C
- EC
- XE3
- 스크래핑
- 자바
- XE
- 인포믹스
- 플러터
- 라이믹스
- xe애드온
- webix
- JDBC
- esql
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |