Main
Main
package Main;
import GUI.Login;
public class Main {
public static void main(String[] args) {
new Login();
}
}
DTO
film
package DTO;
import java.util.Date;
public class film {
private String f_no;
private String f_name;
private String f_sline;
private String f_oday;
private String f_rated;
private String f_rtime;
public String getF_no() {
return f_no;
}
public void setF_no(String f_no) {
this.f_no = f_no;
}
public String getF_name() {
return f_name;
}
public void setF_name(String f_name) {
this.f_name = f_name;
}
public String getF_sline() {
return f_sline;
}
public void setF_slind(String f_sline) {
this.f_sline = f_sline;
}
public String getF_oday() {
return f_oday;
}
public void setF_oday(String f_oday) {
this.f_oday = f_oday;
}
public String getF_rated() {
return f_rated;
}
public void setF_rated(String f_rated) {
this.f_rated = f_rated;
}
public String getF_rtime() {
return f_rtime;
}
public void setF_rtime(String f_rtime) {
this.f_rtime = f_rtime;
}
public void prt() {
System.out.println("고유번호 : " + f_no);
System.out.println("이름 : " + f_name);
System.out.println("줄거리 : " + f_sline);
System.out.println("개봉일 : " + f_oday);
System.out.println("관람가 : " + f_rated);
System.out.println("러닝타임 : " + f_rtime);
}
}
Manager
package DTO;
public class manager {
private String g_id;
private String g_pass;
private String g_name;
private String g_rank;
public String getG_id() {
return g_id;
}
public void setG_id(String g_id) {
this.g_id = g_id;
}
public String getG_pass() {
return g_pass;
}
public void setG_pass(String g_pass) {
this.g_pass = g_pass;
}
public String getG_name() {
return g_name;
}
public void setG_name(String g_name) {
this.g_name = g_name;
}
public String getG_rank() {
return g_rank;
}
public void setG_rank(String g_rank) {
this.g_rank = g_rank;
}
public void prt() {
System.out.println("직원 id : "+g_id);
System.out.println("직원 비밀번호 : "+g_pass);
System.out.println("직원 이름 : "+g_name);
System.out.println("직원 직급 : "+g_rank);
}
}
member
package DTO;
public class member {
private String m_id;
private String m_pass;
private String m_name;
private String m_addr;
private String m_pnum;
private int logcheck;
public int getLogcheck() {
return logcheck;
}
public void setLogcheck(int logcheck) {
this.logcheck = logcheck;
}
public String getM_id() {
return m_id;
}
public void setM_id(String m_id) {
this.m_id = m_id;
}
public String getM_pass() {
return m_pass;
}
public void setM_pass(String m_pass) {
this.m_pass = m_pass;
}
public String getM_name() {
return m_name;
}
public void setM_name(String m_name) {
this.m_name = m_name;
}
public String getM_addr() {
return m_addr;
}
public void setM_addr(String m_addr) {
this.m_addr = m_addr;
}
public String getM_pnum() {
return m_pnum;
}
public void setM_pnum(String m_pnum) {
this.m_pnum = m_pnum;
}
public void prt() {
System.out.println("아이디 : " + m_id);
System.out.println("비밀번호 : " + m_pass);
System.out.println("이름 : " + m_name);
System.out.println("주소 : " + m_addr);
System.out.println("핸드폰번호 : " + m_pnum);
}
}
Moviinfo
package DTO;
public class moviInfo {
private int t_no;
private String f_name;
private String t_theater;
private String seat;
public String getF_name() {
return f_name;
}
public void setF_name(String f_name) {
this.f_name = f_name;
}
public String getT_theater() {
return t_theater;
}
public void setT_theater(String t_theater) {
this.t_theater = t_theater;
}
public String getSeat() {
return seat;
}
public void setSeat(String seat) {
this.seat = seat;
}
public int getT_no() {
return t_no;
}
public void setT_no(int t_no) {
this.t_no = t_no;
}
public void prt() {
System.out.println("영화 제목 : " + f_name);
System.out.println("상영관 : " + t_theater);
System.out.println("좌석 : " + seat);
}
}
Ticketing
package DTO;
public class ticketing {
private int t_no;
private String t_theater;
private String m_id;
private String f_no;
private String f_name;
private String seat;
public String getF_name() {
return f_name;
}
public void setF_name(String f_name) {
this.f_name = f_name;
}
public String getSeat() {
return seat;
}
public void setSeat(String seat) {
this.seat = seat;
}
public int getT_no() {
return t_no;
}
public void setT_no(int t_no) {
this.t_no = t_no;
}
public String getT_theater() {
return t_theater;
}
public void setT_theater(String t_theater) {
this.t_theater = t_theater;
}
public String getM_id() {
return m_id;
}
public void setM_id(String m_id) {
this.m_id = m_id;
}
public String getF_no() {
return f_no;
}
public void setF_no(String f_no) {
this.f_no = f_no;
}
public void prt() {
System.out.println("예매 번호 : " + t_no);
System.out.println("상영관 : " + t_theater);
System.out.println("고객 아이디 : " + m_id);
System.out.println("영화 고유번호: " + f_no);
System.out.println("영화 제목 : " + f_name);
System.out.println("좌석 위치 : " + seat);
}
}
DAO
DAO(슈퍼클래스)
package DAO;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import DTO.member;
public abstract class DAO {
protected Connection conn = null;
protected ResultSet rs = null;
public void DAO() {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
System.out.println("로드 성공");
} catch (ClassNotFoundException e) {
System.out.println("로드 실패");
}
}
public boolean connect() { //
try {
conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", "yeyeongs", "11111111");
System.out.println("연결성공");
return true;
} catch (SQLException e) {
System.out.println("연결실패");
return false;
}
}
}
filmDAO
package DAO;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.Random;
import DTO.film;
public class filmDAO extends DAO {
film f = null;
ArrayList<film> fList = null;
public filmDAO() {
super.DAO();
}
public String Rword() {
String num;
Random Rword=new Random();
StringBuffer b =new StringBuffer();
for(int i=0;i<6;i++){
if(Rword.nextBoolean()) {
b.append((char)(Rword.nextInt(26)+65));
}else {
b.append(Rword.nextInt(10));
}
}
num=b.toString();
return num;
}
public void mod(film f) {
if (super.connect()) {
String sql = "update film set f_name = ?, f_sline = ?, f_oday = ?, f_rated = ?, f_rtime = ? where f_no = ? ";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, f.getF_name());
psmt.setString(2, f.getF_sline());
psmt.setString(3, f.getF_oday());
psmt.setString(4, f.getF_rated());
psmt.setString(5, f.getF_rtime());
psmt.setString(6, f.getF_no());
int r = psmt.executeUpdate();
System.out.println(r + "건이 수정");
super.conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public ArrayList<film> listName() {
fList = new ArrayList<>();
if (super.connect()) {
String sql = "select f_no,f_name from film";
try {
Statement psmt = super.conn.createStatement();
rs = psmt.executeQuery(sql);
while (rs.next()) {
f = new film();
f.setF_no(rs.getString("f_no"));
f.setF_name(rs.getString("f_name"));
fList.add(f);
}
super.conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return fList;
}
public ArrayList<film> openDaay() {
fList = new ArrayList<>();
if (super.connect()) {
String sql = "select f_oday from film where f_no =?";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, f.getF_no());
rs = psmt.executeQuery();
while (rs.next()) {
f = new film();
f.setF_oday(rs.getString("f_oday"));
fList.add(f);
}
super.conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return fList;
}
public ArrayList<film> list() {
fList = new ArrayList<>();
if (super.connect()) {
String sql = "select * from film";
try {
Statement psmt = super.conn.createStatement();
rs = psmt.executeQuery(sql);
while (rs.next()) {
f = new film();
f.setF_no(rs.getString("f_no"));
f.setF_name(rs.getString("f_name"));
f.setF_slind(rs.getString("f_sline"));
f.setF_oday(rs.getString("f_oday"));
f.setF_rated(rs.getString("f_rated"));
f.setF_rtime(rs.getString("f_rtime"));
fList.add(f);
}
super.conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return fList;
}
public void insert(film f) {
if (super.connect()) {
String sql = "insert into film values(?,?,?,?,?,?)";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, Rword());
psmt.setString(2, f.getF_name());
psmt.setString(3, f.getF_sline());
psmt.setString(4, f.getF_oday());
psmt.setString(5, f.getF_rated());
psmt.setString(6, f.getF_rtime());
int r = psmt.executeUpdate();
System.out.println(r + "건이 완료");
super.conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public void delete(String s) {
if (super.connect()) {
String sql = "delete from film where f_no =?";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, s);
int r = psmt.executeUpdate();
System.out.println(r + "건이 삭제 완료");
super.conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public void delticket(String id,int num) {
if (super.connect()) {
String sql = "delete from ticketing where f_no =? and t_no = ? ";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, id);
psmt.setInt(2, num);
int r = psmt.executeUpdate();
System.out.println(r + "건이 삭제 완료");
super.conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public film listF(String f_no) {
if (super.connect()) {
String sql = "select *from film where f_no = ? ";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, f_no);
rs=psmt.executeQuery();
while(rs.next()) {
f.setF_no(rs.getString("f_no"));
f.setF_name(rs.getString("f_name"));
f.setF_slind(rs.getString("f_sline"));
f.setF_oday(rs.getString("f_oday"));
f.setF_rated(rs.getString("f_rated"));
f.setF_rtime(rs.getString("f_rtime"));
}
super.conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}return f;
}
}
memberDAO
package DAO;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Statement;
import DTO.member;
public class memberDAO extends DAO {
member m = null;
public memberDAO() {
super.DAO();
}
public void insert(member m) {
if (super.connect()) {
String sql = "insert into member values (?,?,?,?,?,default)";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, m.getM_id());
psmt.setString(2, m.getM_pass());
psmt.setString(3, m.getM_name());
psmt.setString(4, m.getM_addr());
psmt.setString(5, m.getM_pnum());
int r = psmt.executeUpdate();
System.out.println(r + "건이 완료");
super.conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public void delete(String id,String pass) {
if (super.connect()) {
String sql = "delete from member where m_id = ? and m_pass =?";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, id);
psmt.setString(2, pass);
int r = psmt.executeUpdate();
System.out.println(r + "건이 완료");
super.conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public int chack(String id) {
if (super.connect()) {
String sql = "select count(*) cnt from member where m_id = ? ";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, id);
rs = psmt.executeQuery();
if (rs.next()) {
int cnt = rs.getInt("cnt");
return cnt;
}
super.conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return 0;
}
public void list(String id, String pass) {
if (super.connect()) {
String sql = "select * from member where m_id=? and m_pass=? ";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, id);
psmt.setString(2, pass);
rs = psmt.executeQuery();
while (rs.next()) {
m = new member();
m.setM_id(rs.getString("m_id"));
m.setM_pass(rs.getString("m_pass"));
m.setM_name(rs.getString("m_name"));
m.setM_addr(rs.getString("m_addr"));
m.setM_pnum(rs.getString("m_pnum"));
}
super.conn.close();
} catch (SQLException e) {
System.out.println("잘못 입력하셨습니다");
}
}
}
public void update(member m) {
if (super.connect()) {
String sql = "update member set m_name = ?, m_addr = ?, m_pnum = ?, logcheck='1' where m_id = ? and m_pass = ?";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, m.getM_name());
psmt.setString(2, m.getM_addr());
psmt.setString(3, m.getM_pnum());
psmt.setString(4, m.getM_id());
psmt.setString(5, m.getM_pass());
int r = psmt.executeUpdate();
System.out.println(r + "건이 완료");
super.conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public boolean logChack(member m) {
boolean flag = false;
if (super.connect()) {
String sql = "select * from member where m_id = ? and m_pass = ?";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, m.getM_id());
psmt.setString(2, m.getM_pass());
rs = psmt.executeQuery();
flag = rs.isBeforeFirst();
System.out.println(flag);
super.conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return flag;
}
public void log(String id) {
if (super.connect()) {
String sql = "update member set logcheck ='1' where m_id = ?";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1,id);
psmt.execute();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public void logout() {
if (super.connect()) {
String sql = "update member set logcheck ='0'";
try {
Statement smt = super.conn.createStatement();
rs = smt.executeQuery(sql);
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public String userC() {
String id=null;
if (super.connect()) {
String sql = "select m_id from member where logcheck = '1'";
try {
Statement smt = super.conn.createStatement();
rs = smt.executeQuery(sql);
if(rs.next()) {
id = rs.getString("m_id");
}
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
return id;
}
}
MoviMDAO
package DAO;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import DTO.manager;
public class MoviMDAO extends DAO {
ArrayList<manager> mList = null;
manager m = null;
public MoviMDAO() {
super.DAO();
}
public ArrayList<manager> managerList() {
mList = new ArrayList<>();
if (super.connect()) {
String sql = "select * from manager";
try {
Statement psmt = super.conn.createStatement();
rs = psmt.executeQuery(sql);
while (rs.next()) {
m = new manager();
m.setG_id(rs.getString("g_id"));
m.setG_pass(rs.getString("g_pass"));
m.setG_name(rs.getString("g_name"));
m.setG_rank(rs.getString("g_rank"));
mList.add(m);
}
super.conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return mList;
}
public boolean managerCheck(manager m) {
boolean flag = false;
if (super.connect()) {
String sql = "select * from manager where g_id = ? and g_pass = ?";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, m.getG_id());
psmt.setString(2, m.getG_pass());
rs = psmt.executeQuery();
flag = rs.isBeforeFirst();
System.out.println(flag);
super.conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return flag;
}
}
TicketingDAO
package DAO;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import DTO.film;
import DTO.ticketing;
public class ticketingDAO extends DAO {
ticketing t = null;
ArrayList<ticketing> tlist = null;
public ticketingDAO() {
super.DAO();
}
public ArrayList<ticketing> listT() {
tlist = new ArrayList<>();
if (super.connect()) {
String sql = "select * from ticketing";
try {
Statement psmt = super.conn.createStatement();
rs = psmt.executeQuery(sql);
while (rs.next()) {
t = new ticketing();
t.setT_no(rs.getInt("t_no"));
t.setT_theater(rs.getString("t_theater"));
t.setM_id(rs.getString("m_id"));
t.setF_no(rs.getString("f_no"));
t.setSeat(rs.getString("seat"));
tlist.add(t);
}
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
return tlist;
}
public ArrayList<ticketing> numList(String id) {
tlist = new ArrayList<>();
if (super.connect()) {
String sql = "select * from ticketing where m_id = ?";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, id);
rs=psmt.executeQuery();
while (rs.next()) {
t = new ticketing();
t.setT_no(rs.getInt("t_no"));
t.setT_theater(rs.getString("t_theater"));
t.setM_id(rs.getString("m_id"));
t.setF_no(rs.getString("f_no"));
t.setSeat(rs.getString("seat"));
tlist.add(t);
}
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
return tlist;
}
public void insert(ticketing t) {
if (super.connect()) {
String sql = "insert into ticketing values (auto_num.nextval,?,?,?,?)";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, t.getT_theater());
psmt.setString(2, t.getM_id());
psmt.setString(3, t.getF_no());
psmt.setString(4, t.getSeat());
int r = psmt.executeUpdate();
System.out.println(r + "건이 완료");
super.conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public void modT(String id, int num) {
if (super.connect()) {
String sql = "update ticketing set t_theater = ?,f_no = ? , seat = ?where m_id = ? and t_no = ? ";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, t.getT_theater());
psmt.setString(2, t.getF_no());
psmt.setString(3, t.getSeat());
psmt.setString(4, id);
psmt.setInt(5, num);
int r = psmt.executeUpdate();
System.out.println(r + "건이 수정");
super.conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public void delete(String id, int num) {
if (super.connect()) {
String sql = "delete from ticketing where m_id =?,t_no=? ";
try {
PreparedStatement psmt = super.conn.prepareStatement(sql);
psmt.setString(1, id);
psmt.setInt(2, num);
int r = psmt.executeUpdate();
System.out.println(r + "건이 삭제");
super.conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public ArrayList<ticketing> seatcheck(String f_no,String theater) {
tlist = new ArrayList<>();
if (super.connect()) {
String sql = "select seat from ticketing where f_no = ? and t_theater = ?";
try {
PreparedStatement psmt = conn.prepareStatement(sql);
psmt.setString(1, f_no);
psmt.setString(2, theater);
rs = psmt.executeQuery();
while (rs.next()) {
t=new ticketing();
t.setSeat(rs.getString("seat"));
tlist.add(t);
}
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return tlist;
}
public ticketing moviCode(String name) {
if (super.connect()) {
String sql = "select f_no from film where f_name=?";
try {
PreparedStatement psmt = conn.prepareStatement(sql);
psmt.setString(1, name);
rs = psmt.executeQuery();
if (rs.next()) {
t = new ticketing();
t.setF_no(rs.getString("f_no"));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return t;
}
public ticketing moviName(String f_no) {
if (super.connect()) {
String sql = "select f_name from film where f_no = ?";
try {
PreparedStatement psmt = conn.prepareStatement(sql);
psmt.setString(1, f_no);
rs = psmt.executeQuery();
if (rs.next()) {
t = new ticketing();
t.setF_name(rs.getString("f_name"));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return t;
}
public ticketing ticketnum(String id) {
if (super.connect()) {
String sql = "select * from ticketing where m_id=?";
try {
PreparedStatement psmt = conn.prepareStatement(sql);
psmt.setString(1, id);
rs = psmt.executeQuery();
if (rs.next()) {
t = new ticketing();
t.setT_no(rs.getInt("t_no"));
t.setSeat(rs.getString("seat"));
t.setT_theater(rs.getString("t_theater"));
t.setF_no(rs.getString("f_no"));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return t;
}
public ticketing ticketNo(int num) {
t = new ticketing();
if (super.connect()) {
String sql1 = "select * from ticketing where t_no=?";
String sql2 = "select f_name from film where f_no = ?";
try {
PreparedStatement psmt = conn.prepareStatement(sql1);
psmt.setInt(1, num);
rs = psmt.executeQuery();
if (rs.next()) {
t.setT_no(rs.getInt("t_no"));
t.setSeat(rs.getString("seat"));
t.setT_theater(rs.getString("t_theater"));
t.setF_no(rs.getString("f_no"));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
PreparedStatement psmt = conn.prepareStatement(sql2);
psmt.setString(1, t.getF_no());
rs=psmt.executeQuery();
if(rs.next()) {
t.setF_name(rs.getString("f_name"));
}
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
t.prt();
}
return t;
}
}
GUI
Login
package GUI;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import DAO.MoviMDAO;
import DAO.memberDAO;
import DTO.manager;
import DTO.member;
public class Login extends JFrame implements ActionListener {
Newjoin Newjoin = new Newjoin();
MoviADM MoviADM = new MoviADM();
memberDAO mDAO=new memberDAO();
MoviMDAO MDAO=new MoviMDAO();
manager MG=null;
member m = null;
JLabel mainLB = new JLabel("로그인");
JLabel idLB = new JLabel(" I D ");
JLabel passLB = new JLabel("비밀 번호");
JTextField idT = new JTextField(10);
JTextField passT = new JTextField(10);
JPanel mainP = new JPanel();
JPanel P1 = new JPanel();
JPanel P2 = new JPanel();
JPanel buttonP = new JPanel();
JButton adm = new JButton(" 관 리 자 ");
JButton log = new JButton(" 로 그 인 ");
JButton joinbtn = new JButton(" 신규 가입 ");
public Login() {
this.setBounds(100, 100, 320, 180);
this.setTitle("예영's");
mainP.setLayout(new GridLayout(2, 1));
mainP.add(P1);
mainP.add(P2);
P1.add(idLB);
P1.add(idT);
P2.add(passLB);
P2.add(passT);
buttonP.add(adm);
buttonP.add(log);
buttonP.add(joinbtn);
this.add(mainLB, "North");
this.add(mainP, "Center");
this.add(buttonP, "South");
log.addActionListener(this);
adm.addActionListener(this);
joinbtn.addActionListener(this);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
viewFrame();
}
@Override
public void actionPerformed(ActionEvent e) {
Object o = e.getSource();
if (o.equals(log)) {
m=new member();
String id=idT.getText();
String pass=passT.getText();
m.setM_id(id);
m.setM_pass(pass);
if(mDAO.logChack(m)) {
mDAO.log(id);
new Basic();
closeFrame();
}else {
JOptionPane.showMessageDialog(null,"잘못된 로그인입니다");
idT.setText("");
passT.setText("");
}
} else if (o.equals(adm)) {
MG=new manager();
String id=idT.getText();
String pass=passT.getText();
MG.setG_id(id);
MG.setG_pass(pass);
if(MDAO.managerCheck(MG)) {
MoviADM.viewFrame();
closeFrame();
}else {
JOptionPane.showMessageDialog(null,"잘못된 로그인입니다");
idT.setText("");
passT.setText("");
}
}else if (o.equals(joinbtn)) {
Newjoin.viewFrame();
closeFrame();
}
}
public void viewFrame() {
this.setVisible(true);
}
public void closeFrame() {
this.setVisible(false);
}
}
Basic
package GUI;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import DAO.memberDAO;
import DTO.member;
public class Basic extends JFrame implements ActionListener,WindowListener{
Reservayion Resrvayion =new Reservayion();
Ticketing Ticketing =new Ticketing();
Myinfo Myinfo=new Myinfo();
member m =new member();
ImageIcon drow1 = new ImageIcon(Reservayion.class.getResource("/Image/아담.jpg"));
ImageIcon pdrow1 = pixel(drow1);
ImageIcon drow2 = new ImageIcon(Reservayion.class.getResource("/Image/에브리싱.jpg"));
ImageIcon pdrow2 = pixel(drow2);
ImageIcon drow3 = new ImageIcon(Reservayion.class.getResource("/Image/짱구 극자ㅇ판.jpg"));
ImageIcon pdrow3 = pixel(drow3);
ImageIcon g = new ImageIcon(Reservayion.class.getResource("/spectator/g.png"));
ImageIcon gdrow1 = Greny(g);
ImageIcon pg = new ImageIcon(Reservayion.class.getResource("/spectator/pg.png"));
ImageIcon gdrow2 = Greny(pg);
ImageIcon pg15 = new ImageIcon(Reservayion.class.getResource("/spectator/pg15.png"));
ImageIcon gdrow3 = Greny(pg15);
ImageIcon x = new ImageIcon(Reservayion.class.getResource("/spectator/x.png"));
ImageIcon gdrow4 = Greny(x);
// 초기 화면
JPanel northP = new JPanel();
JPanel centerP = new JPanel();
JPanel centerPN = new JPanel();
JPanel centerPC = new JPanel();
JPanel centerPC1 = new JPanel();
JPanel centerPC2 = new JPanel();
JPanel centerPC3 = new JPanel();
JButton listbtn = new JButton("영화 전채보기");
JButton tiketbtn = new JButton(" 예 매 ");
JButton tiketbtn1 = new JButton(" 예 매 ");
JButton tiketbtn2 = new JButton(" 예 매 ");
JButton tiketbtn3 = new JButton(" 예 매 ");
JButton infor = new JButton(" 내 정보 ");
JLabel sugLB = new JLabel("추천 영화");
JLabel Drow1 = new JLabel(pdrow1);
JLabel Drow2 = new JLabel(pdrow2);
JLabel Drow3 = new JLabel(pdrow3);
JLabel Drow4 = new JLabel(pdrow3);
JLabel G = new JLabel(gdrow1);
JLabel PG = new JLabel(gdrow2);
JLabel PG15 = new JLabel(gdrow3);
JLabel X = new JLabel(gdrow4);
JPanel PCS1 = new JPanel();
JPanel PCS2 = new JPanel();
JPanel PCS3 = new JPanel();
public ImageIcon pixel(ImageIcon i) {
Image img = i.getImage();
Image updateImg = img.getScaledInstance(200, 300, Image.SCALE_SMOOTH);
ImageIcon Icon = new ImageIcon(updateImg);
return Icon;
}
public ImageIcon Greny(ImageIcon i) {
Image img = i.getImage();
Image updateImg = img.getScaledInstance(45, 45, Image.SCALE_SMOOTH);
ImageIcon Icon = new ImageIcon(updateImg);
return Icon;
}
public Basic() {
northP.setBackground(new Color(89, 84, 81));
centerP.setBackground(new Color(115, 110, 108));
centerPC.setBackground(new Color(64, 59, 56));
centerPN.setBackground(new Color(64, 59, 56));
centerPC1.setBackground(Color.black);
centerPC2.setBackground(Color.BLACK);
centerPC3.setBackground(Color.black);
sugLB.setForeground(Color.WHITE);
PCS1.setBackground(new Color(165,166,161));
PCS2.setBackground(new Color(165,166,161));
PCS3.setBackground(new Color(165,166,161));
sugLB.setFont(new Font("Courier", Font.BOLD, 20));
centerP.setLayout(new BorderLayout());
centerPC1.setLayout(new BorderLayout());
PCS1.setLayout(new FlowLayout());
centerPC2.setLayout(new BorderLayout());
centerPC3.setLayout(new BorderLayout());
this.setBounds(100, 100, 800, 500);
this.setTitle("예영's");
northP.add(listbtn);
northP.add(tiketbtn);
northP.add(infor);
centerP.add(centerPN, "North");
centerPN.add(sugLB);
centerP.add(centerPC, "Center");
centerPC.add(centerPC1);
centerPC.add(centerPC2);
centerPC.add(centerPC3);
centerPC1.add(Drow1, "Center");
centerPC1.add(PCS1, "South");
PCS1.add(PG);
PCS1.add(tiketbtn1);
centerPC2.add(Drow2, "Center");
centerPC2.add(PCS2, "South");
PCS2.add(PG15);
PCS2.add(tiketbtn2);
centerPC3.add(Drow3, "Center");
centerPC3.add(PCS3, "South");
PCS3.add(G);
PCS3.add(tiketbtn3);
this.setVisible(true);
this.addWindowListener(this);
this.add(northP, "North");
this.add(centerP, "Center");
listbtn.addActionListener(this);
tiketbtn.addActionListener(this);
infor.addActionListener(this);
tiketbtn1.addActionListener(this);
tiketbtn2.addActionListener(this);
tiketbtn3.addActionListener(this);
}
public void viewFrame() {
this.setVisible(true);
}
public void closeFrame() {
this.setVisible(false);
}
@Override
public void actionPerformed(ActionEvent a) {
Object o =a.getSource();
if(o.equals(listbtn)) {
Resrvayion.viewFrame();
closeFrame();
}else if(o.equals(tiketbtn)) {
Ticketing.viewFrame();
closeFrame();
}else if(o.equals(infor)) {
Myinfo.viewFrame();
closeFrame();
}else if(o.equals(tiketbtn1)) {
Ticketing.viewFrame();
closeFrame();
}else if(o.equals(tiketbtn2)) {
Ticketing.viewFrame();
closeFrame();
}else if(o.equals(tiketbtn3)) {
Ticketing.viewFrame();
closeFrame();
}
}
@Override
public void windowActivated(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowClosed(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowClosing(WindowEvent e) {
new memberDAO().logout();
System.exit(0);
}
@Override
public void windowDeactivated(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowDeiconified(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowIconified(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowOpened(WindowEvent e) {
// TODO Auto-generated method stub
}
}
MoviInfo
package GUI;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import DAO.filmDAO;
import DTO.film;
public class MoviAdd extends JFrame implements ActionListener {
film f = null;
filmDAO fDAO=new filmDAO();
JLabel northLB = new JLabel("영화 관리");
JLabel name = new JLabel("영화 이름");
JLabel story = new JLabel("줄거리(40자)");
JLabel open = new JLabel("개봉일");
JLabel rated = new JLabel("등급(g,pg,pg13,x)");
JLabel running = new JLabel("러닝 타임");
JTextField nameT = new JTextField(10);
JTextArea storyT = new JTextArea(5, 4);
JTextField OpenT = new JTextField(10);
JTextField ratedT = new JTextField(10);
JTextField runningT = new JTextField(10);
JPanel mainP = new JPanel();
JPanel P1 = new JPanel();
JPanel P2 = new JPanel();
JPanel P3 = new JPanel();
JPanel P4 = new JPanel();
JPanel P5 = new JPanel();
JPanel SP = new JPanel();
JButton home = new JButton("Home");
JButton save = new JButton(" 등 록 ");
public MoviAdd() {
new MoviADM().viewFrame();
this.setBounds(100, 100, 650, 400);
this.setTitle("예영's");
mainP.setLayout(new GridLayout(5, 1));
P1.setLayout(new FlowLayout());
P2.setLayout(new FlowLayout());
P3.setLayout(new FlowLayout());
P4.setLayout(new FlowLayout());
P5.setLayout(new FlowLayout());
mainP.add(P1);
P1.add(name);
P1.add(nameT);
mainP.add(P3);
P3.add(open);
P3.add(OpenT);
mainP.add(P4);
P4.add(rated);
P4.add(ratedT);
mainP.add(P5);
mainP.add(P2);
P2.add(story);
P2.add(storyT);
P5.add(running);
P5.add(runningT);
SP.add(home);
SP.add(save);
this.add(northLB, "North");
this.add(mainP, "Center");
this.add(SP, "South");
home.addActionListener(this);
save.addActionListener(this);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void viewFrame() {
this.setVisible(true);
}
public void closeFrame() {
this.setVisible(false);
}
@Override
public void actionPerformed(ActionEvent e) {
Object o = e.getSource();
if (o.equals(home)) {
new MoviADM().viewFrame();
closeFrame();
} else if (o.equals(save)) {
String f_name = nameT.getText();
String f_sline = storyT.getText();
String f_oday = OpenT.getText();
String f_rated = ratedT.getText();
String f_rtime = runningT.getText();
f = new film();
f.setF_slind(f_sline);
f.setF_name(f_name);
f.setF_oday(f_oday);
f.setF_rtime(f_rtime);
f.setF_rated(f_rated);
fDAO.insert(f);
new MoviADM().viewFrame();
closeFrame();
}
}
}
MoviADM
package GUI;
import java.awt.BorderLayout;
import java.awt.List;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.util.ArrayList;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import DAO.filmDAO;
import DTO.film;
public class MoviADM extends JFrame implements ActionListener,ItemListener {
ArrayList<film> fList=null;
filmDAO fDAO=new filmDAO();
film f=new film();
String id=null;
String name=null;
JLabel mADM = new JLabel("영화 관리");
JButton home = new JButton("Home");
JButton addM = new JButton("영화 정보 입력");
JButton modM = new JButton("영화 수정");
JButton delM = new JButton("영화 삭제");
List listM = new List(20);
JTextArea infoM = new JTextArea(10,3);
JPanel mainP = new JPanel();
JPanel northP = new JPanel();
MoviADM() {
this.setBounds(100, 100, 500, 500);
this.setTitle("예영's");
mainP.setLayout(new BorderLayout());
northP.add(mADM);
northP.add(addM);
northP.add(modM);
northP.add(delM);
northP.add(home);
mainP.add(listM, "West");
mainP.add(infoM, "Center");
this.add(northP, "North");
this.add(mainP, "Center");
home.addActionListener(this);
modM.addActionListener(this);
delM.addActionListener(this);
addM.addActionListener(this);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
listM.addItemListener(this);
fList=fDAO.list();
listM.removeAll();
for(film f: fList) {
listM.add(f.getF_no());
}
}
public void viewFrame() {
this.setVisible(true);
}
public void closeFrame() {
this.setVisible(false);
}
@Override
public void actionPerformed(ActionEvent e) {
Object o= e.getSource();
if(o.equals(home)) {
new Login();
closeFrame();
}else if (o.equals(addM)) {
new MoviAdd().viewFrame();
closeFrame();
}else if(o.equals(delM)) {
fDAO.delete(id);
this.repaint();
}else if(o.equals(modM)) {
new MoviMod(id,name).viewFrame();
closeFrame();
}
}
@Override
public void itemStateChanged(ItemEvent e) {
if(e.getSource().equals(listM)){
String no=listM.getSelectedItem();
film f = fDAO.listF(no);
id=f.getF_no();
name=f.getF_name();
infoM.setText("");
infoM.append("영화 제목 : "+f.getF_name()+"\n");
infoM.append("영화 줄거리 : "+f.getF_sline()+"\n");
infoM.append("영화 개봉일 : "+f.getF_oday()+"\n");
infoM.append("영화 관람가 : "+f.getF_rated()+"\n");
infoM.append("영화 러닝타임 : "+f.getF_rtime()+"\n");
}
}
}
MoviMod
package GUI;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import DAO.filmDAO;
import DTO.film;
public class MoviMod extends JFrame implements ActionListener {
String Mno;
String nameM;
film f=null;
JLabel northLB = new JLabel("영화 관리");
JLabel story = new JLabel("줄거리(40자)");
JLabel open = new JLabel("개봉일");
JLabel rated = new JLabel("등급(g,pg,pg13,x)");
JLabel running = new JLabel("러닝 타임");
JTextArea storyT = new JTextArea(5, 4);
JTextField OpenT = new JTextField(10);
JTextField ratedT = new JTextField(10);
JTextField runningT = new JTextField(10);
JPanel mainP = new JPanel();
JPanel P2 = new JPanel();
JPanel P3 = new JPanel();
JPanel P4 = new JPanel();
JPanel P5 = new JPanel();
JPanel SP = new JPanel();
JButton home = new JButton("Home");
JButton mod = new JButton(" 등 록 ");
public MoviMod(String id,String name) {
Mno=id;
nameM=name;
this.setBounds(100, 100, 650, 400);
this.setTitle("예영's");
mainP.setLayout(new GridLayout(5, 1));
P2.setLayout(new FlowLayout());
P3.setLayout(new FlowLayout());
P4.setLayout(new FlowLayout());
P5.setLayout(new FlowLayout());
mainP.add(P3);
P3.add(open);
P3.add(OpenT);
mainP.add(P4);
P4.add(rated);
P4.add(ratedT);
mainP.add(P5);
mainP.add(P2);
P2.add(story);
P2.add(storyT);
P5.add(running);
P5.add(runningT);
SP.add(home);
SP.add(mod);
this.add(northLB, "North");
this.add(mainP, "Center");
this.add(SP, "South");
home.addActionListener(this);
mod.addActionListener(this);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void viewFrame() {
this.setVisible(true);
}
public void closeFrame() {
this.setVisible(false);
}
@Override
public void actionPerformed(ActionEvent e) {
Object o = e.getSource();
if (o.equals(home)) {
new MoviADM().viewFrame();
closeFrame();
} else if (o.equals(mod)) {
f=new film();
String tText=runningT.getText();
String rText=ratedT.getText();
String oText=OpenT.getText();
String sText=storyT.getText();
f.setF_no(Mno);
f.setF_name(nameM);
f.setF_oday(oText);
f.setF_rated(rText);
f.setF_rtime(tText);
f.setF_slind(sText);
new filmDAO().mod(f);
new MoviADM().viewFrame();
closeFrame();
}
}
}
Myinfo
package GUI;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.List;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.util.ArrayList;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import DAO.filmDAO;
import DAO.memberDAO;
import DAO.ticketingDAO;
import DTO.ticketing;
public class Myinfo extends JFrame implements ActionListener, WindowListener, ItemListener {
Modinfo Modinfo = new Modinfo();
memberDAO mDAO = new memberDAO();
ticketingDAO tDAO = new ticketingDAO();
ticketing t = new ticketing();
int num;
JLabel myinfo = new JLabel("내 정보");
JButton del = new JButton("계정 삭제");
JButton mod = new JButton("계정 수정");
JButton revoke = new JButton("예매 취소");
JButton home = new JButton("이전 메뉴로");
List info = new List();
JTextArea infoM = new JTextArea();
JPanel centerP = new JPanel();
JPanel northP = new JPanel();
public Myinfo() {
this.setBounds(100, 100, 650, 400);
this.setTitle("예영's");
centerP.setLayout(new BorderLayout());
northP.setLayout(new FlowLayout());
northP.add(myinfo);
northP.add(del);
northP.add(mod);
northP.add(revoke);
northP.add(home);
centerP.add(info, "West");
centerP.add(infoM, "Center");
this.add(northP, "North");
this.add(centerP, "Center");
del.addActionListener(this);
mod.addActionListener(this);
revoke.addActionListener(this);
home.addActionListener(this);
info.addItemListener(this);
this.addWindowListener(this);
String id =mDAO.userC();
ArrayList<ticketing> tList = tDAO.numList(id);
info.removeAll();
for (ticketing t : tList) {
String to = Integer.toString(t.getT_no());
info.add(to);
}
}
public void viewFrame() {
this.setVisible(true);
}
public void closeFrame() {
this.setVisible(false);
}
@Override
public void actionPerformed(ActionEvent arg0) {
Object o = arg0.getSource();
if (o.equals(del)) {
int num = JOptionPane.showConfirmDialog(null, "정말로 삭제 하겠습니까?");
if (num == 0) {
String id = JOptionPane.showInputDialog(null, "아이디를 입력하새요", "id입력");
String pass = JOptionPane.showInputDialog(null, "비밀번호를 입력하새요", "비밀번호입력");
mDAO.delete(id, pass);
this.repaint();
closeFrame();
new Login();
}
} else if (o.equals(mod)) {
Modinfo.viewFrame();
closeFrame();
} else if (o.equals(revoke)) {
System.out.println(num);
String id =mDAO.userC();
new filmDAO().delticket(id, num);
this.repaint();
} else if (o.equals(home)) {
new Basic();
closeFrame();
}
}
@Override
public void windowActivated(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowClosed(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowClosing(WindowEvent e) {
new memberDAO().logout();
System.exit(0);
}
@Override
public void windowDeactivated(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowDeiconified(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowIconified(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowOpened(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void itemStateChanged(ItemEvent e) {
if (e.getSource().equals(info)) {
num=Integer.parseInt(info.getSelectedItem());
t=tDAO.ticketNo(num);
t.prt();
infoM.setText("");
infoM.append("영화 제목 :" + t.getF_name() + "\n");
infoM.append("영화 상영관 : " + t.getT_theater() + "\n");
infoM.append(" 좌석 : " + t.getSeat() + "\n");
}
}
}
Newjoin
package GUI;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import DAO.memberDAO;
import DTO.member;
public class Newjoin extends JFrame implements ActionListener{
member m= null;
memberDAO mDAO=new memberDAO();
JLabel jlb = new JLabel("신규가입");
JPanel centerP = new JPanel();
JPanel idP1 = new JPanel();
JLabel id = new JLabel(" 아 이 디 ");
JTextField inputId = new JTextField(10);
JPanel passP2 = new JPanel();
JLabel pass = new JLabel(" 비밀 번호 ");
JTextField inputPass = new JTextField(10);
JPanel nameP3 = new JPanel();
JLabel name = new JLabel(" 이 름 ");
JTextField inputName = new JTextField(10);
JPanel pnumP4 = new JPanel();
JLabel pnum = new JLabel(" 전화 번호 ");
JTextField inputPnum = new JTextField(10);
JPanel addrP5 = new JPanel();
JLabel addr = new JLabel("주 소");
JTextField inputAddr = new JTextField(10);
JPanel homeP = new JPanel();
JButton save = new JButton("가입하기");
JButton exit = new JButton("이전 메뉴로");
JButton adm = new JButton("관리자 메뉴");
public Newjoin() {
this.setBounds(100, 100, 250, 250);
this.setTitle("예영's");
idP1.add(id);
idP1.add(inputId);
passP2.add(pass);
passP2.add(inputPass);
nameP3.add(name);
nameP3.add(inputName);
pnumP4.add(pnum);
pnumP4.add(inputPnum);
addrP5.add(addr);
addrP5.add(inputAddr);
centerP.setLayout(new GridLayout(5,1));
centerP.add(idP1);
centerP.add(passP2);
centerP.add(nameP3);
centerP.add(pnumP4);
centerP.add(addrP5);
homeP.add(save);
homeP.add(exit);
homeP.add(adm);
this.add(jlb, "North");
this.add(centerP, "Center");
this.add(homeP, "South");
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
save.addActionListener(this);
exit.addActionListener(this);
}
public void viewFrame() {
this.setVisible(true);
}
public void closeFrame() {
this.setVisible(false);
}
@Override
public void actionPerformed(ActionEvent e) {
Object o= e.getSource();
if(o.equals(save)) {
m=new member();
String id=inputId.getText();
String pass=inputPass.getText();
String name=inputName.getText();
String pnum=inputPnum.getText();
String addr=inputAddr.getText();
if(mDAO.chack(id)==0) {
m.setM_id(id);
m.setM_pass(pass);
m.setM_name(name);
m.setM_pnum(pnum);
m.setM_addr(addr);
mDAO.insert(m);
new Login();
closeFrame();
}else {
JOptionPane.showMessageDialog(null,"이미 존제하는 ID입니다");
}
}else if(o.equals(exit)) {
new Login();
closeFrame();
}
}
}
Reservayion
package GUI;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import DAO.memberDAO;
public class Reservayion extends JFrame implements ActionListener,WindowListener {
Basic b=null;
String oday=null;
ImageIcon drow1 = new ImageIcon(Reservayion.class.getResource("/Image/아담.jpg"));
ImageIcon pdrow1 = pixel(drow1);
ImageIcon drow2 = new ImageIcon(Reservayion.class.getResource("/Image/에브리싱.jpg"));
ImageIcon pdrow2 = pixel(drow2);
ImageIcon drow3 = new ImageIcon(Reservayion.class.getResource("/Image/짱구 극자ㅇ판.jpg"));
ImageIcon pdrow3 = pixel(drow3);
ImageIcon g = new ImageIcon(Reservayion.class.getResource("/spectator/g.png"));
ImageIcon gdrow1 = Greny(g);
ImageIcon pg = new ImageIcon(Reservayion.class.getResource("/spectator/pg.png"));
ImageIcon gdrow2 = Greny(pg);
ImageIcon pg15 = new ImageIcon(Reservayion.class.getResource("/spectator/pg15.png"));
ImageIcon gdrow3 = Greny(pg15);
ImageIcon x = new ImageIcon(Reservayion.class.getResource("/spectator/x.png"));
ImageIcon gdrow4 = Greny(x);
JPanel centerP =new JPanel();
JLabel northLB =new JLabel("전체 영화");
JButton home =new JButton("처음으로");
JPanel centerPC =new JPanel();
JPanel centerC1 =new JPanel();
JPanel centerC2 =new JPanel();
JPanel centerC3 =new JPanel();
JPanel P1 =new JPanel();
JPanel P2 =new JPanel();
JPanel PC1 =new JPanel();
JPanel PC2 =new JPanel();
JPanel PC3 =new JPanel();
JLabel open1=new JLabel("개봉일 : "+oday);
JLabel open2=new JLabel("개봉일 : "+oday);
JLabel open3=new JLabel("개봉일 : "+oday);
JLabel Drow1 = new JLabel(pdrow1);
JLabel Drow2 = new JLabel(pdrow2);
JLabel Drow3 = new JLabel(pdrow3);
JLabel Drow4 = new JLabel(pdrow3);
JLabel G = new JLabel(gdrow1);
JLabel PG = new JLabel(gdrow2);
JLabel PG15 = new JLabel(gdrow3);
JLabel X = new JLabel(gdrow4);
public ImageIcon pixel(ImageIcon i) {
Image img = i.getImage();
Image updateImg = img.getScaledInstance(200, 300, Image.SCALE_SMOOTH);
ImageIcon Icon = new ImageIcon(updateImg);
return Icon;
}
public ImageIcon Greny(ImageIcon i) {
Image img = i.getImage();
Image updateImg = img.getScaledInstance(45, 45, Image.SCALE_SMOOTH);
ImageIcon Icon = new ImageIcon(updateImg);
return Icon;
}
Reservayion(){
this.setBounds(100, 100, 800, 500);
this.setTitle("예영's");
centerP.setLayout(new BorderLayout());
centerPC.setLayout(new BorderLayout());
P1.setLayout(new FlowLayout());
centerC1.setLayout(new BorderLayout());
centerC2.setLayout(new BorderLayout());
centerC3.setLayout(new BorderLayout());
centerP.add(centerPC, "Center");
centerPC.add(P1,"Center");
P2.add(home);
centerPC.add(P2,"North");
P1.add(centerC1);
P1.add(centerC2);
P1.add(centerC3);
centerC1.add(Drow1,"Center");
centerC1.add(PC1,"South");
centerC2.add(Drow2,"Center");
centerC2.add(PC2,"South");
centerC3.add(Drow3,"Center");
centerC3.add(PC3,"South");
PC1.add(PG);
PC1.add(open1);
PC2.add(PG15);
PC2.add(open2);
PC3.add(G);
PC3.add(open3);
home.addActionListener(this);
this.addWindowListener(this);
this.add(northLB,"North");
this.add(centerP,"Center");
}
public void viewFrame() {
this.setVisible(true);
}
public void closeFrame() {
this.setVisible(false);
}
// 액션 리스너
@Override
public void actionPerformed(ActionEvent e) {
Object o =e.getSource();
if(o.equals(home)) {
new Basic();
closeFrame();
}
}
@Override
public void windowActivated(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowClosed(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowClosing(WindowEvent e) {
// TODO Auto-generated method stub
new memberDAO().logout();
System.exit(0);
}
@Override
public void windowDeactivated(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowDeiconified(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowIconified(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowOpened(WindowEvent e) {
// TODO Auto-generated method stub
}
}
Ticketing
package GUI;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.List;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.util.ArrayList;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import DAO.filmDAO;
import DAO.memberDAO;
import DAO.ticketingDAO;
import DTO.film;
import DTO.ticketing;
public class Ticketing extends JFrame implements ActionListener, WindowListener, ItemListener {
ticketingDAO tDAO = new ticketingDAO();
filmDAO fDAO = new filmDAO();
ArrayList<film> flist = null;
film f = new film();
ticketing t = new ticketing();
String name = null;
String b = null;
ArrayList<ticketing> tList = null;
String f_no = null;
String theater = null;
JLabel ticketing = new JLabel(" 예 매 ");
JButton homebtn = new JButton("H O M E");
JButton ticketbtn = new JButton(" 예 매 ");
JButton reset = new JButton(" 초 기 화 ");
JButton[][] seatBtn = new JButton[4][8];
JTextArea ticket = new JTextArea(10, 3);
String[] t_theater = { "1 관", "2 관", "3 관" };
List movi = new List(8);
JButton theater1 = new JButton(" 1 관 ");
JButton theater2 = new JButton(" 2 관 ");
JButton theater3 = new JButton(" 3 관 ");
JPanel seat = new JPanel();
JPanel P1 = new JPanel();
JPanel P2 = new JPanel();
JPanel P3 = new JPanel();
JPanel P4 = new JPanel();
JPanel P5 = new JPanel();
JPanel P6 = new JPanel();
JPanel mainP = new JPanel();
Ticketing() {
this.setBounds(100, 100, 650, 400);
this.setTitle("예영's");
P1.setLayout(new GridLayout(2, 1));
P2.setLayout(new FlowLayout());
P6.setLayout(new GridLayout(3, 1));
mainP.setLayout(new GridLayout(2, 1));
seat.setLayout(new GridLayout(4, 8));
P1.add(ticketing);
P1.add(P2);
P2.add(ticketbtn);
P2.add(homebtn);
P2.add(reset);
P4.add(seat);
P5.add(movi);
P5.add(P6);
P5.add(ticket);
P6.add(theater1);
P6.add(theater2);
P6.add(theater3);
mainP.add(P5);
mainP.add(P4);
int a = 0;
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 8; j++) {
a++;
seatBtn[i][j] = new JButton(a + "번");
seat.add(seatBtn[i][j]);
String seatNum = seatBtn[i][j].getText();
seatBtn[i][j].addActionListener(event -> {
t.setSeat(seatNum);
System.out.println(t.getSeat());
b = seatNum;
ticket.setText("");
ticket.append("영화 제목 :" + name + "\n");
ticket.append("영화 상영관 : " + t.getT_theater() + "\n");
ticket.append(" 좌석 : " + b + "\n");
});
}
}
this.addWindowListener(this);
homebtn.addActionListener(this);
ticketbtn.addActionListener(this);
movi.addItemListener(this);
theater1.addActionListener(this);
theater2.addActionListener(this);
theater3.addActionListener(this);
reset.addActionListener(this);
this.add(mainP, "Center");
this.add(P1, "North");
flist = fDAO.listName();
movi.removeAll();
for (film f : flist) {
movi.add(f.getF_name());
}
}
@Override
public void actionPerformed(ActionEvent arg0) {
Object o = arg0.getSource();
if (o.equals(homebtn)) {
new Basic();
closeFrame();
} else if (o.equals(ticketbtn)) {
String id = new memberDAO().userC();
t.setM_id(id);
tDAO.insert(t);
t.prt();
} else if (o.equals(theater1)) {
t.setT_theater(t_theater[0]);
ticket.setText("");
t.setSeat(null);
b = null;
ticket.append("영화 제목 :" + name + "\n");
ticket.append("영화 상영관 : " + t.getT_theater() + "\n");
ticket.append(" 좌석 : " + b + "\n");
} else if (o.equals(theater2)) {
t.setT_theater(t_theater[1]);
t.setSeat(null);
b = null;
ticket.setText("");
ticket.append("영화 제목 :" + name + "\n");
ticket.append("영화 상영관 : " + t.getT_theater() + "\n");
ticket.append(" 좌석 : " + b + "\n");
} else if (o.equals(theater3)) {
t.setT_theater(t_theater[2]);
t.setSeat(null);
b = null;
ticket.setText("");
ticket.append("영화 제목 :" + name + "\n");
ticket.append("영화 상영관 : " + t.getT_theater() + "\n");
ticket.append(" 좌석 : " + b + "\n");
} else if (o.equals(reset)) {
ticket.setText("");
ticket.append("영화 제목 :" + "\n");
ticket.append("영화 상영관 : " + "\n");
ticket.append(" 좌석 : " + " / " + "\n");
t.setF_name(null);
t.setF_no(null);
t.setM_id(null);
t.setT_theater(null);
t.setSeat(null);
}
}
public void viewFrame() {
this.setVisible(true);
}
public void closeFrame() {
this.setVisible(false);
}
@Override
public void windowActivated(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowClosed(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowClosing(WindowEvent e) {
new memberDAO().logout();
System.exit(0);
}
@Override
public void windowDeactivated(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowDeiconified(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowIconified(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowOpened(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void itemStateChanged(ItemEvent e) {
if (e.getSource().equals(movi)) {
name = movi.getSelectedItem();
t = tDAO.moviCode(name);
f_no = t.getF_no();
ticket.setText("");
ticket.append("영화 제목 :" + name + "\n");
ticket.append("영화 상영관 : " + t.getT_theater() + "\n");
ticket.append(" 좌석 : " + t.getSeat() + "\n");
}
}
}