트랜잭션, Transaction- 오라클(DBMS)에서 발생하는 1개이상의 명령어들을 하나의 논리 집합으로 묶어놓은 단위 -> 제어(통제)- 트랜잭션에 의해서 관리되는 명령어 : DML(insert, update, delete)만 포함 , 데이터에 조작을 가하는 명령어. 트랜잭션 관리- DCL의 한 종류1. commit2. rollback3. savepoint 트랜잭션 제어-하나의 트랜잭션으로 묶여있는 모든 명령어 대상 > 모든 명령어가 성공하면 트랜잭션 성공. 일부 명령어가 실패하면 트랜잭션 실패 1. 새 트랜잭션이 시작하는 경우 a.클라이언트가 접속한 직 후 b.commit 명령어를 실행한 직후 c.rollback명령어를 실행한 직후 d.ddl,dcl 명령어를 실행한 직후 2. 현재 트랜잭션이 종료하..
문자열 분리 1. String split() 객체 메소드- 정규 표현식 사용. 2. StringTokenizer 클래스 - 문자사용 StringTokenizer 클래스 String txt ="홍길동,아무개,하하하,호호호,후후후"; 콤마(,)로 구분된 문자열StringTokenizer st = new StringTokenizer(txt, ","); System.out.println(st.countTokens()); 5 그냥 토큰의 갯수라고 생각.while(st.hasMoreTokens()) {System.out.println(st.nextToken()); 하나의 토큰씩 반환}System.out.println(st.countTokens()); 0 탐색후 소비됨txt="010-4846-4538";st=new ..
정규 표현식- 정규식- 패턴에 일치하는 문자열을 검색하는 표현식. 정규 표현식 구성 요소(문법) 1. 모든 문자들 ex) "a" ->a, "test" -> test 2. 모든 문자(와일드카드) - . - wildcard(모든 문자) ex) "." -> 모든 문자를 검색 ex) "..." -> 문자3개 ex) "a.." -> a다음 문자2개 3. 없음 - 출연 횟수 : 1 ~ 1 - 생략 불가능, 중복 불가능 ex)"abc" -> abc ex) "ab?cd+e*" -> acddddeeeeeeeeeeeeeeeeeee 4. ? - 출현 횟수 : 0 ~ 1 - 생략 가능, 중복 불가능 ex)"abc" -> abc ex)"a?bc" -> bc나 abc를 찾는 표현. ex)"홍?길동" -> 안녕하세요. 홍길동입니다..
안녕하세요. 블로그를 운영하시거나 개인 웹사이트를 운영하시는 분들을 위해 오늘은 구글검색에 누락된 내 사이트를 추가하는 방법을 공유하고자 합니다. 저같은 경우는 사이트맵이나 rss, 뭐 웹마스터 도구에도 제 블로그의 내용을 수집하도록 하는 등록작업을 모두 마치긴하였지만 성격상 바로바로 수집되기를 원해서 이러한 기능을 포스팅을 할때마다 이용하는 편입니다. 방법은 지금 알려드릴게요!! 1. 포털사이트 검색창에 구글 웹마스터 도구라고 검색한다. - 그러면 Search Console이라고 하는 사이트가 있을 것입니다. - 그대로 들어가주면 기존에 이용했던 분들은 계정으로 로그인 해주시면되고, 아닌 분들은 회원가입을 해주시면 됩니다. - 로그인을 하셨으면 다음과 같은 메인화면이 나타날 것입니다. 2. 네모칸으로 ..
익명 객체 , Anonymous Object - 익명 클래스, Anonymous Class - 클래스를 정의하지 않고 객체를 정의하는 방법 > 1회용 클래스 사용 > 재사용이 불가능한 클래스(객체를 1번 만드는 용도) - 이벤트 객체, 스레드 개체, 람다식, 스트림 등에서 사용.익맹객체 만드는 방법 + 사용예시 1. 부모 클래스를 상속한 익명객체를 만드는 방법. 12345678910111213141516171819202122232425262728293031323334353637383940414243class AAA{ //부모클래스 public int a =10; public void check() { System.out.println("a : "+this.a); }}class BBB extends AAA..
Scanner - 콘솔입력기 - 편함 - 범용 입력기 - 콘솔 입력 & 파일입력 & 등... Scanner sc = new Scanner(System.in); 문자열 입력.String name = sc.nextLine(); //라인입력, 문장입력, \r\n을 만날때까지 읽어라.(enter를만날때까지 읽어들여라)System.out.println(name);숫자입력int number = sc.nextInt();System.out.println(number); 토큰name = sc.next();//토큰(token : 공백문자로 구분되어지는 요소)입력 > 공백문자를 만날때까지 읽어라.(공백문자 : 스페이스,탭,엔터)System.out.println(name); System.out.print("문자열 : ");S..
union, 유니온- 테이블을 합치는 기술- 종으로 합치기 [비교] join,조인- 테이블을 합치는 기술- 횡으로 합치기 부장과 과장테이블 합치기create table 과장as select * from tblInsa where jikwi = '과장'; --과장테이블 create table 부장as select * from tblInsa where jikwi = '부장'; --부장테이블 select * from 과장; --8명select * from 부장; --6명 구조가 같은 두개이상의 테이블을 하나로 합친다. select * from 과장unionselect * from 부장; >>구조가 같았기때문에 가능한것입니다. 구조가 다른경우(구조라는것은 컬럼명, 데이터형이 같아야 한다는 것입니다.)--ORA-0..
안녕하세요. 오늘 공유할 내용은 Spring mybatis에서 사용하는 #{} 문법과 ${} 문법의 차이와 ${}문법을 사용했을때 발생할 수 있는 SQL Injection이라는 해킹 방법에 대하여 내용을 공유하고자 합니다. 먼저 Spring이란 웹개발을 할때 기업에서 주로 사용하는 프레임워크로 전자정부 프레임워크로 지정되어 사용되는 우리나라에서 개발하는 사람들은 대부분 거쳤을 만큼 대중적인 프레임워크입니다. 그중에서 JDBC를 사용하여 DB와 연동하는 것으로 MyBatis라는 라이브러리를 사용하게 됩니다. 그중에서 VO나 DTO를 매개변수로 하여금 데이터의 이동을 하게하는데요. 그 기능으로 $와 #문법이 있습니다. 즉, VO에 name이라는 변수가 있고 getter가 getName()이라는 메소드로 되어..