Advertisement
Guest User

Untitled

a guest
May 10th, 2015
238
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.76 KB | None | 0 0
  1. import java.io.*;
  2. public class Movie implements Serializable
  3. {String title;
  4. String actor;
  5. String director;
  6.  
  7.  
  8.  
  9. public Movie(String title, String actor,String director)
  10. {
  11. this.title = title;
  12. this.actor = actor;
  13. this.director = director;
  14. }
  15.  
  16. public String getTitle()
  17. {
  18. return title;
  19.  
  20. }
  21.  
  22. public String getActor()
  23. {
  24. return actor;
  25. }
  26.  
  27. public String getDirector()
  28. {
  29. return director;
  30. }
  31.  
  32.  
  33. }
  34. ____________________________________________
  35.  
  36. import java.io.Serializable;
  37. import java.util.ArrayList;
  38.  
  39. public class MovieDatabase1 implements Serializable
  40. {
  41. private ArrayList<Movie> movies = new ArrayList<Movie>();
  42.  
  43. public MovieDatabase1(ArrayList<Movie> movies)
  44. {
  45. this.movies = movies;
  46. }
  47. public MovieDatabase1()
  48. {}
  49.  
  50. public ArrayList<Movie> getMovies()
  51. {
  52. return movies;
  53. }
  54. public void addMovie(Movie m)
  55. {
  56. movies.add(m);
  57. }
  58.  
  59. }
  60. ________________________
  61.  
  62. import java.io.*;
  63.  
  64. public class Persistence
  65. {
  66.  
  67.  
  68. public static void saveMovieDatabase1(MovieDatabase1 movieDatabase1)
  69. {
  70. try{
  71. File file = new File("movies.txt");
  72. file.createNewFile();
  73.  
  74. FileOutputStream file1= new FileOutputStream("movies.txt",true);
  75. ObjectOutputStream out = new ObjectOutputStream(file1);
  76.  
  77. out.writeObject(movieDatabase1);
  78. file1.close();
  79. out.close();
  80.  
  81. }
  82. catch (IOException e)
  83. {
  84. System.out.println("Something goes wrong");
  85. }
  86. }
  87.  
  88.  
  89. public static MovieDatabase1 loadMovieDatabase1(){
  90.  
  91. MovieDatabase1 db1 = new MovieDatabase1();
  92. try {
  93. FileInputStream fileInput = new FileInputStream("movies.txt");
  94. ObjectInputStream objectInput = new ObjectInputStream(fileInput);
  95.  
  96. //type cast into a BookDatabase (from Object).
  97.  
  98. db1 = (MovieDatabase1)objectInput.readObject();
  99. }
  100. catch (Exception e){
  101. e.printStackTrace();
  102. System.out.println("Something went wrong");
  103. }
  104. return db1;
  105. }
  106.  
  107. }
  108. ______________________________________________________________
  109. import javax.swing.*;
  110. import java.awt.*;
  111. import javax.*;
  112. import java.awt.event.*;
  113. import java.io.File;
  114. import java.io.IOException;
  115.  
  116. import javax.imageio.ImageIO;
  117. import javax.swing.ImageIcon;
  118.  
  119.  
  120. public class RunMovie
  121. {
  122. static JTextField titlet = new JTextField(10);
  123. static JTextField actort = new JTextField(10);
  124. static JTextField directort = new JTextField(10);
  125.  
  126.  
  127. public RunMovie()
  128. {
  129. MovieDatabase1 db1 = Persistence.loadMovieDatabase1();
  130.  
  131.  
  132.  
  133. JFrame frame = new JFrame("Movie Database"); //New window
  134. frame.setSize(500,500); // 500,500 // ask christian
  135. frame.setVisible(true); // visible true
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142. JButton save = new JButton("Save");
  143. save.addActionListener(new ActionListener() {
  144. public void actionPerformed(ActionEvent e)
  145. {
  146. {
  147.  
  148. Movie movie1 = new Movie(getTitle(),getActor(),getDirector());
  149.  
  150. db1.addMovie(movie1);
  151. Persistence.saveMovieDatabase1(db1);
  152. System.out.println("Saving");
  153. }
  154. new MovieDatabase();
  155. }
  156. });
  157.  
  158. JLabel label = new JLabel("Movie Database");
  159. JLabel label1 = new JLabel("Title");
  160. JLabel label2 = new JLabel("Actor");
  161. JLabel label3 = new JLabel("Director");
  162. label1.setFont(new Font("Verdana", Font.PLAIN, 12));
  163. label2.setFont(new Font("Verdana", Font.PLAIN, 12));
  164. label3.setFont(new Font("Verdana", Font.PLAIN, 12));
  165. JTextField titlet = new JTextField(10);
  166. JTextField actort = new JTextField(10);
  167. JTextField directort = new JTextField(10);
  168.  
  169.  
  170.  
  171. //panel with GridBagLayout
  172. JPanel panel = new JPanel(new GridBagLayout());
  173. JPanel panel1 = new JPanel(new GridBagLayout());
  174. JPanel panel2 = new JPanel(new GridBagLayout());
  175.  
  176. //object of GridBagLayout
  177. GridBagConstraints c= new GridBagConstraints();
  178.  
  179.  
  180. panel.add(save,c);
  181.  
  182. c.insets = new Insets(40,40,40,40);
  183.  
  184. c.gridx = 0;
  185. c.gridy = 0;
  186. panel1.add(label1,c);
  187.  
  188.  
  189. c.gridx = 1;
  190. c.gridy = 0;
  191. panel1.add(titlet,c);
  192.  
  193.  
  194. c.gridx = 0;
  195. c.gridy = 1;
  196. panel1.add(label2,c);
  197.  
  198. c.gridx = 1;
  199. c.gridy = 1;
  200. panel1.add(actort,c);
  201.  
  202.  
  203. c.gridx = 0;
  204. c.gridy = 2;
  205. panel1.add(label3,c);
  206.  
  207. c.gridx = 1;
  208. c.gridy = 2;
  209. panel1.add(directort,c);
  210.  
  211.  
  212.  
  213.  
  214.  
  215. panel1.setBackground(new Color(38, 228, 202) );// setting colors
  216. panel.setBackground(new Color(38, 228, 202));//setting colors
  217. panel2.setBackground(new Color(38, 228, 202));//setting colors
  218.  
  219.  
  220.  
  221.  
  222. frame.getContentPane().add(panel, BorderLayout.SOUTH);
  223. frame.getContentPane().add(panel1, BorderLayout.NORTH);
  224. frame.getContentPane().add(panel2, BorderLayout.CENTER);
  225.  
  226. }
  227. public static String getTitle()
  228. {
  229. return titlet.getText();
  230. }
  231.  
  232. public static String getActor()
  233. {
  234. return actort.getText();
  235. }
  236.  
  237. public static String getDirector()
  238. {
  239. return directort.getText();
  240. }
  241.  
  242. }
  243.  
  244. _____________________________________________________________________
  245.  
  246.  
  247. import java.io.*;
  248. import java.awt.BorderLayout;
  249. import java.awt.FlowLayout;
  250. import java.awt.Dimension;
  251. import java.awt.GridLayout;
  252. import java.awt.event.ActionListener;
  253. import java.awt.event.ActionEvent;
  254. import java.awt.event.ItemEvent;
  255. import java.awt.event.ItemListener;
  256. import java.awt.event.MouseEvent;
  257. import java.awt.event.MouseMotionListener;
  258. import java.io.IOException;
  259. import java.io.FileReader;
  260. import java.io.BufferedReader;
  261.  
  262.  
  263. import javax.swing.ImageIcon;
  264. import javax.swing.JButton;
  265. import javax.swing.JComboBox;
  266. import javax.swing.JFrame;
  267. import javax.swing.JLabel;
  268. import javax.swing.JOptionPane;
  269. import javax.swing.JScrollPane;
  270. import javax.swing.JTable;
  271. import javax.swing.JTextArea;
  272. import javax.swing.JTextField;
  273. import java.util.ArrayList;
  274. import javax.swing.table.DefaultTableModel;
  275. import javax.swing.JPanel;
  276. import javax.swing.event.*;
  277. import javax.swing.table.TableModel;
  278.  
  279.  
  280.  
  281. public class MovieDatabase extends JFrame implements ActionListener{
  282.  
  283. public static void main (String[] args){
  284.  
  285. new MovieDatabase();
  286.  
  287. }
  288.  
  289.  
  290. private ArrayList<Movie> movies = new ArrayList<Movie>();
  291. private JTable table = new JTable();
  292. private JTable table1 = new JTable();
  293. private JButton delete;
  294. private JButton add;
  295. private JButton new1;
  296. private JButton load;
  297. private JFrame frame1;
  298. private JFrame frame2;
  299. private JFrame frame3;
  300. private JPanel south;
  301. DefaultTableModel model = new DefaultTableModel();
  302. DefaultTableModel model1 = new DefaultTableModel();
  303.  
  304.  
  305.  
  306.  
  307.  
  308. public MovieDatabase()
  309. {
  310.  
  311.  
  312. delete = new JButton("Delete the movie");
  313. add = new JButton("Add the movie");
  314. new1 = new JButton("Save");
  315. load = new JButton("Load");
  316. frame1 = new JFrame("Movie Database");
  317. frame2 = new JFrame("Open new window1");
  318. frame3 = new JFrame("Open new window2");
  319.  
  320.  
  321. JPanel SOUTH = new JPanel(new GridLayout(0,3));
  322.  
  323. SOUTH.add(delete);
  324. SOUTH.add(add);
  325. SOUTH.add(new1);
  326. SOUTH.add(load);
  327.  
  328. JPanel NORTH = new JPanel(new GridLayout(0,3));
  329.  
  330.  
  331.  
  332. final JFrame frame1 = new JFrame();
  333. frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  334. frame1.setLayout(new BorderLayout());
  335. frame1.add(NORTH, BorderLayout.SOUTH);
  336. frame1.setTitle("Update you movie database");
  337. frame1.pack();
  338.  
  339.  
  340.  
  341. final JFrame frame = new JFrame();
  342. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  343. frame.setLayout(new BorderLayout());
  344. frame.add(SOUTH, BorderLayout.SOUTH);
  345. frame.setTitle("Text area test");
  346. frame.pack();
  347. frame.setVisible(true);
  348.  
  349. delete.addActionListener(this);
  350. add.addActionListener(this);
  351. new1.addActionListener(this);
  352. load.addActionListener(this);
  353.  
  354.  
  355.  
  356. JScrollPane scrollPane = new JScrollPane(table); //add scrollpane to table
  357.  
  358.  
  359.  
  360. frame.add(scrollPane, BorderLayout.CENTER);
  361. updateJTable();
  362.  
  363. }
  364.  
  365.  
  366. public void updateJTable()
  367. {
  368.  
  369. model.setColumnIdentifiers(new String[] { "title", "actors", "director" });
  370. model.setRowCount(movies.size());
  371. int row = 0;
  372. for (Movie movie : movies) {
  373. model.setValueAt(movie.title, row, 0);
  374. model.setValueAt(movie.actor, row, 1);
  375. model.setValueAt(movie.director, row, 2);
  376. row++;
  377. }
  378. table.setModel(model);
  379.  
  380. }
  381. {
  382.  
  383. model1.setColumnIdentifiers(new String[] { "title", "actors", "director" });
  384. model1.setRowCount(movies.size());
  385. int row = 0;
  386. for (Movie movie : movies) {
  387. model1.setValueAt(movie.title, row, 0);
  388. model1.setValueAt(movie.actor, row, 1);
  389. model1.setValueAt(movie.director, row, 2);
  390. row++;
  391. }
  392. table1.setModel(model1);
  393.  
  394.  
  395. }
  396.  
  397. public void actionPerformed(ActionEvent event)
  398. {
  399. if(event.getSource() == delete)
  400. { model.removeRow(0);
  401. }
  402. if(event.getSource() == add)
  403. {
  404. new RunMovie();
  405.  
  406.  
  407. }
  408.  
  409. if(event.getSource() == new1)
  410. {
  411. MovieDatabase1 db1 = Persistence.loadMovieDatabase1();
  412.  
  413. for (int i = 0; i < db1.getMovies().size(); i++) {
  414. Movie movie = db1.getMovies().get(i);
  415. {
  416. String data1 = RunMovie.getTitle();
  417. String data2 = RunMovie.getActor();
  418. String data3 = RunMovie.getDirector();
  419.  
  420.  
  421. Object[] row = {data1, data2,data3};
  422.  
  423. DefaultTableModel model1 = (DefaultTableModel) table.getModel();
  424.  
  425. model.addRow(row);
  426.  
  427. }
  428. }
  429.  
  430. if(event.getSource() == load )
  431. {
  432. }
  433. }
  434.  
  435.  
  436.  
  437.  
  438.  
  439. }
  440. }
  441.  
  442. _______________________________________________________
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement