Advertisement
Guest User

Untitled

a guest
May 16th, 2017
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.83 KB | None | 0 0
  1. package com.nyad.ui;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.DriverManager;
  5. import java.sql.ResultSet;
  6. import java.sql.SQLException;
  7. import java.sql.Connection;
  8. import com.mysql.jdbc.Statement;
  9. import com.nyad.data.BookContainer;
  10. import com.vaadin.ui.Table;
  11.  
  12. @SuppressWarnings("serial")
  13. public class BookSearch extends Table {
  14.    
  15.     public BookSearch() {
  16.        
  17.         super();
  18.         setContainerDataSource(BookContainer.initState());
  19.         setSelectable(true);
  20.         setSizeFull();
  21.         setVisibleColumns(BookContainer.NATURAL_COL_ORDER);
  22.         setColumnHeaders(BookContainer.COL_HEADERS_PORTUGUESE);
  23.     }
  24.    
  25.     public void search(Object value) throws InstantiationException, IllegalAccessException {
  26.        
  27.         try {
  28.             Class.forName("com.mysql.jdbc.Driver").newInstance();
  29.        
  30.             Connection  con = DriverManager.getConnection("jdbc:mysql://localhost:3306/acervo", "nyad", "123456");
  31.  
  32.             Statement statement = (Statement) con.createStatement();
  33.             ResultSet resultSet = statement.executeQuery("select *  from livro");
  34.  
  35.             BookContainer container = BookContainer.bookFactory(resultSet);
  36.                        
  37.             setContainerDataSource(container);
  38.             System.out.println(container);
  39.        
  40.             con.close();
  41.             } catch (ClassNotFoundException e) {
  42.                 e.printStackTrace();
  43.             } catch (SQLException e) {
  44.                 e.printStackTrace();
  45.             }
  46.        
  47.             enableContentRefreshing(true);
  48.             sort();
  49.  
  50.     }
  51.  
  52. }
  53.  
  54.  
  55.  
  56.  
  57. /////////////////////////////////////////////////////////////////////////////
  58. package com.nyad.data;
  59.  
  60. import java.io.Serializable;
  61. import java.sql.ResultSet;
  62. import java.sql.SQLException;
  63.  
  64. import com.vaadin.data.util.BeanItemContainer;
  65.  
  66. @SuppressWarnings("serial")
  67. public class BookContainer extends BeanItemContainer<Book> implements Serializable {
  68.  
  69.     public BookContainer() throws InstantiationException, IllegalAccessException {
  70.         super(Book.class);
  71.     }
  72.  
  73.     public static final Object[] NATURAL_COL_ORDER = new Object[] {
  74.         "autor","titulo","localizacao","quantidade","disponivel"
  75.     };
  76.     public static final String[] COL_HEADERS_PORTUGUESE = new String[] {
  77.         "Autor", "Título", "Localização", "Quantidade", "Disponível"
  78.     };
  79.    
  80.     public static BookContainer bookFactory(ResultSet dataSet) throws InstantiationException, IllegalAccessException, SQLException {
  81.        
  82.         BookContainer lista = new BookContainer();
  83.        
  84.         while (dataSet.next()) {
  85.            
  86.             Book livro = new Book();
  87.            
  88.             livro.setAutor(dataSet.getString("autor"));
  89.             livro.setTitulo(dataSet.getString("titulo"));
  90.             livro.setQuantidade(dataSet.getString("quantidade"));
  91.             livro.setLocalizacao(dataSet.getString("localizacao"));
  92.             livro.setDisponivel(dataSet.getString("disponivel"));
  93.             livro.setISBN(dataSet.getString("isbn"));
  94.            
  95.             lista.addBean(livro);
  96.             System.out.println(livro);         
  97.         }
  98.        
  99.        
  100.         return lista;
  101.     }
  102.    
  103.     public static BookContainer initState() {
  104.         BookContainer initState = null;
  105.         try {
  106.             return new BookContainer();
  107.         } catch (InstantiationException e) {
  108.             // TODO Auto-generated catch block
  109.             e.printStackTrace();
  110.         } catch (IllegalAccessException e) {
  111.             // TODO Auto-generated catch block
  112.             e.printStackTrace();
  113.         }
  114.         return initState;
  115.     }
  116.    
  117. }
  118.  
  119. ////////////////////////////////////////////////////////////////
  120.  
  121. package com.nyad;
  122. import com.nyad.ui.BookSearch;
  123. import com.nyad.ui.LoginWindow;
  124. import com.vaadin.Application;
  125. import com.vaadin.terminal.ThemeResource;
  126. import com.vaadin.ui.Button.ClickEvent;
  127. import com.vaadin.ui.*;
  128.  
  129. @SuppressWarnings("serial")
  130. public class NyadApplication extends Application implements Button.ClickListener  {
  131.    
  132.     private Button signButton = new Button("Sign In  ");
  133.     private Button searchButton = new Button("Buscar!");
  134.     public VerticalLayout layout;
  135.     public HorizontalLayout midshit;
  136.     public VerticalLayout searchTable;
  137.     public HorizontalLayout bar;
  138.     public BookSearch busquinha;
  139.     final TextField busca = new TextField("","Livro?");
  140.            
  141.     @Override
  142.     public void init() {       
  143.         buildMainLayout();
  144.     }
  145.  
  146.     private void buildMainLayout() {
  147.         setMainWindow(new Window("Nyad Application")); 
  148.         setTheme("mytheme");
  149.        
  150.         layout= new VerticalLayout();
  151.        
  152.         bar = createToolbar();
  153.  
  154.         layout.setSizeFull();
  155.                
  156.         layout.addComponent(bar);      
  157.         layout.setComponentAlignment(bar, Alignment.TOP_RIGHT);
  158.         Embedded em = new Embedded("", new ThemeResource("logo.png"));
  159.         em.setMimeType("image/png");       
  160.        
  161.         layout.addComponent(em);
  162.         layout.setComponentAlignment(em, Alignment.MIDDLE_CENTER);
  163.         midshit = new HorizontalLayout();
  164.         busca.setWidth(20, 2);
  165.         midshit.addComponent(busca);
  166.         midshit.addComponent(searchButton);
  167.         searchButton.addListener(this);
  168.         midshit.setSpacing(true);
  169.        
  170.         layout.addComponent(midshit);
  171.         layout.setComponentAlignment(midshit, Alignment.MIDDLE_CENTER);
  172.         searchTable = new VerticalLayout();
  173.         busquinha = new BookSearch();
  174.         searchTable.addComponent(new BookSearch());
  175.         searchTable.setSizeFull();
  176.    
  177.         layout.addComponent(searchTable);
  178.         layout.setExpandRatio(searchTable, 5);
  179.         layout.setExpandRatio(midshit, 1);
  180.         layout.setExpandRatio(bar, 1);
  181.        
  182.        
  183.         getMainWindow().setContent(layout);
  184.  
  185.     }
  186.    
  187.     public HorizontalLayout createToolbar() {
  188.         HorizontalLayout lo = new  HorizontalLayout();
  189.         lo.setSpacing(true);
  190.        
  191.        
  192.         signButton.setStyleName(Button.STYLE_LINK);
  193.         lo.addComponent(signButton);   
  194.        
  195.        
  196.         signButton.addListener((Button.ClickListener) this);
  197.         return lo;
  198.     }
  199.    
  200.     @Override
  201.     public void buttonClick(ClickEvent event) {
  202.         final Button source = event.getButton();
  203.        
  204.         if (source == signButton) {    
  205.             getMainWindow().addWindow(new LoginWindow());
  206.         }
  207.         if (source == searchButton) {
  208.        
  209.             try {
  210.                 busquinha.search(busca.getValue());                            
  211.                
  212.             } catch (InstantiationException e) {
  213.                 // TODO Auto-generated catch block
  214.                 e.printStackTrace();
  215.             } catch (IllegalAccessException e) {
  216.                 // TODO Auto-generated catch block
  217.                 e.printStackTrace();
  218.             }
  219.            
  220.         }
  221.        
  222.     }
  223. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement