예.. 회원가입보다 일단은 더 쉬운게 로그인 만들기 입니다.
오늘 만들 로그인은 단순히 애플리케이션뿐만 아니라, 웹에서도 그대로 쓸 수 있을 정도로 그 활용도가 높다고 보여지며
모든 네트워크 DB처리의 기본이라 할 수 있습니다.
(단 보안설정에 따라 더 복잡해질 수 있습니다.)
일단 오늘은 로그인초식을 배우기앞서 준비지식이 세가지 있습니다.
1. 자바에서 mysql 에 접근하기위한 jdbc설정(라이브러리 추가)
2. 이 프로그램에서는 특별히 접속커넥션관리를 위한 외부라이브러리를 씁니다. dbconnectionMGR 을 씁니다.
3. 자바 데이터베이스 접속개념을 잠시 살펴보고
로그인 실습으로 가보겠습니다.
동영상
파워포인트자료
04 자바 네트워크 from arahansa yong
1. 준비물들
다운로드 주소 http://adunhansa.tistory.com/156
1. jdbc API 추가하기
프로젝트 - properties – java build path -> libraries -> add jars
검색어 - mysql connector
2. 코넥션관리 라이브러리 - DBConnectionMgr
을 열어서 db접속 주소, 아이디, 비밀번호 설정
검색어
3. 자바 네트워크 접속 방법
connection -> preparedStatement -> (셀렉트문의 경우) ResultSet을 받아옴 -> 코넥션닫기
자세한 것은 실제 영상을 보면서 작업합니다.
소스
package test;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import assets.DBConnectionMgr;
public class LoginTest {
public static void main(String[] args) {
boolean test = loginTest("test", "1234");
System.out.println("로그인 결과 :"+test);
}
public static boolean loginTest(String id, String password) {
boolean flag = false;
DBConnectionMgr pool = DBConnectionMgr.getInstance();
Connection con = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
String sql = null;
String getPass = null;
try {
con = pool.getConnection();
// 문장생성
sql = "select password from member_test where id=?";
// 문장연결, 열차준비
pstmt = con.prepareStatement(sql);
// 빈칸채워주기
pstmt.setString(1, id);
// 실행, 열차출바알~!
rs = pstmt.executeQuery();
if (rs.next()) {
// 패스워드를 읽어온다.
getPass = rs.getString("password");
// 데이터베이스에서 읽어온 문자열과 사용자가 입력한 비밀번호가 같을 경우에는
// 참을 반환을 하겠죠?
if (getPass.equals(password)) {
System.out.println("받아온 비밀번호 : " + getPass);
flag = true;
}
}
} catch (Exception e) {
//원래 예외처리는 크게 잡으면 안되고, 따로 처리가 되어야 합니다.
e.printStackTrace();
} finally {
// 자원반납
pool.freeConnection(con, pstmt, rs);
}
// 결과값 반납
return flag;
}
}
테스트를 위해서 소스가 허점이 좀 있습니다. 예외처리나 로그인의 보안처리등등
지금은 로그인의 흐름만 알기 위한 것이므로, 개선의 여지가 있다는 것만 알아둡시다.

