Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.nyad.ui;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.sql.Connection;
- import com.mysql.jdbc.Statement;
- import com.nyad.data.BookContainer;
- import com.vaadin.ui.Table;
- @SuppressWarnings("serial")
- public class BookSearch extends Table {
- public BookSearch() {
- super();
- setContainerDataSource(BookContainer.initState());
- setSelectable(true);
- setSizeFull();
- setVisibleColumns(BookContainer.NATURAL_COL_ORDER);
- setColumnHeaders(BookContainer.COL_HEADERS_PORTUGUESE);
- }
- public void search(Object value) throws InstantiationException, IllegalAccessException {
- try {
- Class.forName("com.mysql.jdbc.Driver").newInstance();
- Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/acervo", "nyad", "123456");
- Statement statement = (Statement) con.createStatement();
- ResultSet resultSet = statement.executeQuery("select * from livro");
- BookContainer container = BookContainer.bookFactory(resultSet);
- setContainerDataSource(container);
- System.out.println(container);
- con.close();
- } catch (ClassNotFoundException e) {
- e.printStackTrace();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- enableContentRefreshing(true);
- sort();
- }
- }
- /////////////////////////////////////////////////////////////////////////////
- package com.nyad.data;
- import java.io.Serializable;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import com.vaadin.data.util.BeanItemContainer;
- @SuppressWarnings("serial")
- public class BookContainer extends BeanItemContainer<Book> implements Serializable {
- public BookContainer() throws InstantiationException, IllegalAccessException {
- super(Book.class);
- }
- public static final Object[] NATURAL_COL_ORDER = new Object[] {
- "autor","titulo","localizacao","quantidade","disponivel"
- };
- public static final String[] COL_HEADERS_PORTUGUESE = new String[] {
- "Autor", "Título", "Localização", "Quantidade", "Disponível"
- };
- public static BookContainer bookFactory(ResultSet dataSet) throws InstantiationException, IllegalAccessException, SQLException {
- BookContainer lista = new BookContainer();
- while (dataSet.next()) {
- Book livro = new Book();
- livro.setAutor(dataSet.getString("autor"));
- livro.setTitulo(dataSet.getString("titulo"));
- livro.setQuantidade(dataSet.getString("quantidade"));
- livro.setLocalizacao(dataSet.getString("localizacao"));
- livro.setDisponivel(dataSet.getString("disponivel"));
- livro.setISBN(dataSet.getString("isbn"));
- lista.addBean(livro);
- System.out.println(livro);
- }
- return lista;
- }
- public static BookContainer initState() {
- BookContainer initState = null;
- try {
- return new BookContainer();
- } catch (InstantiationException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (IllegalAccessException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return initState;
- }
- }
- ////////////////////////////////////////////////////////////////
- package com.nyad;
- import com.nyad.ui.BookSearch;
- import com.nyad.ui.LoginWindow;
- import com.vaadin.Application;
- import com.vaadin.terminal.ThemeResource;
- import com.vaadin.ui.Button.ClickEvent;
- import com.vaadin.ui.*;
- @SuppressWarnings("serial")
- public class NyadApplication extends Application implements Button.ClickListener {
- private Button signButton = new Button("Sign In ");
- private Button searchButton = new Button("Buscar!");
- public VerticalLayout layout;
- public HorizontalLayout midshit;
- public VerticalLayout searchTable;
- public HorizontalLayout bar;
- public BookSearch busquinha;
- final TextField busca = new TextField("","Livro?");
- @Override
- public void init() {
- buildMainLayout();
- }
- private void buildMainLayout() {
- setMainWindow(new Window("Nyad Application"));
- setTheme("mytheme");
- layout= new VerticalLayout();
- bar = createToolbar();
- layout.setSizeFull();
- layout.addComponent(bar);
- layout.setComponentAlignment(bar, Alignment.TOP_RIGHT);
- Embedded em = new Embedded("", new ThemeResource("logo.png"));
- em.setMimeType("image/png");
- layout.addComponent(em);
- layout.setComponentAlignment(em, Alignment.MIDDLE_CENTER);
- midshit = new HorizontalLayout();
- busca.setWidth(20, 2);
- midshit.addComponent(busca);
- midshit.addComponent(searchButton);
- searchButton.addListener(this);
- midshit.setSpacing(true);
- layout.addComponent(midshit);
- layout.setComponentAlignment(midshit, Alignment.MIDDLE_CENTER);
- searchTable = new VerticalLayout();
- busquinha = new BookSearch();
- searchTable.addComponent(new BookSearch());
- searchTable.setSizeFull();
- layout.addComponent(searchTable);
- layout.setExpandRatio(searchTable, 5);
- layout.setExpandRatio(midshit, 1);
- layout.setExpandRatio(bar, 1);
- getMainWindow().setContent(layout);
- }
- public HorizontalLayout createToolbar() {
- HorizontalLayout lo = new HorizontalLayout();
- lo.setSpacing(true);
- signButton.setStyleName(Button.STYLE_LINK);
- lo.addComponent(signButton);
- signButton.addListener((Button.ClickListener) this);
- return lo;
- }
- @Override
- public void buttonClick(ClickEvent event) {
- final Button source = event.getButton();
- if (source == signButton) {
- getMainWindow().addWindow(new LoginWindow());
- }
- if (source == searchButton) {
- try {
- busquinha.search(busca.getValue());
- } catch (InstantiationException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (IllegalAccessException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement