엑셀 파일로 출력하기
[jun23.Excel01.java] (poi.apache.org에서 poi 5.0.0다운)
build path -> (apache)poi.5.0.0.jar, poi-ooxml.5.0.0.jar, (lib폴더)commons-math3-3.6.1.jar 라이브러리 추가 후 실행
[JXL]
https://sourceforge.net/projects/jexcelapi/files/jexcelapi/2.6.12/jexcelapi_2_6_12.zip/download
(jexcelapi 2.6.12 다운)
build path -> jxl.jar 라이브러리 추가
[SQL injection]
SELECT * FROM user WHERE id = '입력아이디' and pw = '입력pw';
일 때 id에 ' or 1=1; 입력시 뚫린다!!
DTO를 사용해 방지합시다
//DTO, 데이터 전송 객체(data transfer object, DTO)는 프로세스 간에 데이터를 전달하는 객체이다.
System.out.println("이름을 입력하세요.");
//String name = sc.next(); //이렇게 말고 로그인DTO 하나만 만들어 보내보겠습니다.
LoginDTO dto = new LoginDTO();
dto.setName(sc.next());
LoginDTO는 Getter, Setter를 이용해 값 저장
기존에 사용하던 Statement 대신 PreparedStatemen를 사용합니다
PreparedStatement pstmt = null;
String insert = "INSERT INTO login(name, id, pw, email) VALUES(?, ?, ?, ?)";
try {
pstmt = conn.prepareStatement(insert);
pstmt.setString(1, dto.getName()); //1번째 ? 자리에 파라미터값 넣기
pstmt.setString(2, dto.getId());
pstmt.setString(3, dto.getPw());
pstmt.setString(4, dto.getEmail());
pstmt.execute(); //입력한 값을 넣어주는 중요한 문장