Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Create Class User
- package JAVA_VIDEOS_TUTORIALS;
- public class User {
- private int id;
- private String fname;
- private String lname;
- private int age;
- public User(int Id,String Fname,String Lname,int Age)
- {
- this.id = Id;
- this.fname = Fname;
- this.lname = Lname;
- this.age = Age;
- }
- public int getId()
- {
- return id;
- }
- public String getFname()
- {
- return fname;
- }
- public String getLname()
- {
- return lname;
- }
- public int getAge()
- {
- return age;
- }
- }
- // Creates new form JTable_Search
- package JAVA_VIDEOS_TUTORIALS;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.Statement;
- import java.util.ArrayList;
- import javax.swing.table.DefaultTableModel;
- /**
- *
- * @author 1BestCsharp
- */
- public class JTable_Search extends javax.swing.JFrame {
- /**
- * Creates new form JTable_Search
- */
- public JTable_Search() {
- initComponents();
- // call findUsers function
- findUsers();
- }
- // function to connect to mysql database
- public Connection getConnection()
- {
- Connection con = null;
- try{
- con = DriverManager.getConnection("jdbc:mysql://localhost/test_db","root","");
- }catch(Exception ex){
- System.out.println(ex.getMessage());
- }
- return con;
- }
- // function to return users arraylist with particular data
- public ArrayList<User> ListUsers(String ValToSearch)
- {
- ArrayList<User> usersList = new ArrayList<User>();
- Statement st;
- ResultSet rs;
- try{
- Connection con = getConnection();
- st = con.createStatement();
- String searchQuery = "SELECT * FROM `users` WHERE CONCAT(`id`, `fname`, `lname`, `age`) LIKE '%"+ValToSearch+"%'";
- rs = st.executeQuery(searchQuery);
- User user;
- while(rs.next())
- {
- user = new User(
- rs.getInt("id"),
- rs.getString("fname"),
- rs.getString("lname"),
- rs.getInt("age")
- );
- usersList.add(user);
- }
- }catch(Exception ex){
- System.out.println(ex.getMessage());
- }
- return usersList;
- }
- // function to display data in jtable
- public void findUsers()
- {
- ArrayList<User> users = ListUsers(jText_Search.getText());
- DefaultTableModel model = new DefaultTableModel();
- model.setColumnIdentifiers(new Object[]{"ID","Fname","Lname","Age"});
- Object[] row = new Object[4];
- for(int i = 0; i < users.size(); i++)
- {
- row[0] = users.get(i).getId();
- row[1] = users.get(i).getFname();
- row[2] = users.get(i).getLname();
- row[3] = users.get(i).getAge();
- model.addRow(row);
- }
- jTable_Users.setModel(model);
- }
- @SuppressWarnings("unchecked")
- // <editor-fold defaultstate="collapsed" desc="Generated Code">
- private void initComponents() {
- jPanel2 = new javax.swing.JPanel();
- jButton_Search = new javax.swing.JButton();
- jText_Search = new javax.swing.JTextField();
- jScrollPane1 = new javax.swing.JScrollPane();
- jTable_Users = new javax.swing.JTable();
- setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
- jButton_Search.setText("Search");
- jButton_Search.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- jButton_SearchActionPerformed(evt);
- }
- });
- jText_Search.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N
- jTable_Users.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
- jTable_Users.setModel(new javax.swing.table.DefaultTableModel(
- new Object [][] {
- {null, null, null, null},
- {null, null, null, null},
- {null, null, null, null},
- {null, null, null, null}
- },
- new String [] {
- "Title 1", "Title 2", "Title 3", "Title 4"
- }
- ));
- jScrollPane1.setViewportView(jTable_Users);
- javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
- jPanel2.setLayout(jPanel2Layout);
- jPanel2Layout.setHorizontalGroup(
- jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(jPanel2Layout.createSequentialGroup()
- .addContainerGap(22, Short.MAX_VALUE)
- .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
- .addComponent(jText_Search, javax.swing.GroupLayout.PREFERRED_SIZE, 188, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addGap(18, 18, 18)
- .addComponent(jButton_Search)
- .addGap(136, 136, 136))
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
- .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 500, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addGap(29, 29, 29))))
- );
- jPanel2Layout.setVerticalGroup(
- jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(jPanel2Layout.createSequentialGroup()
- .addGap(31, 31, 31)
- .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(jButton_Search)
- .addComponent(jText_Search, javax.swing.GroupLayout.PREFERRED_SIZE, 32, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addGap(28, 28, 28)
- .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addContainerGap(41, Short.MAX_VALUE))
- );
- javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
- getContentPane().setLayout(layout);
- layout.setHorizontalGroup(
- layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- );
- layout.setVerticalGroup(
- layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- );
- pack();
- }// </editor-fold>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement