본문 바로가기

분류 전체보기365

JAVA 44일차 (2023-07-24) 자바 프로그래밍_49. 로그인 적용하기_개인프로젝트 - 마트 관리 시스템 ## 49. 로그인 적용하기 - 로그인을 구현하는 방법 - 로그인 정보를 가지고 관련 데이터를 다루는 방법 ㄴ MemberAddListener.java 파일을 복사하여 LoginListener 라는 이름의 클래스를 생성함 ddl2.sql ㄴ member 테이블에 phone 컬럼을 unique key 로 설정하기 => 전화번호로 로그인을 하기 위함 ㄴ ddl2.sql 에 따라 테이블 구조를 변경함 ㄴ phone 컬럼이 unique key 로 설정됨을 확인할 수 있음 LoginListener.java ㄴ 이름 받는 부분을 제거 => 전화번호를 이용하여 로그인 하기 때문 LoginListener.java ㄴ 관리자와 일반직원 구분을 입력받을 필요 없으므로 제거 LoginListener.java ㄴ 전화번호와 .. 2023. 7. 24.
JAVA 44일차 (2023-07-24) 자바 프로그래밍_48. 외부키(Foreign Key) 사용하기_개인프로젝트 - 마트 관리 시스템 ## 48. 외부키(Foreign Key) 사용하기 - 외부키를 설정하고 사용하는 법 - 조인을 이용하여 외부 테이블의 값을 가져오는 방법 ㄴ ddl.sql 을 복사하여 ddl2.sql 생성 ddl2.sql ㄴ writer 를 int 타입으로 변경 ddl2.sql ㄴ 해당 코드 제거 후 아래처럼 테이블 내에 category 를 추가해줌 ddl2.sql ㄴ category 컬럼을 추가 ddl2.sql ㄴ 게시판 작성자에 대해 외부키 설정 ㄴ 존재하는 테이블 삭제 => 테이블 재생성 ㄴ report_board 테이블 생성 ㄴ report_member 테이블 생성 ㄴ 게시판 작성자에 대해 외부키 설정해주기 생성한 테이블 확인 ㄴdata.sql 복사하여 data2.sql 생성 data2.sql ㄴ 암호는 sha.. 2023. 7. 24.
JAVA 44일차 (2023-07-24) 자바 프로그래밍_47. SQL 삽입 공격 차단하기_개인프로젝트 - 마트 관리 시스템 ## 47. SQL 삽입 공격 차단하기 - SQL 삽입 공격의 원리 이해 - PreparedStatement 사용법 - 테이블에 암호를 저장하는 방법: SHA1() 함수 사용법 PreparedStatement 사용법 MySQLMemberDao.java ㄴ PreparedStatement 이용하기 ㄴ SQL 문을 prepareStatement 에 넣어줌 MySQLMemberDao.java ㄴ setXxx() 할 때 번호는 0부터가 아닌 1부터 시작임 => ㄴ executeUpdate() 안에는 이제 아무것도 안 넣어도 됨 MySQLMemberDao.java ㄴ list 메서드도 insert 메서드와 동일하게 작업해주기 => 입력은 받지 않으므로 in-parameter 인 ? 와 executeUpdate 메.. 2023. 7. 24.
JAVA 44일차 (2023-07-24) 자바 프로그래밍_JDBC 프로그래밍_PreparedStatement 사용법 - 자바 프로그래밍 - JDBC 프로그래밍(com.eomcs.jdbc) - PreparedStatement 사용법 MySQL 에 root 계정으로 접속하기 사용자 목록 확인 원격에서만 접속할 수 있는 사용자 추가 원격에서만 접속할 수 있는 사용자를 만들기: > CREATE USER '사용자명'@'%' IDENTIFIED BY '비밀번호'; => 이 경우 study 사용자는 원격에서만 접속 가능하다. MySQL 사용자에게 데이터베이스 사용 권한 부여 GRANT ALL ON 데이터베이스명.* TO '사용자아이디'@'서버주소'; ㄴ studydb 데이터베이스에 대한 모든 권한을 부여함 생성한 원격 접속이 가능한 사용자로 로그인 기본으로 사용할 테이블 설정 Statement 와 SQL 삽입 공격 jdbc_ex3.. 2023. 7. 24.
JAVA 44일차 (2023-07-24) 자바 프로그래밍_46. DBMS 도입하기_MySQLBoardDao_개인프로젝트 - 마트 관리 시스템 ## 46. DBMS 도입하기 - DBMS 설치 및 사용법 - SQL 및 JDBC Driver 개념과 사용법 - 회원 및 게시판 테이블 정의 및 예제 데이터 입력 SQL 준비 - DBMS와 연동하여 작업하는 DAO 구현 ClientApp.java ㄴ Create constructor 'MySQLBoardDao(Connection)' 선택하여 MySQLBoardDao 클래스에 생성자 만들어두기 => MySQLBoardDao.java Board.java ㄴ Board 클래스의 category 필드 추가 ㄴ category 필드의 getter/setter 추가 MySQLBoardDao.java ㄴ MySQLMemberDao 클래스에서 insert 메서드 내용 복사해와서 수정하기 => ClientApp.java.. 2023. 7. 24.
JAVA 43일차 (2023-07-21) 자바 프로그래밍_46. DBMS 도입하기_MySQLMemberDao__개인프로젝트 - 마트 관리 시스템 ## 46. DBMS 도입하기 - DBMS 설치 및 사용법 - SQL 및 JDBC Driver 개념과 사용법 - 회원 및 게시판 테이블 정의 및 예제 데이터 입력 SQL 준비 - DBMS와 연동하여 작업하는 DAO 구현 ㄴ doc 이라는 이름의 폴더를 생성 ㄴ ddl 이라는 이름의 sql 파일을 생성 ddl.sql ㄴ report_board 테이블을 생성 ㄴ board_no 를 primary_key 로 추가 ㄴ auto_increment 설정 터미널 이용하여 테이블 생성 ddl.sql ㄴ report_member 테이블을 생성 ㄴ member_no 를 primary_key 로 추가 ㄴ auto_increment 설정 터미널 이용하여 테이블 생성 ㄴ report-common 프로젝트에 있는 AutoIncr.. 2023. 7. 21.