본문 바로가기

Java24

[Java]트랜잭션(transaction) 트랜잭션이란 하나의 작업 처리 단위이다. 트랜잭션의 특징 원자성(Atomicity) 일관성(Consistency) 독립성(Isolation) 지속성(Durability) 첫번째로, 원자성은 트랜잭션이 데이터베이스에 모두 반영되던가, 아니면 전혀 반영되지 않아야 한다는 것이다. 두번째로, 일관성은 트랜잭션의 작업 처리 결과가 항상 일관성이 있어야 한다는 것이다. 세번째로, 독립성은 둘 이상의 트랜잭션이 동시에 실행되고 있을 경우 어떤 하나의 트랜잭션이라도, 다른 트랜잭션의 연산에 끼어들 수 없다는 점을 가리킨다. 네번째로, 지속성은 트랜잭션이 성공적으로 완료됬을 경우, 결과는 영구적으로 반영되어야 한다는 점이다. Rollback,Commit Commit이란 하나의 트랜잭션이 성공적으로 끝났고, 데이터베이스.. 2022. 8. 17.
[Java]smtp를 이용하여 gmail 보내기 smtp란? simple mail transfer protocol의 약어. 인터넷상에서 전자 메일을 전송할 때 쓰이는 표준적인 프로토콜이다. 메일을 보내기 전에 구글 계정의 설정이 필요하다. 구글 계정 설정에서 2단계 인증을 사용한 뒤 앱 비밀번호를 받아야한다. 앱 비밀번호를 발급하면 최종적으로 아래와 같은 화면이 나온다. 화면의 16자리를 저장하여 보관하도록하자. 추가적으로 mail.jar 파일이 필요하다. 두 개의 jar 파일을 WEB-INF 폴더안에 lib 폴더 안쪽으로 넣어주어야한다. 다음으로는 코드를 살펴보자. 코드는 인증과 발송 두 가지로 나누어져있다. 인증부분 코드이다. 발송 코드이다. 해당 형식으로 이메일을 보낼 수 있다. 테스트 이메일을 보내보도록 하자. 제대로 메일을 송신하고 수신한 것.. 2022. 8. 3.
[Error]Could not connect to New Oracle JDBC를 사용할 때, Oracle이 연동되지 않아 생기는 오류이다. 윈도우 검색창에 '서비스'를 검색 해당 창에서 스크롤을 내리다보면 사진과 같이 OracleServiceXE와 OracleXETNSListener를 찾을 수 있다. 이 두개의 서비스를 재시작해주면 해당 오류를 해결할 수 있다. 2022. 7. 15.
[Java]웹 크롤링 웹 크롤링이란? 웹사이트(website), 하이퍼링크(hyperlink), 데이터(data), 정보 자원을 자동화된 방법으로 수집, 분류, 저장하는 것. 출처-네이버 지식백과 웹 페이지에서 F12를 누르면 개발자 도구를 들어갈 수 있다. 해당 웹의 정보자원을 확인할 수 있는 방법이다. Java에서 Jsoup을 이용하여 웹 크롤링을 할 것이다. 우선은 빌드패스를 통해 jsoup.jar파일을 추가해 주어야 한다. 추가해주면 jsoup의 import가 가능해지며 웹 크롤링을 할 수 있는 조건이 완성된다. Jsoup을 connect하기 위해서는 크롤링을 할 웹 주소가 필요하다. connect() 안에 직접 url을 담아도 되지만 url은 변수에 담아서 사용하는것이 보편적이다. Jsoup.connect().get.. 2022. 7. 13.
[Java]PreparedStatement(executeQuery,ececuteUpdate) PreparedStatement 향상된 버전의 Statement로 기존의 Statement를 이용하여 자바와 DB를 연동하여 입출력을 받을 때, 일단 Statement형 변수를 선언하여 입력때 마다 executeQuery()를 이용하여 칼럼값을 적어줘야하는 번거로움이 있었다. 사진과 같이 SQL문의 문법을 맞추기 위해 변수 사이사이에 , 와 '를 입력하기위해 문자열이 추가되기때문에 가독성도 좋지않고 오입력의 가능성이 크다. 다음은 PreparedStatement를 살펴보자. 입력받을 칼럼값 자리를 '?' 로 적어두고 변수에 저장해두었다. Statement와는 다르게 CreateStatement()가 아닌 prepareStatement()를 호출하며, 인자가 존재한다. 해당 인자는 SQL문을 인자로 받는다.. 2022. 7. 5.
[Java]JDBC [JDBC] 자바 프로그램 안에서 SQL을 실행하기 위한 데이터베이스를 연결해주는 응용프로그램 인터페이스 1. DBMS와 연동을 하기위한 드라이버가 필요 1-1) DBMS에 해당하는 드라이버 파일을 갖고있는가 1-2) 파일 데이터를 JAVA에 적재(LOAD)했는가 .jar의 데이터를 JAVA에 load하는 방법 DB별 드라이버 이름이 다르다. DBMS별 JDBC driver명, URL 형식 : 네이버 블로그 (naver.com) 해당 블로그에서 DBMS별 드라이버 명 확인가능. 드라이버 명을 변수에 저장하여 쓰는것이 더욱 편리하다. 2. DB에 연결 DriverManager.getConnection을 이용하여 DB에 연결하고 Statement()를 생성한다. 이 두 과정을 진행할때 나중에 DB와의 연결을.. 2022. 7. 4.