Advertisement
Guest User

Untitled

a guest
Feb 26th, 2020
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.08 KB | None | 0 0
  1. import java.awt.EventQueue;
  2. import javax.swing.JFrame;
  3. import javax.swing.SpringLayout;
  4. import Taitaja9.entiteetit.Asiakas;
  5. import javax.swing.JButton;
  6. import java.awt.event.ActionListener;
  7. import java.sql.Connection;
  8. import java.sql.PreparedStatement;
  9. import java.sql.ResultSet;
  10. import java.sql.SQLException;
  11. import java.util.ArrayList;
  12. import java.util.List;
  13. import java.awt.event.ActionEvent;
  14. import javax.swing.JTabbedPane;
  15. import javax.swing.JDesktopPane;
  16. //import net.miginfocom.swing.MigLayout;
  17. import javax.swing.JTable;
  18. import java.awt.GridLayout;
  19. import javax.swing.JLabel;
  20. /***************************************************** 
  21. * tekijä: (ensimmäisen version tekijä)               * 
  22. * pvm:  (versio pvm)                                 *   
  23. * versio: (versionumero) * 
  24. * muutos: (nimikirjaimet) * 
  25.  *****************************************************/
  26. public class Taitaja9ui {
  27.  
  28. private JFrame frame;
  29. /**
  30. * Launch the application.
  31. */
  32. public static void main(String[] args) {
  33. EventQueue.invokeLater(new Runnable() {
  34. public void run() {
  35. try {
  36. Taitaja9ui window = new Taitaja9ui();
  37. window.frame.setVisible(true);
  38. } catch (Exception e) {
  39. e.printStackTrace();
  40. }
  41. }
  42. });
  43. }
  44. /**
  45. * Create the application.
  46. */
  47. public Taitaja9ui() {
  48. initialize();
  49. }
  50. /**
  51. * Initialize the contents of the frame.
  52. */
  53. private void initialize() {
  54. frame = new JFrame();
  55. frame.setBounds(100, 100, 450, 300);
  56. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  57.  
  58.  
  59. JButton btnRun = new JButton("Run");
  60. btnRun.addActionListener(new ActionListener() {
  61. public void actionPerformed(ActionEvent arg0) {
  62.  
  63.  
  64. // Tahan tulee ajattava koodi kun nappia painetaan
  65. // Kopioidaan koodi Taitaja9- luokasta
  66.  
  67. Connection con = null;
  68.  
  69. try {
  70. Tietokanta tk = Tietokanta.instanssiDerby();
  71. //Tietokanta tk = Tietokanta.instanssiMySql();
  72. //Muodostetaan yhteys kantaan
  73. con = tk.muodostaYhteys();
  74. //poistaa luodut taulut tietokannasta!
  75.  
  76.  
  77. Taitaja9.poistaTaulut(con);
  78. //Luo taulut tietokantaan.
  79. Taitaja9.luoTaulut(tk);
  80. //Lisaa tauluihin tietueita.
  81. Taitaja9.lisaaTietoa(con);
  82. //Ajaa kyselyn ja nayttaa tulokset.
  83. Taitaja9.kysely(con);
  84. //Esimerkki valmistellun kyselyn kaytasta.
  85. Taitaja9.valmisteltuKysely(con);
  86.  
  87.  
  88. System.out.println("Etsitaan asiakkaita...");
  89. List<Asiakas> asiakkaat = haeAsiakkaat(con, "A");
  90. for(Asiakas a : asiakkaat)
  91. System.out.println(a);
  92.  
  93. }catch (Exception e) {
  94. System.out.println(e.getMessage());
  95. }finally {
  96. //Pidetaan huolta, etta tietokantayhteys suljetaan aina.
  97. SuljeTietokanta.sulje(con);
  98. }
  99.  
  100.  
  101.  
  102.  
  103. }
  104. });
  105. frame.getContentPane().setLayout(new GridLayout(0, 3, 0, 0));
  106.  
  107. JLabel label = new JLabel("");
  108. frame.getContentPane().add(label);
  109. frame.getContentPane().add(btnRun);
  110.  
  111. JButton btnHello = new JButton("Hello");
  112.  
  113. btnHello.addActionListener(new ActionListener() {
  114. public void actionPerformed(ActionEvent arg0) {
  115.  
  116. HelloWorldFrame helloWorldGUI = new HelloWorldFrame();
  117. helloWorldGUI.setSize(400,200); //Asetetaan ikkunan koko.
  118. helloWorldGUI.setVisible(true); //Näytetään ikkuna.
  119.  
  120. }
  121. });
  122.  
  123. JLabel label_1 = new JLabel("");
  124. frame.getContentPane().add(label_1);
  125. frame.getContentPane().add(btnHello);
  126.  
  127. JButton btnTaulukko = new JButton("Taulukko");
  128. btnTaulukko.addActionListener(new ActionListener() {
  129. public void actionPerformed(ActionEvent arg0) {
  130.  
  131. TaulukkoFrame taulukkoGUI = new TaulukkoFrame();
  132. taulukkoGUI.setSize(500,200); //Asetetaan ikkunan koko.
  133. taulukkoGUI.setVisible(true); //Näytetään ikkuna.
  134.  
  135. }
  136. });
  137.  
  138. JButton btnTekstikentat = new JButton("Tekstikentat");
  139. btnTekstikentat.addActionListener(new ActionListener() {
  140. public void actionPerformed(ActionEvent arg0) {
  141.  
  142. TekstikentatFrame TekstikentatGUI = new TekstikentatFrame();
  143. TekstikentatGUI.setSize(400,200); //Asetetaan ikkunan koko.
  144. TekstikentatGUI.setVisible(true); //Näytetään ikkuna.
  145. }
  146. });
  147. frame.getContentPane().add(btnTekstikentat);
  148. frame.getContentPane().add(btnTaulukko);
  149.  
  150. }
  151.  
  152. static List<Asiakas> haeAsiakkaat(Connection con, String enimi) throws Exception {
  153. List<Asiakas> asiakkaat = new ArrayList<Asiakas>();
  154. PreparedStatement pstmt = null;
  155. ResultSet rs = null;
  156. try {
  157. pstmt = con.prepareStatement("SELECT ANO, ENIMI, SNIMI " +
  158. "FROM ASIAKKAAT WHERE ENIMI LIKE ?");
  159. pstmt.setString(1, enimi + "%");
  160. rs = pstmt.executeQuery();
  161. while(rs.next()) {
  162. asiakkaat.add(new Asiakas(rs.getInt(1), rs.getString(2), rs.getString(3)));
  163. }
  164. } catch(SQLException se) {
  165. throw new Exception("Virhe etsittaessa asiakkaita.", se);
  166. } finally {
  167. SuljeTietokanta.sulje(rs);
  168. SuljeTietokanta.sulje(pstmt);
  169. }
  170. return asiakkaat;
  171. }
  172. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement