diff --git a/src/.classpath b/src/.classpath
new file mode 100644
index 0000000000000000000000000000000000000000..2e8c012fb428f3fbfd7ee2b07a3d2457ec30af3f
--- /dev/null
+++ b/src/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path=""/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="lib" path="/home/commander/Downloads/sqlite-jdbc-3.7.2.jar"/>
+	<classpathentry kind="output" path=""/>
+</classpath>
diff --git a/src/.gitignore b/src/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..4b789dde34963a1bfcc433e00fcf675569f359ac
--- /dev/null
+++ b/src/.gitignore
@@ -0,0 +1,18 @@
+/DAO.class
+/DAOinterface$1.class
+/DAOinterface.class
+/SQLiteJDBConnection.class
+/empresa.class
+/DAOInterface$1.class
+/DAOInterface.class
+/DAOInterface$2.class
+/Editando$1.class
+/Editando.class
+/Editando$2.class
+/Editando$3.class
+/DAOInterface$3.class
+/Empresa.class
+/TelaEmpresas$1.class
+/TelaEmpresas$2.class
+/TelaEmpresas$3.class
+/TelaEmpresas.class
diff --git a/src/.project b/src/.project
new file mode 100644
index 0000000000000000000000000000000000000000..0f6f6a7651742888f8fab41052ab2787920558f1
--- /dev/null
+++ b/src/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>src</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/src/bd/.gitignore b/src/bd/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..6d970879e93c25aead9026ed2732b1af45ea5139
--- /dev/null
+++ b/src/bd/.gitignore
@@ -0,0 +1 @@
+/ConnectDataBase.class
diff --git a/src/bd/ConnectDataBase.java b/src/bd/ConnectDataBase.java
new file mode 100644
index 0000000000000000000000000000000000000000..eb4aa769a65a72d2ddbe0d05903c55fa55f93b6f
--- /dev/null
+++ b/src/bd/ConnectDataBase.java
@@ -0,0 +1,35 @@
+package bd;
+
+import java.io.File;
+import java.sql.Connection;
+import java.sql.DriverManager;
+
+public class ConnectDataBase {
+
+
+public Connection conexao()
+{
+	Connection c = null;
+    try 
+    {
+		File file =  new File("db_nutricao");
+		if(!file.exists()) 
+		{
+			  System.out.println("Banco de dados não encontrado");
+			  return null;
+		}
+		else
+		{
+			Class.forName("org.sqlite.JDBC");
+			c = DriverManager.getConnection("jdbc:sqlite:db_nutricao");
+		}
+		  
+
+    } 
+    catch ( Exception e ) {
+	      System.err.println( e.getClass().getName() + ": " + e.getMessage() );
+	      System.exit(0);
+    }
+    return c;
+}
+}
\ No newline at end of file
diff --git a/src/dao/.gitignore b/src/dao/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..712bc2e2e07f516d2d4b4cac85301618315ec814
--- /dev/null
+++ b/src/dao/.gitignore
@@ -0,0 +1,2 @@
+/DaoImpl.class
+/Dao.class
diff --git a/src/dao/Dao.java b/src/dao/Dao.java
new file mode 100644
index 0000000000000000000000000000000000000000..9529e956b5658cd37a0dbe6ff99fddee3fc02c86
--- /dev/null
+++ b/src/dao/Dao.java
@@ -0,0 +1,5 @@
+package dao;
+
+public interface Dao {
+
+}
diff --git a/src/dao/DaoImpl.java b/src/dao/DaoImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..f9f204d2495ab6431817792c389c4678cee0bad8
--- /dev/null
+++ b/src/dao/DaoImpl.java
@@ -0,0 +1,20 @@
+package dao;
+
+import bd.ConnectDataBase;
+import java.sql.Connection;
+
+
+public class DaoImpl {
+	private static ConnectDataBase connectDataBase;
+	private static Connection c;
+	
+	static public Connection getConnection(){
+		if(c == null){
+			connectDataBase = new ConnectDataBase();
+			c = connectDataBase.conexao();
+		}
+		return c;
+	}
+
+
+}
\ No newline at end of file
diff --git a/src/db_nutricao b/src/db_nutricao
new file mode 100644
index 0000000000000000000000000000000000000000..8eaa1ba10932c711ef58c8e6e51946ee0b619d48
Binary files /dev/null and b/src/db_nutricao differ
diff --git a/src/elemento/.gitignore b/src/elemento/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..4d35794df2276de05963135d9c650c8283099906
--- /dev/null
+++ b/src/elemento/.gitignore
@@ -0,0 +1 @@
+/Elemento.class
diff --git a/src/elemento/Elemento.java b/src/elemento/Elemento.java
new file mode 100644
index 0000000000000000000000000000000000000000..d067f7893f931953d37fbf11723d63400474f5b7
--- /dev/null
+++ b/src/elemento/Elemento.java
@@ -0,0 +1,23 @@
+package elemento;
+
+public class Elemento {
+	private String nome;
+	private int id;
+	public int getId() {
+		return id;
+	}
+
+	public void setId(int id) {
+		this.id = id;
+	}
+
+	public String getNome() {
+		return nome;
+	}
+
+	public void setNome(String nome) {
+		this.nome = nome;
+	} 
+	
+
+}
diff --git a/src/elemento/dao/.gitignore b/src/elemento/dao/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..43507d28b41ce4f30d6b30dbf1d2ae80b213124c
--- /dev/null
+++ b/src/elemento/dao/.gitignore
@@ -0,0 +1,2 @@
+/ElementoDaoImpl.class
+/ElementoDao.class
diff --git a/src/elemento/dao/ElementoDao.java b/src/elemento/dao/ElementoDao.java
new file mode 100644
index 0000000000000000000000000000000000000000..856164f3b75499d27b47feacd7f9ad2992df5059
--- /dev/null
+++ b/src/elemento/dao/ElementoDao.java
@@ -0,0 +1,5 @@
+package elemento.dao;
+
+public interface ElementoDao {
+
+}
diff --git a/src/elemento/dao/ElementoDaoImpl.java b/src/elemento/dao/ElementoDaoImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..c8f67febd920ab6f8ff0cc193ae083c802eb3412
--- /dev/null
+++ b/src/elemento/dao/ElementoDaoImpl.java
@@ -0,0 +1,70 @@
+package elemento.dao;
+
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.List;
+
+import dao.DaoImpl;
+import elemento.Elemento;
+
+public class ElementoDaoImpl {
+	
+	 public void insert(Elemento e)
+	    {
+	    	String sql = "INSERT INTO elemento(nome,endereco) VALUES(?)";
+	    	try {
+	    		
+	            PreparedStatement pstmt = DaoImpl.getConnection().prepareStatement(sql);
+	      	    pstmt.setString(1, e.getNome());
+	            pstmt.executeUpdate();
+	        
+	        }catch (SQLException ex) {
+	            System.out.println(ex.getMessage());
+	        }
+	    	
+	    }
+	    public void update(Elemento e)
+	    {
+	    	String sql = "UPDATE elemento SET nome = '"+ e.getNome()+ "' WHERE id ="+ e.getId();
+	    	try {
+	    		
+	            PreparedStatement pstmt = DaoImpl.getConnection().prepareStatement(sql);
+	            pstmt.executeUpdate();
+	        
+	        }catch (SQLException es) {
+	            System.out.println(es.getMessage());
+	        }
+	    	
+	    }
+	    
+	    public void delete(Elemento e)
+	    {
+	    	String sql = "DELETE FROM elemento WHERE elemento.id ="+e.getId();
+	    	try {
+	            PreparedStatement pstmt = DaoImpl.getConnection().prepareStatement(sql);
+	            pstmt.executeUpdate();
+	        
+	        }catch (SQLException ex) {
+	            System.out.println(ex.getMessage());
+	        }
+	    	
+	    }
+	    public List<Elemento> retornaTodas() throws SQLException {
+			List<Elemento> elementos = new ArrayList<Elemento>();
+			String sql = "select * from elemento";
+				PreparedStatement stmt = DaoImpl.getConnection().prepareStatement(sql);
+				ResultSet rs = stmt.executeQuery();
+				while (rs.next()) {
+					Elemento e = new Elemento();
+					e.setNome(rs.getString("nome"));
+					elementos.add(e);
+				
+				}
+				rs.close();
+				stmt.close();
+
+			return elementos;
+		}
+}
diff --git a/src/empresa/.gitignore b/src/empresa/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..16d08e4632dab3ea50a57b5ac833177b938c0b81
--- /dev/null
+++ b/src/empresa/.gitignore
@@ -0,0 +1 @@
+/Empresa.class
diff --git a/src/empresa/Empresa.java b/src/empresa/Empresa.java
new file mode 100644
index 0000000000000000000000000000000000000000..a3647c3924ea16535509b8fb4600d9ed44fd56b5
--- /dev/null
+++ b/src/empresa/Empresa.java
@@ -0,0 +1,41 @@
+package empresa;
+
+public class Empresa {
+	int cnpj;
+	String nome;
+	String endereco;
+	String responsavel;
+	
+
+	public void setCnpj(int cnpj){
+		this.cnpj = cnpj;
+	}
+	
+	public void setNome(String nome){
+		this.nome = nome;
+	}
+	
+	public void setEndereco(String endereco){
+		this.endereco = endereco;
+	}
+	
+	public void setResponsavel(String responsavel){
+		this.responsavel = responsavel;
+	}
+	
+	public int getCnpj(){
+		return this.cnpj;
+	}
+	
+	public String getNome(){
+		return this.nome;
+	}
+	
+	public String getEndereco(){
+		return this.endereco;
+	}
+	
+	public String getResponsavel(){
+		return this.responsavel;
+	}
+}
diff --git a/src/empresa/dao/.gitignore b/src/empresa/dao/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..e2cf786d48a6d7c7ff51812f2452ba831c5a245b
--- /dev/null
+++ b/src/empresa/dao/.gitignore
@@ -0,0 +1,2 @@
+/EmpresaDAO.class
+/EmpresaDAOImpl.class
diff --git a/src/empresa/dao/EmpresaDAO.java b/src/empresa/dao/EmpresaDAO.java
new file mode 100644
index 0000000000000000000000000000000000000000..520c6f64e000785de947ac588317d63717e145f8
--- /dev/null
+++ b/src/empresa/dao/EmpresaDAO.java
@@ -0,0 +1,10 @@
+package empresa.dao;
+
+import empresa.Empresa;
+
+public interface EmpresaDAO {
+
+	 public void insert(Empresa empresa);
+	 public void delete(Empresa empresa);
+	
+}
diff --git a/src/empresa/dao/EmpresaDAOImpl.java b/src/empresa/dao/EmpresaDAOImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..f1651c893452912a8dd1f5141ef856181b78a26a
--- /dev/null
+++ b/src/empresa/dao/EmpresaDAOImpl.java
@@ -0,0 +1,75 @@
+package empresa.dao;
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.List;
+
+import dao.DaoImpl;
+import empresa.Empresa;
+
+public class EmpresaDAOImpl implements EmpresaDAO {
+    public void insert(Empresa empresa)
+    {
+    	String sql = "INSERT INTO EMPRESA(cnpj,endereco,nome,responsavel_tecnico) VALUES(?,?,?,?)";
+    	try {
+    		
+            PreparedStatement pstmt = DaoImpl.getConnection().prepareStatement(sql);
+      	    pstmt.setInt(1, empresa.getCnpj());
+            pstmt.setString(2, empresa.getEndereco());
+            pstmt.setString(3, empresa.getNome());
+            pstmt.setString(4, empresa.getResponsavel());
+            pstmt.executeUpdate();
+        
+        }catch (SQLException e) {
+            System.out.println(e.getMessage());
+        }
+    	
+    }
+    public void update(Empresa empresa)
+    {
+    	String sql = "UPDATE EMPRESA SET nome = '"+ empresa.getNome()+ "',endereco = '"+ empresa.getEndereco()+ "',responsavel_tecnico= '"+empresa.getResponsavel()+"' WHERE CNPJ ="+ empresa.getCnpj();
+    	try {
+    		
+            PreparedStatement pstmt = DaoImpl.getConnection().prepareStatement(sql);
+            pstmt.executeUpdate();
+        
+        }catch (SQLException e) {
+            System.out.println(e.getMessage());
+        }
+    	
+    }
+    
+    public void delete(Empresa empresa)
+    {
+    	String sql = "DELETE FROM EMPRESA WHERE EMPRESA.CNPJ ="+empresa.getCnpj();
+    	try {
+            PreparedStatement pstmt = DaoImpl.getConnection().prepareStatement(sql);
+            pstmt.executeUpdate();
+        
+        }catch (SQLException e) {
+            System.out.println(e.getMessage());
+        }
+    	
+    }
+    public List<Empresa> retornaTodas() throws SQLException {
+		List<Empresa> empresas = new ArrayList<Empresa>();
+		String sql = "select * from empresa";
+			PreparedStatement stmt = DaoImpl.getConnection().prepareStatement(sql);
+			ResultSet rs = stmt.executeQuery();
+			while (rs.next()) {
+				Empresa e = new Empresa();
+				e.setCnpj(rs.getInt("CNPJ"));
+				e.setNome(rs.getString("nome"));
+				e.setEndereco(rs.getString("endereco"));
+				e.setResponsavel(rs.getString("responsavel_tecnico"));
+				empresas.add(e);
+			
+			}
+			rs.close();
+			stmt.close();
+
+		return empresas;
+	}
+}
diff --git a/src/empresa/janelas/.gitignore b/src/empresa/janelas/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..d0e56a32e193723d37d6d4e7682e0426987fbe35
--- /dev/null
+++ b/src/empresa/janelas/.gitignore
@@ -0,0 +1,15 @@
+/EmpresaPrincipal$1.class
+/EmpresaPrincipal.class
+/EmpresaPrincipal$2.class
+/EmpresaCadastro$1.class
+/EmpresaCadastro.class
+/EmpresaPrincipal$3.class
+/EmpresaTableModel.class
+/FrameListener.class
+/EmpresaPrincipal$4.class
+/EmpresaPrincipal$5.class
+/EmpresaEditar$1.class
+/EmpresaEditar.class
+/EmpresaCadastro$2.class
+/EmpresaCadastro$3.class
+/EmpresaPrincipal$6.class
diff --git a/src/empresa/janelas/EmpresaCadastro.java b/src/empresa/janelas/EmpresaCadastro.java
new file mode 100644
index 0000000000000000000000000000000000000000..50aa18dd2f0524c375a156962acb9a2688b451c0
--- /dev/null
+++ b/src/empresa/janelas/EmpresaCadastro.java
@@ -0,0 +1,166 @@
+package empresa.janelas;
+
+import javax.swing.JFrame;
+import javax.swing.JPanel;
+import javax.swing.border.EmptyBorder;
+
+import empresa.Empresa;
+import empresa.dao.EmpresaDAOImpl;
+import empresa.janelas.publicoAlvojanelas.PublicoAlvoPrincipal;
+import refeicao.janela.RefeicaoPrincipal;
+
+import javax.swing.UIManager;
+import javax.swing.JLabel;
+import java.awt.Font;
+import javax.swing.JTextField;
+import javax.swing.JButton;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.sql.SQLException;
+import java.awt.Color;
+
+public class EmpresaCadastro extends JFrame {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	private JPanel contentPane;
+	private JTextField textField;
+	private JTextField textField_1;
+	private JTextField textField_2;
+	private JTextField textField_3;
+	private EmpresaPrincipal parent;
+	private JButton btnAdicionarPblicoAlvo;
+	private JButton btnAdicionarCardpio;
+
+	/**
+	 * Launch the application.
+	 */
+
+
+	/**
+	 * Create the frame.
+	 */
+	public EmpresaCadastro(EmpresaPrincipal p) {
+		parent=p;
+		setBackground(UIManager.getColor("CheckBox.focus"));
+		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+		setBounds(100, 100, 450, 300);
+		contentPane = new JPanel();
+		contentPane.setBackground(UIManager.getColor("Button.darkShadow"));
+		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
+		setContentPane(contentPane);
+		contentPane.setLayout(null);
+		
+		JLabel lblCnpj = new JLabel("CNPJ: ");
+		lblCnpj.setBounds(12, 51, 80, 15);
+		lblCnpj.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblCnpj);
+		
+		JLabel lblNome = new JLabel("Nome: ");
+		lblNome.setBounds(12, 98, 40, 15);
+		lblNome.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblNome);
+		
+		JLabel lblEndereo = new JLabel("Endereço: ");
+		lblEndereo.setBounds(12, 148, 60, 15);
+		lblEndereo.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblEndereo);
+		
+		JLabel lblResponsvel = new JLabel("Responsável: ");
+		lblResponsvel.setBounds(12, 193, 80, 15);
+		lblResponsvel.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblResponsvel);
+		
+		textField = new JTextField();
+		textField.setBounds(115, 49, 114, 19);
+		contentPane.add(textField);
+		textField.setColumns(10);
+		
+		textField_1 = new JTextField();
+		textField_1.setBounds(115, 96, 114, 19);
+		contentPane.add(textField_1);
+		textField_1.setColumns(10);
+		
+		textField_2 = new JTextField();
+		textField_2.setFont(new Font("Ubuntu", Font.PLAIN, 12));
+		textField_2.setBounds(115, 146, 114, 19);
+		contentPane.add(textField_2);
+		textField_2.setColumns(10);
+		
+		textField_3 = new JTextField();
+		textField_3.setBounds(115, 191, 114, 19);
+		contentPane.add(textField_3);
+		textField_3.setColumns(10);
+		
+		JButton btnSalvar = new JButton("Salvar");
+		btnSalvar.setBackground(Color.WHITE);
+		btnSalvar.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		btnSalvar.setBounds(308, 223, 117, 25);
+		contentPane.add(btnSalvar);
+		
+		btnAdicionarPblicoAlvo = new JButton("Adicionar Público Alvo");
+		btnAdicionarPblicoAlvo.setBackground(Color.WHITE);
+		btnAdicionarPblicoAlvo.setBounds(221, 12, 217, 25);
+		contentPane.add(btnAdicionarPblicoAlvo);
+		btnAdicionarPblicoAlvo.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				            try {
+								PublicoAlvoPrincipal publico = new PublicoAlvoPrincipal();
+								publico.setVisible(true);
+							} catch (SQLException e) {
+								// TODO Auto-generated catch block
+								e.printStackTrace();
+							}
+				             
+
+				      }  
+				   }  
+				);
+		
+		btnAdicionarCardpio = new JButton("Adicionar Refeição");
+		btnAdicionarCardpio.setBackground(Color.WHITE);
+		btnAdicionarCardpio.setBounds(12, 12, 197, 25);
+		btnAdicionarCardpio.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				            try {
+								RefeicaoPrincipal ref = new RefeicaoPrincipal();
+								ref.setVisible(true);
+							} catch (SQLException e) {
+								// TODO Auto-generated catch block
+								e.printStackTrace();
+							}
+				             
+
+				      }  
+				   }  
+				);
+		contentPane.add(btnAdicionarCardpio);
+		btnSalvar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				             Empresa e = new Empresa();
+				             e.setCnpj(Integer.parseInt(textField.getText()));
+				             e.setNome(textField_1.getText());
+				             e.setEndereco(textField_2.getText());
+				             e.setResponsavel(textField_3.getText());
+				             EmpresaDAOImpl dao = new EmpresaDAOImpl();
+				             dao.insert(e);
+				             try {
+				            	 parent.atualizaTabela();
+							} catch (SQLException e1) {
+								// TODO Auto-generated catch block
+								e1.printStackTrace();
+							}
+				             dispose();
+				             
+
+				      }  
+				   }  
+				);
+		
+	}
+}
diff --git a/src/empresa/janelas/EmpresaEditar.java b/src/empresa/janelas/EmpresaEditar.java
new file mode 100644
index 0000000000000000000000000000000000000000..20d42ee296045741abeae8ac7887e1947a850d32
--- /dev/null
+++ b/src/empresa/janelas/EmpresaEditar.java
@@ -0,0 +1,122 @@
+package empresa.janelas;
+
+import javax.swing.JFrame;
+import javax.swing.JPanel;
+import javax.swing.border.EmptyBorder;
+
+import empresa.Empresa;
+import empresa.dao.EmpresaDAOImpl;
+
+import javax.swing.UIManager;
+import javax.swing.JLabel;
+import java.awt.Font;
+import javax.swing.JTextField;
+import javax.swing.JButton;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.sql.SQLException;
+
+public class EmpresaEditar extends JFrame {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	private JPanel contentPane;
+	private JTextField textField;
+	private JTextField textField_1;
+	private JTextField textField_2;
+	private JTextField textField_3;
+	private EmpresaPrincipal parent;
+	private Empresa empresa;
+
+	/**
+	 * Launch the application.
+	 */
+
+
+	/**
+	 * Create the frame.
+	 */
+	public EmpresaEditar(Empresa e, EmpresaPrincipal p) {
+		parent=p;
+		empresa = e;
+		setBackground(UIManager.getColor("CheckBox.focus"));
+		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+		setBounds(100, 100, 450, 300);
+		contentPane = new JPanel();
+		contentPane.setBackground(UIManager.getColor("Button.darkShadow"));
+		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
+		setContentPane(contentPane);
+		contentPane.setLayout(null);
+		
+		
+		JLabel lblNome = new JLabel("Nome: ");
+		lblNome.setBounds(12, 98, 40, 15);
+		lblNome.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblNome);
+		
+		JLabel lblEndereo = new JLabel("Endereço: ");
+		lblEndereo.setBounds(12, 148, 60, 15);
+		lblEndereo.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblEndereo);
+		
+		JLabel lblResponsvel = new JLabel("Responsável: ");
+		lblResponsvel.setBounds(12, 193, 80, 15);
+		lblResponsvel.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblResponsvel);
+		
+		textField_1 = new JTextField();
+		textField_1.setBounds(115, 96, 114, 19);
+		contentPane.add(textField_1);
+		textField_1.setColumns(10);
+		
+		textField_2 = new JTextField();
+		textField_2.setFont(new Font("Ubuntu", Font.PLAIN, 12));
+		textField_2.setBounds(115, 146, 114, 19);
+		contentPane.add(textField_2);
+		textField_2.setColumns(10);
+		
+		textField_3 = new JTextField();
+		textField_3.setBounds(115, 191, 114, 19);
+		contentPane.add(textField_3);
+		textField_3.setColumns(10);
+		
+
+		if(empresa != null){
+			textField_2.setText(empresa.getEndereco());
+			textField_1.setText(empresa.getNome());
+			textField_3.setText(empresa.getResponsavel());
+		}
+		
+		
+		JButton btnSalvar = new JButton("Salvar");
+		btnSalvar.setBackground(UIManager.getColor("Button.select"));
+		btnSalvar.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		btnSalvar.setBounds(308, 223, 117, 25);
+		contentPane.add(btnSalvar);
+		btnSalvar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				             Empresa e = new Empresa();
+				             e.setCnpj(empresa.getCnpj());
+				             e.setNome(textField_1.getText());
+				             e.setEndereco(textField_2.getText());
+				             e.setResponsavel(textField_3.getText());
+				             EmpresaDAOImpl dao = new EmpresaDAOImpl();
+				             dao.update(e);
+				             try {
+								parent.atualizaTabela();
+							} catch (SQLException e1) {
+								// TODO Auto-generated catch block
+								e1.printStackTrace();
+							}
+				             dispose();
+				             
+
+				      }  
+				   }  
+				);
+		
+	}
+}
diff --git a/src/empresa/janelas/EmpresaPrincipal.java b/src/empresa/janelas/EmpresaPrincipal.java
new file mode 100644
index 0000000000000000000000000000000000000000..6267e05b44729624192541c6d2d6cbd3dad0a7d2
--- /dev/null
+++ b/src/empresa/janelas/EmpresaPrincipal.java
@@ -0,0 +1,171 @@
+package empresa.janelas;
+
+import java.awt.EventQueue;
+
+import javax.swing.JFrame;
+import javax.swing.JPanel;
+import javax.swing.JScrollPane;
+import javax.swing.border.EmptyBorder;
+import javax.swing.JButton;
+import javax.swing.SwingConstants;
+import java.awt.SystemColor;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import java.sql.SQLException;
+
+import javax.swing.UIManager;
+import java.awt.Font;
+import javax.swing.JTable;
+
+import empresa.Empresa;
+import empresa.dao.EmpresaDAOImpl;
+
+import java.awt.Color;
+
+public class EmpresaPrincipal extends JFrame {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	private JPanel contentPane;
+	private JTable table;
+	private JButton btnEditar; 
+	private int linhaSelecionada;
+	private JButton btnExcluir;
+	private Empresa empresa;
+	private JButton btnDetalhes;
+	private JButton btnFechar;
+	private EmpresaCadastro empresaCadastro ;
+	private EmpresaPrincipal parent;
+	private EmpresaTableModel tm;
+	/**
+	 * Launch the application.
+	 */
+	public static void main(String[] args) {
+		EventQueue.invokeLater(new Runnable() {
+			public void run() {
+				try {
+					EmpresaPrincipal frame = new EmpresaPrincipal();
+					frame.setVisible(true);
+				} catch (Exception e) {
+					e.printStackTrace();
+				}
+			}
+		});
+	}
+
+	/**
+	 * Create the frame.
+	 * @throws SQLException 
+	 */
+	public EmpresaPrincipal() throws SQLException {
+		setBackground(UIManager.getColor("Button.focus"));
+		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+		setBounds(200, 200, 550, 400);
+		contentPane = new JPanel();
+		contentPane.setBackground(UIManager.getColor("Button.darkShadow"));
+		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
+		setContentPane(contentPane);
+		
+		JButton btnCadastrar = new JButton("Cadastrar");
+		btnCadastrar.setBounds(5, 35, 96, 26);
+		btnCadastrar.setFont(new Font("Ubuntu", Font.BOLD, 13));
+		btnCadastrar.setBackground(SystemColor.text);
+		btnCadastrar.setVerticalAlignment(SwingConstants.BOTTOM);
+		empresaCadastro = new EmpresaCadastro(this);
+		btnCadastrar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				             empresaCadastro.setVisible(true);
+				      }  
+				   }  
+				);
+		btnEditar = new JButton("Editar");
+		btnEditar.setBackground(Color.WHITE);
+		btnEditar.setBounds(251, 36, 117, 25);
+		btnEditar.setEnabled(false);
+		parent = this;
+		btnEditar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				    	  EmpresaEditar empresaEditar = new EmpresaEditar(empresa, parent);	 
+				    	  empresaEditar.setVisible(true);
+				      }  
+				   }  
+				);
+		contentPane.add(btnEditar);
+		
+		btnDetalhes = new JButton("Detalhes");
+		btnDetalhes.setBackground(Color.WHITE);
+		btnDetalhes.setBounds(122, 36, 117, 25);
+		btnDetalhes.setEnabled(false);
+		contentPane.add(btnDetalhes);
+		
+		btnFechar = new JButton("Fechar");
+		btnFechar.setBackground(Color.WHITE);
+		btnFechar.setBounds(421, 341, 117, 25);
+		btnFechar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				    	  dispose();
+				      
+				      }  
+				   }  
+				);
+		contentPane.add(btnFechar);
+		
+		btnExcluir = new JButton("Excluir");
+		btnExcluir.setBackground(Color.WHITE);
+		btnExcluir.setBounds(400, 36, 117, 25);
+		btnExcluir.setEnabled(false);
+		contentPane.add(btnExcluir);
+		contentPane.setLayout(null);
+		btnExcluir.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				    	  EmpresaDAOImpl dao = new EmpresaDAOImpl();
+				    	  dao.delete(empresa);
+				    	  try {
+							atualiza();
+						} catch (SQLException e) {
+							e.printStackTrace();
+						}
+				      
+				      }  
+				   }  
+				);
+		contentPane.add(btnCadastrar);
+		atualizaTabela();
+		
+		
+	}
+	public void atualizaTabela() throws SQLException {
+		EmpresaDAOImpl dao = new EmpresaDAOImpl();
+		tm = new EmpresaTableModel(dao);
+		
+		table = new JTable(tm);
+		table.addMouseListener(new MouseAdapter(){
+			public void mouseClicked(MouseEvent e){
+				linhaSelecionada = table.getSelectedRow();
+				empresa = tm.getEmpresa(linhaSelecionada);
+				btnExcluir.setEnabled(true);
+				btnEditar.setEnabled(true);
+			}
+		});
+		JScrollPane scroll = new JScrollPane(table);
+		scroll.setBounds(5, 73, 540, 257);
+		scroll.setVisible(true);
+		contentPane.add(scroll);
+		
+		
+	}
+	public void atualiza() throws SQLException{
+		 	dispose();
+	        setVisible(false);
+	        EmpresaPrincipal frame = new EmpresaPrincipal();
+	        frame.setVisible(true);
+	}
+}
diff --git a/src/empresa/janelas/EmpresaTableModel.java b/src/empresa/janelas/EmpresaTableModel.java
new file mode 100644
index 0000000000000000000000000000000000000000..721b2e54a95bb78f960073b3311dd29764b0bd3d
--- /dev/null
+++ b/src/empresa/janelas/EmpresaTableModel.java
@@ -0,0 +1,59 @@
+package empresa.janelas;
+
+import java.sql.SQLException;
+import java.util.Arrays;
+import java.util.List;
+
+import javax.swing.table.AbstractTableModel;
+
+import empresa.Empresa;
+import empresa.dao.EmpresaDAOImpl;
+
+public class EmpresaTableModel extends AbstractTableModel{
+
+		private static final long serialVersionUID = 1L;
+		private List<Empresa> empresas;
+		private List<String> colunas;
+		// Construtores
+	
+		public EmpresaTableModel(EmpresaDAOImpl empresaDao) throws SQLException  {
+			EmpresaDAOImpl dao = empresaDao;
+			this.empresas = dao.retornaTodas();
+			System.out.println(empresas.size());
+			colunas = Arrays.asList("CNPJ", "Nome", "Endereco", "Responsavel");
+		}
+		// Métodos Geters
+		public List<String> getColunas() {
+			return colunas;
+		}
+		// Retorna o numero de colunas no modelo
+		public int getColumnCount() {
+			return colunas.size();
+		}
+		// Retorna o numero de linhas existentes no modelo
+		public int getRowCount() {
+			return empresas.size();
+		}
+		public String getColumnName(int i) {
+			return colunas.get(i);
+		}
+		// Obtem o valor na linha e coluna
+		public Object getValueAt(int r, int c) {
+			Empresa e = empresas.get(r);
+			switch (c) {
+			case 0:
+				return e.getCnpj();
+			case 1:
+				return e.getNome();
+			case 2:
+				return e.getEndereco();
+			case 3:
+				return e.getResponsavel();
+			}
+			return null;
+		}
+		public Empresa getEmpresa(int linha){
+			Empresa e = empresas.get(linha);
+			return e;
+		}
+}
diff --git a/src/empresa/janelas/publicoAlvojanelas/.gitignore b/src/empresa/janelas/publicoAlvojanelas/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..552e0fe726748e580bfa0b414b29838f08207eec
--- /dev/null
+++ b/src/empresa/janelas/publicoAlvojanelas/.gitignore
@@ -0,0 +1,15 @@
+/PublicoAlvo$1.class
+/PublicoAlvo.class
+/PublicoAlvo$2.class
+/EmpresaTableModel.class
+/PublicoTableModel.class
+/PublicoAlvoPrincipal.class
+/PublicoAlvoPrincipal$1.class
+/PublicoAlvoPrincipal$2.class
+/PublicoAlvoPrincipal$3.class
+/PublicoAlvoPrincipal$4.class
+/PublicoAlvoPrincipal$5.class
+/PublicoAlvoCadastrar$1.class
+/PublicoAlvoCadastrar.class
+/PublicoAlvoCadastrar$2.class
+/PublicoAlvoPrincipal$6.class
diff --git a/src/empresa/janelas/publicoAlvojanelas/PublicoAlvoCadastrar.java b/src/empresa/janelas/publicoAlvojanelas/PublicoAlvoCadastrar.java
new file mode 100644
index 0000000000000000000000000000000000000000..a448b3c7504c963a376afbb21a5331dc02bc1875
--- /dev/null
+++ b/src/empresa/janelas/publicoAlvojanelas/PublicoAlvoCadastrar.java
@@ -0,0 +1,128 @@
+package empresa.janelas.publicoAlvojanelas;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.EventQueue;
+import java.awt.Font;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.sql.SQLException;
+
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JTextField;
+import javax.swing.UIManager;
+import javax.swing.border.EmptyBorder;
+
+import empresa.Empresa;
+import empresa.dao.EmpresaDAOImpl;
+import empresa.janelas.EmpresaPrincipal;
+import empresa.publicoAlvo.PublicoAlvo;
+import empresa.publicoAlvo.dao.PublicoAlvoDaoImpl;
+
+public class PublicoAlvoCadastrar extends JFrame {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	private JPanel contentPane;
+	private JTextField textField;
+	private JTextField textField_1;
+	private JTextField textField_2;
+	private JTextField textField_3;
+	private PublicoAlvoPrincipal parent;
+
+	/**
+	 * Launch the application.
+	 */
+
+
+	/**
+	 * Create the frame.
+	 */
+	public PublicoAlvoCadastrar(PublicoAlvoPrincipal p) {
+		parent=p;
+		setBackground(UIManager.getColor("CheckBox.focus"));
+		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+		setBounds(100, 100, 450, 300);
+		contentPane = new JPanel();
+		contentPane.setBackground(UIManager.getColor("Button.darkShadow"));
+		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
+		setContentPane(contentPane);
+		contentPane.setLayout(null);
+		
+		JLabel lblCnpj = new JLabel("Nome:");
+		lblCnpj.setBounds(12, 51, 80, 15);
+		lblCnpj.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblCnpj);
+		
+		JLabel lblNome = new JLabel("Idade_min:");
+		lblNome.setBounds(12, 98, 114, 15);
+		lblNome.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblNome);
+		
+		JLabel lblEndereo = new JLabel("Idade_máx:");
+		lblEndereo.setBounds(12, 148, 60, 15);
+		lblEndereo.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblEndereo);
+		
+		JLabel lblResponsvel = new JLabel("Sexo:");
+		lblResponsvel.setBounds(12, 193, 80, 15);
+		lblResponsvel.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblResponsvel);
+		
+		textField = new JTextField();
+		textField.setBounds(115, 49, 114, 19);
+		contentPane.add(textField);
+		textField.setColumns(10);
+		
+		textField_1 = new JTextField();
+		textField_1.setBounds(115, 96, 114, 19);
+		contentPane.add(textField_1);
+		textField_1.setColumns(10);
+		
+		textField_2 = new JTextField();
+		textField_2.setFont(new Font("Ubuntu", Font.PLAIN, 12));
+		textField_2.setBounds(115, 146, 114, 19);
+		contentPane.add(textField_2);
+		textField_2.setColumns(10);
+		
+		textField_3 = new JTextField();
+		textField_3.setBounds(115, 191, 114, 19);
+		contentPane.add(textField_3);
+		textField_3.setColumns(10);
+		
+		JButton btnSalvar = new JButton("Salvar");
+		btnSalvar.setBackground(Color.WHITE);
+		btnSalvar.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		btnSalvar.setBounds(308, 223, 117, 25);
+		contentPane.add(btnSalvar);
+		btnSalvar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				             PublicoAlvo e = new PublicoAlvo();
+				             e.setIdade_min(Integer.parseInt(textField_1.getText()));
+				             e.setIdade_max(Integer.parseInt(textField_2.getText()));
+				             e.setNome(textField.getText());
+				             e.setSexo(textField_3.getText());
+				             PublicoAlvoDaoImpl dao = new PublicoAlvoDaoImpl();
+				             dao.insert(e);
+				             try {
+								parent.atualizaTabela();
+							} catch (SQLException e1) {
+								// TODO Auto-generated catch block
+								e1.printStackTrace();
+							}
+				             dispose();
+				             
+
+				      }  
+				   }  
+				);
+		
+	}
+
+}
diff --git a/src/empresa/janelas/publicoAlvojanelas/PublicoAlvoPrincipal.java b/src/empresa/janelas/publicoAlvojanelas/PublicoAlvoPrincipal.java
new file mode 100644
index 0000000000000000000000000000000000000000..85528b1c427e2acfb01eafa37338a00d3e77726a
--- /dev/null
+++ b/src/empresa/janelas/publicoAlvojanelas/PublicoAlvoPrincipal.java
@@ -0,0 +1,158 @@
+package empresa.janelas.publicoAlvojanelas;
+
+import java.awt.Color;
+import java.awt.EventQueue;
+import java.awt.Font;
+import java.awt.SystemColor;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import java.sql.SQLException;
+
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.JPanel;
+import javax.swing.JScrollPane;
+import javax.swing.JTable;
+import javax.swing.SwingConstants;
+import javax.swing.border.EmptyBorder;
+
+import empresa.publicoAlvo.PublicoAlvo;
+import empresa.publicoAlvo.dao.PublicoAlvoDaoImpl;
+
+import javax.swing.UIManager;
+
+public class PublicoAlvoPrincipal extends JFrame {
+
+	private static final long serialVersionUID = 1L;
+	private JPanel contentPane;
+	private JTable table;
+	private JButton btnEditar; 
+	private int linhaSelecionada;
+	private JButton btnExcluir;
+	private PublicoAlvo publico;
+	private JButton btnNewButton;
+	private PublicoAlvoCadastrar cadastro;
+	private PublicoTableModel tm ;
+
+	/**
+	 * Launch the application.
+	 */
+	public static void main(String[] args) {
+		EventQueue.invokeLater(new Runnable() {
+			public void run() {
+				try {
+					PublicoAlvoPrincipal frame = new PublicoAlvoPrincipal();
+					frame.setVisible(true);
+				} catch (Exception e) {
+					e.printStackTrace();
+				}
+			}
+		});
+	}
+
+	/**
+	 * Create the frame.
+	 * @throws SQLException 
+	 */
+	public PublicoAlvoPrincipal() throws SQLException {
+		setBackground(UIManager.getColor("Button.focus"));
+		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+		setBounds(200, 200, 550, 400);
+		contentPane = new JPanel();
+		contentPane.setBackground(UIManager.getColor("Button.darkShadow"));
+		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
+		setContentPane(contentPane);
+		
+		JButton btnCadastrar = new JButton("Novo");
+		btnCadastrar.setBounds(5, 35, 96, 26);
+		btnCadastrar.setFont(new Font("Ubuntu", Font.BOLD, 13));
+		btnCadastrar.setBackground(SystemColor.text);
+		btnCadastrar.setVerticalAlignment(SwingConstants.BOTTOM);
+		cadastro = new PublicoAlvoCadastrar(this);
+		btnCadastrar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				    	  cadastro.setVisible(true);
+				    	 
+				      }  
+				   }  
+				);
+		btnEditar = new JButton("Cadastrar ");
+		btnEditar.setBackground(Color.WHITE);
+		btnEditar.setBounds(251, 36, 117, 25);
+		btnEditar.setEnabled(false);
+		btnEditar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){ 
+				    	  
+				      }  
+				   }  
+				);
+		contentPane.add(btnEditar);
+		
+		btnExcluir = new JButton("Excluir");
+		btnExcluir.setBackground(Color.WHITE);
+		btnExcluir.setBounds(400, 36, 117, 25);
+		btnExcluir.setEnabled(false);
+		contentPane.add(btnExcluir);
+		contentPane.setLayout(null);
+		btnExcluir.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				    	  PublicoAlvoDaoImpl dao = new PublicoAlvoDaoImpl();
+				    	  dao.delete(publico);
+				    	  try {
+							atualiza();
+						} catch (SQLException e) {
+							e.printStackTrace();
+						}
+				      
+				      }  
+				   }  
+				);
+		contentPane.add(btnCadastrar);
+		atualizaTabela();
+		
+		
+	}
+	public void atualizaTabela() throws SQLException {
+		PublicoAlvoDaoImpl dao = new PublicoAlvoDaoImpl();
+		tm = new PublicoTableModel(dao);
+		
+		table = new JTable(tm);
+		table.addMouseListener(new MouseAdapter(){
+			public void mouseClicked(MouseEvent e){
+				linhaSelecionada = table.getSelectedRow();
+				publico = tm.getPublico(linhaSelecionada);
+				btnExcluir.setEnabled(true);
+				btnEditar.setEnabled(true);
+			}
+		});
+		JScrollPane scroll = new JScrollPane(table);
+		scroll.setBounds(15, 73, 540, 260);
+		scroll.setVisible(true);
+		contentPane.add(scroll);
+		
+		btnNewButton = new JButton("Fechar");
+		btnNewButton.setBackground(Color.WHITE);
+		btnNewButton.setBounds(421, 345, 117, 25);
+		btnNewButton.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){
+				    	  dispose();
+				      
+				      }  
+				   }  
+				);
+		contentPane.add(btnNewButton);
+		
+	}
+	public void atualiza() throws SQLException{
+		 	dispose();
+	        setVisible(false);
+	        PublicoAlvoPrincipal frame = new PublicoAlvoPrincipal();
+	        frame.setVisible(true);
+	}
+}
diff --git a/src/empresa/janelas/publicoAlvojanelas/PublicoTableModel.java b/src/empresa/janelas/publicoAlvojanelas/PublicoTableModel.java
new file mode 100644
index 0000000000000000000000000000000000000000..4dc19d3465595b7cf0a9975280f85b39b756d747
--- /dev/null
+++ b/src/empresa/janelas/publicoAlvojanelas/PublicoTableModel.java
@@ -0,0 +1,59 @@
+package empresa.janelas.publicoAlvojanelas;
+
+import java.sql.SQLException;
+import java.util.Arrays;
+import java.util.List;
+
+import javax.swing.table.AbstractTableModel;
+
+import empresa.publicoAlvo.PublicoAlvo;
+import empresa.publicoAlvo.dao.PublicoAlvoDaoImpl;
+
+
+public class PublicoTableModel extends AbstractTableModel{
+
+		private static final long serialVersionUID = 1L;
+		private List<PublicoAlvo> publicos;
+		private List<String> colunas;
+		// Construtores
+	
+		public PublicoTableModel(PublicoAlvoDaoImpl pdao) throws SQLException  {
+			PublicoAlvoDaoImpl dao = pdao;
+			this.publicos = dao.retornaTodas();
+			colunas = Arrays.asList("Nome", "Idade Min", "Idade Max", "Sexo", "Obeservação");
+		}
+		// Métodos Geters
+		public List<String> getColunas() {
+			return colunas;
+		}
+		// Retorna o numero de colunas no modelo
+		public int getColumnCount() {
+			return colunas.size();
+		}
+		// Retorna o numero de linhas existentes no modelo
+		public int getRowCount() {
+			return publicos.size();
+		}
+		public String getColumnName(int i) {
+			return colunas.get(i);
+		}
+		// Obtem o valor na linha e coluna
+		public Object getValueAt(int r, int c) {
+			PublicoAlvo e = publicos.get(r);
+			switch (c) {
+			case 0:
+				return e.getNome();
+			case 1:
+				return e.getIdade_min();
+			case 2:
+				return e.getIdade_max();
+			case 3:
+				return e.getSexo();
+			}
+			return null;
+		}
+		public PublicoAlvo getPublico(int linha){
+			PublicoAlvo e = publicos.get(linha);
+			return e;
+		}
+}
diff --git a/src/empresa/janelas/publicoAlvojanelas/copy/.gitignore b/src/empresa/janelas/publicoAlvojanelas/copy/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..552e0fe726748e580bfa0b414b29838f08207eec
--- /dev/null
+++ b/src/empresa/janelas/publicoAlvojanelas/copy/.gitignore
@@ -0,0 +1,15 @@
+/PublicoAlvo$1.class
+/PublicoAlvo.class
+/PublicoAlvo$2.class
+/EmpresaTableModel.class
+/PublicoTableModel.class
+/PublicoAlvoPrincipal.class
+/PublicoAlvoPrincipal$1.class
+/PublicoAlvoPrincipal$2.class
+/PublicoAlvoPrincipal$3.class
+/PublicoAlvoPrincipal$4.class
+/PublicoAlvoPrincipal$5.class
+/PublicoAlvoCadastrar$1.class
+/PublicoAlvoCadastrar.class
+/PublicoAlvoCadastrar$2.class
+/PublicoAlvoPrincipal$6.class
diff --git a/src/empresa/janelas/publicoAlvojanelas/copy/PublicoAlvoCadastrar.java b/src/empresa/janelas/publicoAlvojanelas/copy/PublicoAlvoCadastrar.java
new file mode 100644
index 0000000000000000000000000000000000000000..a5f074358b82ecb53bf2fa01d117bd312826e8d5
--- /dev/null
+++ b/src/empresa/janelas/publicoAlvojanelas/copy/PublicoAlvoCadastrar.java
@@ -0,0 +1,128 @@
+package empresa.janelas.publicoAlvojanelas.copy;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.EventQueue;
+import java.awt.Font;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.sql.SQLException;
+
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JTextField;
+import javax.swing.UIManager;
+import javax.swing.border.EmptyBorder;
+
+import empresa.Empresa;
+import empresa.dao.EmpresaDAOImpl;
+import empresa.janelas.EmpresaPrincipal;
+import empresa.publicoAlvo.PublicoAlvo;
+import empresa.publicoAlvo.dao.PublicoAlvoDaoImpl;
+
+public class PublicoAlvoCadastrar extends JFrame {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	private JPanel contentPane;
+	private JTextField textField;
+	private JTextField textField_1;
+	private JTextField textField_2;
+	private JTextField textField_3;
+	private PublicoAlvoPrincipal parent;
+
+	/**
+	 * Launch the application.
+	 */
+
+
+	/**
+	 * Create the frame.
+	 */
+	public PublicoAlvoCadastrar(PublicoAlvoPrincipal p) {
+		parent=p;
+		setBackground(UIManager.getColor("CheckBox.focus"));
+		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+		setBounds(100, 100, 450, 300);
+		contentPane = new JPanel();
+		contentPane.setBackground(UIManager.getColor("Button.darkShadow"));
+		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
+		setContentPane(contentPane);
+		contentPane.setLayout(null);
+		
+		JLabel lblCnpj = new JLabel("Nome:");
+		lblCnpj.setBounds(12, 51, 80, 15);
+		lblCnpj.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblCnpj);
+		
+		JLabel lblNome = new JLabel("Idade_min:");
+		lblNome.setBounds(12, 98, 114, 15);
+		lblNome.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblNome);
+		
+		JLabel lblEndereo = new JLabel("Idade_máx:");
+		lblEndereo.setBounds(12, 148, 60, 15);
+		lblEndereo.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblEndereo);
+		
+		JLabel lblResponsvel = new JLabel("Sexo:");
+		lblResponsvel.setBounds(12, 193, 80, 15);
+		lblResponsvel.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblResponsvel);
+		
+		textField = new JTextField();
+		textField.setBounds(115, 49, 114, 19);
+		contentPane.add(textField);
+		textField.setColumns(10);
+		
+		textField_1 = new JTextField();
+		textField_1.setBounds(115, 96, 114, 19);
+		contentPane.add(textField_1);
+		textField_1.setColumns(10);
+		
+		textField_2 = new JTextField();
+		textField_2.setFont(new Font("Ubuntu", Font.PLAIN, 12));
+		textField_2.setBounds(115, 146, 114, 19);
+		contentPane.add(textField_2);
+		textField_2.setColumns(10);
+		
+		textField_3 = new JTextField();
+		textField_3.setBounds(115, 191, 114, 19);
+		contentPane.add(textField_3);
+		textField_3.setColumns(10);
+		
+		JButton btnSalvar = new JButton("Salvar");
+		btnSalvar.setBackground(Color.WHITE);
+		btnSalvar.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		btnSalvar.setBounds(308, 223, 117, 25);
+		contentPane.add(btnSalvar);
+		btnSalvar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				             PublicoAlvo e = new PublicoAlvo();
+				             e.setIdade_min(Integer.parseInt(textField_1.getText()));
+				             e.setIdade_max(Integer.parseInt(textField_2.getText()));
+				             e.setNome(textField.getText());
+				             e.setSexo(textField_3.getText());
+				             PublicoAlvoDaoImpl dao = new PublicoAlvoDaoImpl();
+				             dao.insert(e);
+				             try {
+								parent.atualizaTabela();
+							} catch (SQLException e1) {
+								// TODO Auto-generated catch block
+								e1.printStackTrace();
+							}
+				             dispose();
+				             
+
+				      }  
+				   }  
+				);
+		
+	}
+
+}
diff --git a/src/empresa/janelas/publicoAlvojanelas/copy/PublicoAlvoPrincipal.java b/src/empresa/janelas/publicoAlvojanelas/copy/PublicoAlvoPrincipal.java
new file mode 100644
index 0000000000000000000000000000000000000000..71c5d3aee24dbf7e131b04a875e2a8a1461c877e
--- /dev/null
+++ b/src/empresa/janelas/publicoAlvojanelas/copy/PublicoAlvoPrincipal.java
@@ -0,0 +1,158 @@
+package empresa.janelas.publicoAlvojanelas.copy;
+
+import java.awt.Color;
+import java.awt.EventQueue;
+import java.awt.Font;
+import java.awt.SystemColor;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import java.sql.SQLException;
+
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.JPanel;
+import javax.swing.JScrollPane;
+import javax.swing.JTable;
+import javax.swing.SwingConstants;
+import javax.swing.border.EmptyBorder;
+
+import empresa.publicoAlvo.PublicoAlvo;
+import empresa.publicoAlvo.dao.PublicoAlvoDaoImpl;
+
+import javax.swing.UIManager;
+
+public class PublicoAlvoPrincipal extends JFrame {
+
+	private static final long serialVersionUID = 1L;
+	private JPanel contentPane;
+	private JTable table;
+	private JButton btnEditar; 
+	private int linhaSelecionada;
+	private JButton btnExcluir;
+	private PublicoAlvo publico;
+	private JButton btnNewButton;
+	private PublicoTableModel tm;
+	private PublicoAlvoCadastrar cadastro ;
+
+	/**
+	 * Launch the application.
+	 */
+	public static void main(String[] args) {
+		EventQueue.invokeLater(new Runnable() {
+			public void run() {
+				try {
+					PublicoAlvoPrincipal frame = new PublicoAlvoPrincipal();
+					frame.setVisible(true);
+				} catch (Exception e) {
+					e.printStackTrace();
+				}
+			}
+		});
+	}
+
+	/**
+	 * Create the frame.
+	 * @throws SQLException 
+	 */
+	public PublicoAlvoPrincipal() throws SQLException {
+		setBackground(UIManager.getColor("Button.focus"));
+		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+		setBounds(200, 200, 550, 400);
+		contentPane = new JPanel();
+		contentPane.setBackground(UIManager.getColor("Button.darkShadow"));
+		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
+		setContentPane(contentPane);
+		
+		JButton btnCadastrar = new JButton("Novo");
+		btnCadastrar.setBounds(5, 35, 96, 26);
+		btnCadastrar.setFont(new Font("Ubuntu", Font.BOLD, 13));
+		btnCadastrar.setBackground(SystemColor.text);
+		btnCadastrar.setVerticalAlignment(SwingConstants.BOTTOM);
+		cadastro = new PublicoAlvoCadastrar(this);
+		btnCadastrar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				    	  cadastro.setVisible(true);
+				    	 
+				      }  
+				   }  
+				);
+		btnEditar = new JButton("Cadastrar ");
+		btnEditar.setBackground(Color.WHITE);
+		btnEditar.setBounds(251, 36, 117, 25);
+		btnEditar.setEnabled(false);
+		btnEditar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){ 
+				    	  
+				      }  
+				   }  
+				);
+		contentPane.add(btnEditar);
+		
+		btnExcluir = new JButton("Excluir");
+		btnExcluir.setBackground(Color.WHITE);
+		btnExcluir.setBounds(400, 36, 117, 25);
+		btnExcluir.setEnabled(false);
+		contentPane.add(btnExcluir);
+		contentPane.setLayout(null);
+		btnExcluir.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				    	  PublicoAlvoDaoImpl dao = new PublicoAlvoDaoImpl();
+				    	  dao.delete(publico);
+				    	  try {
+							atualiza();
+						} catch (SQLException e) {
+							e.printStackTrace();
+						}
+				      
+				      }  
+				   }  
+				);
+		contentPane.add(btnCadastrar);
+		atualizaTabela();
+		
+		
+	}
+	public void atualizaTabela() throws SQLException {
+		PublicoAlvoDaoImpl dao = new PublicoAlvoDaoImpl();
+		tm = new PublicoTableModel(dao);
+		
+		table = new JTable(tm);
+		table.addMouseListener(new MouseAdapter(){
+			public void mouseClicked(MouseEvent e){
+				linhaSelecionada = table.getSelectedRow();
+				publico = tm.getPublico(linhaSelecionada);
+				btnExcluir.setEnabled(true);
+				btnEditar.setEnabled(true);
+			}
+		});
+		JScrollPane scroll = new JScrollPane(table);
+		scroll.setBounds(15, 73, 540, 260);
+		scroll.setVisible(true);
+		contentPane.add(scroll);
+		
+		btnNewButton = new JButton("Fechar");
+		btnNewButton.setBackground(Color.WHITE);
+		btnNewButton.setBounds(421, 345, 117, 25);
+		btnNewButton.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){
+				    	  dispose();
+				      
+				      }  
+				   }  
+				);
+		contentPane.add(btnNewButton);
+		
+	}
+	public void atualiza() throws SQLException{
+		 	dispose();
+	        setVisible(false);
+	        PublicoAlvoPrincipal frame = new PublicoAlvoPrincipal();
+	        frame.setVisible(true);
+	}
+}
diff --git a/src/empresa/janelas/publicoAlvojanelas/copy/PublicoTableModel.java b/src/empresa/janelas/publicoAlvojanelas/copy/PublicoTableModel.java
new file mode 100644
index 0000000000000000000000000000000000000000..3dd3fc60521cda6fb09b294de014f323a8baf32f
--- /dev/null
+++ b/src/empresa/janelas/publicoAlvojanelas/copy/PublicoTableModel.java
@@ -0,0 +1,59 @@
+package empresa.janelas.publicoAlvojanelas.copy;
+
+import java.sql.SQLException;
+import java.util.Arrays;
+import java.util.List;
+
+import javax.swing.table.AbstractTableModel;
+
+import empresa.publicoAlvo.PublicoAlvo;
+import empresa.publicoAlvo.dao.PublicoAlvoDaoImpl;
+
+
+public class PublicoTableModel extends AbstractTableModel{
+
+		private static final long serialVersionUID = 1L;
+		private List<PublicoAlvo> publicos;
+		private List<String> colunas;
+		// Construtores
+	
+		public PublicoTableModel(PublicoAlvoDaoImpl pdao) throws SQLException  {
+			PublicoAlvoDaoImpl dao = pdao;
+			this.publicos = dao.retornaTodas();
+			colunas = Arrays.asList("Nome", "Idade Min", "Idade Max", "Sexo", "Obeservação");
+		}
+		// Métodos Geters
+		public List<String> getColunas() {
+			return colunas;
+		}
+		// Retorna o numero de colunas no modelo
+		public int getColumnCount() {
+			return colunas.size();
+		}
+		// Retorna o numero de linhas existentes no modelo
+		public int getRowCount() {
+			return publicos.size();
+		}
+		public String getColumnName(int i) {
+			return colunas.get(i);
+		}
+		// Obtem o valor na linha e coluna
+		public Object getValueAt(int r, int c) {
+			PublicoAlvo e = publicos.get(r);
+			switch (c) {
+			case 0:
+				return e.getNome();
+			case 1:
+				return e.getIdade_min();
+			case 2:
+				return e.getIdade_max();
+			case 3:
+				return e.getSexo();
+			}
+			return null;
+		}
+		public PublicoAlvo getPublico(int linha){
+			PublicoAlvo e = publicos.get(linha);
+			return e;
+		}
+}
diff --git a/src/empresa/publicoAlvo/.gitignore b/src/empresa/publicoAlvo/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..0370b68a29e6255ddeadf13a74a782d1f12713c3
--- /dev/null
+++ b/src/empresa/publicoAlvo/.gitignore
@@ -0,0 +1 @@
+/PublicoAlvo.class
diff --git a/src/empresa/publicoAlvo/PublicoAlvo.java b/src/empresa/publicoAlvo/PublicoAlvo.java
new file mode 100644
index 0000000000000000000000000000000000000000..01045d22de1e33547f25eac70cb7cfde93da4963
--- /dev/null
+++ b/src/empresa/publicoAlvo/PublicoAlvo.java
@@ -0,0 +1,44 @@
+package empresa.publicoAlvo;
+
+public class PublicoAlvo {
+	private String nome;
+	private int idade_min;
+	private int idade_max;
+	private String sexo;
+	private String observacao;
+	private int id;
+	public String getNome() {
+		return nome;
+	}
+	public void setNome(String nome) {
+		this.nome = nome;
+	}
+	public int getIdade_min() {
+		return idade_min;
+	}
+	public void setIdade_min(int idade_min) {
+		this.idade_min = idade_min;
+	}
+	public int getIdade_max() {
+		return idade_max;
+	}
+	public void setIdade_max(int idade_max) {
+		this.idade_max = idade_max;
+	}
+	public String getSexo() {
+		return sexo;
+	}
+	public void setSexo(String sexo) {
+		this.sexo = sexo;
+	}
+	public String getObservacao() {
+		return observacao;
+	}
+	public void setObservacao(String observacao) {
+		this.observacao = observacao;
+	}
+	public int getId(){
+		return id;
+	}
+
+}
diff --git a/src/empresa/publicoAlvo/dao/.gitignore b/src/empresa/publicoAlvo/dao/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..27711c71f305f95dc9d7f9c62c791dd0f50a30aa
--- /dev/null
+++ b/src/empresa/publicoAlvo/dao/.gitignore
@@ -0,0 +1,3 @@
+/Dao.class
+/PublicoAlvoDaoImpl.class
+/PublicoAlvoDao.class
diff --git a/src/empresa/publicoAlvo/dao/PublicoAlvoDao.java b/src/empresa/publicoAlvo/dao/PublicoAlvoDao.java
new file mode 100644
index 0000000000000000000000000000000000000000..fc5ec28984f92eb2dde9d82ddde94003a49a8d70
--- /dev/null
+++ b/src/empresa/publicoAlvo/dao/PublicoAlvoDao.java
@@ -0,0 +1,11 @@
+package empresa.publicoAlvo.dao;
+
+import java.util.List;
+
+import empresa.publicoAlvo.PublicoAlvo;
+
+public interface PublicoAlvoDao {
+	 public void insert(PublicoAlvo p);
+	 public void delete(PublicoAlvo p);
+	 public List<PublicoAlvo> retornaTodas() ;
+}
diff --git a/src/empresa/publicoAlvo/dao/PublicoAlvoDaoImpl.java b/src/empresa/publicoAlvo/dao/PublicoAlvoDaoImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..8421f73838156471afbe6616cfd52ce410bba7be
--- /dev/null
+++ b/src/empresa/publicoAlvo/dao/PublicoAlvoDaoImpl.java
@@ -0,0 +1,77 @@
+package empresa.publicoAlvo.dao;
+
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.List;
+
+import dao.DaoImpl;
+import empresa.publicoAlvo.PublicoAlvo;
+
+public class PublicoAlvoDaoImpl {
+    public void insert(PublicoAlvo p)
+    {
+    	String sql = "INSERT INTO PUBLICO_ALVO(nome,idade_min,idade_max,sexo, observacao) VALUES(?,?,?,?, ?)";
+    	try {
+    		
+            PreparedStatement pstmt = DaoImpl.getConnection().prepareStatement(sql);
+      	    pstmt.setString(1, p.getNome());
+            pstmt.setInt(2, p.getIdade_min());
+            pstmt.setInt(3, p.getIdade_max());
+            pstmt.setString(4, p.getSexo());
+            pstmt.setString(5, p.getObservacao());
+            pstmt.executeUpdate();
+        
+        }catch (SQLException e) {
+            System.out.println(e.getMessage());
+        }
+    	
+    }
+    public void update(PublicoAlvo p)
+    {
+    	String sql = "UPDATE PUBLICO_ALVO SET nome = '"+ p.getNome()+ "',idade_min = '"+ p.getIdade_min()+ "',idade_max= '"+p.getIdade_max()+  ",sexo='"+p.getSexo()+ "' WHERE ID ="+ p.getId();
+    	try {
+    		
+            PreparedStatement pstmt = DaoImpl.getConnection().prepareStatement(sql);
+            pstmt.executeUpdate();
+        
+        }catch (SQLException e) {
+            System.out.println(e.getMessage());
+        }
+    	
+    }
+    
+    public void delete(PublicoAlvo p)
+    {
+    	String sql = "DELETE FROM PUBLICO_ALVO WHERE publico_alvo.ID ="+p.getId();
+    	try {
+            PreparedStatement pstmt = DaoImpl.getConnection().prepareStatement(sql);
+            pstmt.executeUpdate();
+        
+        }catch (SQLException e) {
+            System.out.println(e.getMessage());
+        }
+    	
+    }
+    public List<PublicoAlvo> retornaTodas() throws SQLException {
+		List<PublicoAlvo> publicos = new ArrayList<PublicoAlvo>();
+		String sql = "select * from publico_alvo";
+			PreparedStatement stmt = DaoImpl.getConnection().prepareStatement(sql);
+			ResultSet rs = stmt.executeQuery();
+			while (rs.next()) {
+				PublicoAlvo p = new PublicoAlvo();
+				p.setIdade_min(rs.getInt("idade_min"));
+				p.setNome(rs.getString("nome"));
+				p.setIdade_max(rs.getInt("idade_max"));
+				p.setSexo(rs.getString("sexo"));
+				p.setObservacao(rs.getString("observacao"));
+				publicos.add(p);
+			
+			}
+			rs.close();
+			stmt.close();
+
+		return publicos;
+	}
+}
diff --git a/src/fornecedor/.gitignore b/src/fornecedor/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..850195df9ca45183fb664ff83b3406ffb8dde30f
--- /dev/null
+++ b/src/fornecedor/.gitignore
@@ -0,0 +1 @@
+/Fornecedor.class
diff --git a/src/fornecedor/Fornecedor.java b/src/fornecedor/Fornecedor.java
new file mode 100644
index 0000000000000000000000000000000000000000..fa6b1f0942b356c9d51bcba19d8ef7a09c0b4fe8
--- /dev/null
+++ b/src/fornecedor/Fornecedor.java
@@ -0,0 +1,33 @@
+package fornecedor;
+
+public class Fornecedor {
+	private int CNPJ;
+	private String nome;
+	private String endereco;
+	private String telefone;
+	public int getCNPJ() {
+		return CNPJ;
+	}
+	public void setCNPJ(int cNPJ) {
+		CNPJ = cNPJ;
+	}
+	public String getNome() {
+		return nome;
+	}
+	public void setNome(String nome) {
+		this.nome = nome;
+	}
+	public String getEndereco() {
+		return endereco;
+	}
+	public void setEndereco(String endereco) {
+		this.endereco = endereco;
+	}
+	public String getTelefone() {
+		return telefone;
+	}
+	public void setTelefone(String telefone) {
+		this.telefone = telefone;
+	}
+
+}
diff --git a/src/fornecedor/dao/.gitignore b/src/fornecedor/dao/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..f4b8b559df6c6765ad2efd9555ec1c6137bc5830
--- /dev/null
+++ b/src/fornecedor/dao/.gitignore
@@ -0,0 +1 @@
+/FornecedorDaoImpl.class
diff --git a/src/fornecedor/dao/FornecedorDaoImpl.java b/src/fornecedor/dao/FornecedorDaoImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..ee597cc0a5b0feac1a69d873c057c94ee5340197
--- /dev/null
+++ b/src/fornecedor/dao/FornecedorDaoImpl.java
@@ -0,0 +1,76 @@
+package fornecedor.dao;
+
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.List;
+
+import dao.DaoImpl;
+import empresa.Empresa;
+import fornecedor.Fornecedor;
+
+public class FornecedorDaoImpl {
+	   public void insert(Fornecedor f)
+	    {
+	    	String sql = "INSERT INTO FORNECEDOR(cnpj,endereco,telefone,nome) VALUES(?,?,?,?)";
+	    	try {
+	    		
+	            PreparedStatement pstmt = DaoImpl.getConnection().prepareStatement(sql);
+	      	    pstmt.setInt(1, f.getCNPJ());
+	            pstmt.setString(2, f.getEndereco());
+	            pstmt.setString(4, f.getNome());
+	            pstmt.setString(3, f.getTelefone());
+	            pstmt.executeUpdate();
+	        
+	        }catch (SQLException e) {
+	            System.out.println(e.getMessage());
+	        }
+	    	
+	    }
+	    public void update(Fornecedor f)
+	    {
+	    	String sql = "UPDATE fornecedor SET nome = '"+ f.getNome()+ "',endereco = '"+ f.getEndereco()+ "',telefone= '"+f.getTelefone()+"' WHERE CNPJ ="+ f.getCNPJ();
+	    	try {
+	    		
+	            PreparedStatement pstmt = DaoImpl.getConnection().prepareStatement(sql);
+	            pstmt.executeUpdate();
+	        
+	        }catch (SQLException e) {
+	            System.out.println(e.getMessage());
+	        }
+	    	
+	    }
+	    
+	    public void delete(Fornecedor f)
+	    {
+	    	String sql = "DELETE FROM FORNECEDOR WHERE FORNECEDOR.CNPJ ="+f.getCNPJ();
+	    	try {
+	            PreparedStatement pstmt = DaoImpl.getConnection().prepareStatement(sql);
+	            pstmt.executeUpdate();
+	        
+	        }catch (SQLException e) {
+	            System.out.println(e.getMessage());
+	        }
+	    	
+	    }
+	    public List<Fornecedor> retornaTodas() throws SQLException {
+			List<Fornecedor> empresas = new ArrayList<Fornecedor>();
+			String sql = "select * from fornecedor";
+				PreparedStatement stmt = DaoImpl.getConnection().prepareStatement(sql);
+				ResultSet rs = stmt.executeQuery();
+				while (rs.next()) {
+					Fornecedor e = new Fornecedor();
+					e.setCNPJ(rs.getInt("CNPJ"));
+					e.setNome(rs.getString("nome"));
+					e.setTelefone(rs.getString("telefone"));
+					e.setEndereco(rs.getString("endereco"));
+					empresas.add(e);
+				
+				}
+				rs.close();
+				stmt.close();
+
+			return empresas;
+		}
+}
diff --git a/src/fornecedor/janela/.gitignore b/src/fornecedor/janela/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..8286c1dfbb9c15f88031bba5ef3a8ea2dd4eb9f9
--- /dev/null
+++ b/src/fornecedor/janela/.gitignore
@@ -0,0 +1,15 @@
+/FornecedorPrincipal$1.class
+/FornecedorPrincipal.class
+/FornecedorPrincipal$2.class
+/EmpresaTableModel.class
+/FornecedorTableModel.class
+/FornecedorPrincipal$3.class
+/FornecedorPrincipal$4.class
+/FornecedorPrincipal$5.class
+/FornecedorPrincipal$6.class
+/FornecedorCadastrar$1.class
+/FornecedorCadastrar.class
+/FornecedorCadastrar$2.class
+/FornecedorCadastrar$3.class
+/FornecedorEditar$1.class
+/FornecedorEditar.class
diff --git a/src/fornecedor/janela/FornecedorCadastrar.java b/src/fornecedor/janela/FornecedorCadastrar.java
new file mode 100644
index 0000000000000000000000000000000000000000..388ce3f1dc93740bf82821f824b7f5af55f5ea30
--- /dev/null
+++ b/src/fornecedor/janela/FornecedorCadastrar.java
@@ -0,0 +1,128 @@
+package fornecedor.janela;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.EventQueue;
+import java.awt.Font;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.sql.SQLException;
+
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JTextField;
+import javax.swing.UIManager;
+import javax.swing.border.EmptyBorder;
+
+import empresa.Empresa;
+import empresa.dao.EmpresaDAOImpl;
+import empresa.janelas.EmpresaPrincipal;
+import empresa.janelas.publicoAlvojanelas.PublicoAlvoPrincipal;
+import fornecedor.Fornecedor;
+import fornecedor.dao.FornecedorDaoImpl;
+import refeicao.janela.RefeicaoPrincipal;
+
+public class FornecedorCadastrar extends JFrame {
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	private JPanel contentPane;
+	private JTextField textField;
+	private JTextField textField_1;
+	private JTextField textField_2;
+	private JTextField textField_3;
+	private FornecedorPrincipal parent;
+
+	/**
+	 * Launch the application.
+	 */
+
+
+	/**
+	 * Create the frame.
+	 */
+	public FornecedorCadastrar(FornecedorPrincipal p) {
+		parent=p;
+		setBackground(UIManager.getColor("CheckBox.focus"));
+		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+		setBounds(100, 100, 450, 300);
+		contentPane = new JPanel();
+		contentPane.setBackground(UIManager.getColor("Button.darkShadow"));
+		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
+		setContentPane(contentPane);
+		contentPane.setLayout(null);
+		
+		JLabel lblCnpj = new JLabel("CNPJ: ");
+		lblCnpj.setBounds(12, 51, 80, 15);
+		lblCnpj.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblCnpj);
+		
+		JLabel lblNome = new JLabel("Nome: ");
+		lblNome.setBounds(12, 98, 40, 15);
+		lblNome.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblNome);
+		
+		JLabel lblEndereo = new JLabel("Endereço: ");
+		lblEndereo.setBounds(12, 148, 60, 15);
+		lblEndereo.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblEndereo);
+		
+		JLabel lblResponsvel = new JLabel("Telefone: ");
+		lblResponsvel.setBounds(12, 193, 80, 15);
+		lblResponsvel.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblResponsvel);
+		
+		textField = new JTextField();
+		textField.setBounds(115, 49, 114, 19);
+		contentPane.add(textField);
+		textField.setColumns(10);
+		
+		textField_1 = new JTextField();
+		textField_1.setBounds(115, 96, 114, 19);
+		contentPane.add(textField_1);
+		textField_1.setColumns(10);
+		
+		textField_2 = new JTextField();
+		textField_2.setFont(new Font("Ubuntu", Font.PLAIN, 12));
+		textField_2.setBounds(115, 146, 114, 19);
+		contentPane.add(textField_2);
+		textField_2.setColumns(10);
+		
+		textField_3 = new JTextField();
+		textField_3.setBounds(115, 191, 114, 19);
+		contentPane.add(textField_3);
+		textField_3.setColumns(10);
+		
+		JButton btnSalvar = new JButton("Salvar");
+		btnSalvar.setBackground(Color.WHITE);
+		btnSalvar.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		btnSalvar.setBounds(308, 223, 117, 25);
+		contentPane.add(btnSalvar);
+		btnSalvar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				             Fornecedor e = new Fornecedor();
+				             e.setCNPJ(Integer.parseInt(textField.getText()));
+				             e.setNome(textField_1.getText());
+				             e.setEndereco(textField_2.getText());
+				             e.setTelefone(textField_3.getText());
+				             FornecedorDaoImpl dao = new FornecedorDaoImpl();
+				             dao.insert(e);
+				             try {
+								parent.atualizaTabela();
+							} catch (SQLException e1) {
+								// TODO Auto-generated catch block
+								e1.printStackTrace();
+							}
+				             dispose();
+				             
+
+				      }  
+				   }  
+				);
+		
+	}
+}
diff --git a/src/fornecedor/janela/FornecedorEditar.java b/src/fornecedor/janela/FornecedorEditar.java
new file mode 100644
index 0000000000000000000000000000000000000000..84581a9e595b16c7b18ea1023df1399f2367552b
--- /dev/null
+++ b/src/fornecedor/janela/FornecedorEditar.java
@@ -0,0 +1,128 @@
+package fornecedor.janela;
+
+import java.awt.BorderLayout;
+import java.awt.EventQueue;
+import java.awt.Font;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.sql.SQLException;
+
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JTextField;
+import javax.swing.UIManager;
+import javax.swing.border.EmptyBorder;
+
+import empresa.Empresa;
+import empresa.dao.EmpresaDAOImpl;
+import empresa.janelas.EmpresaPrincipal;
+import fornecedor.Fornecedor;
+import fornecedor.dao.FornecedorDaoImpl;
+
+public class FornecedorEditar extends JFrame {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	private JPanel contentPane;
+	private JTextField textField;
+	private JTextField textField_1;
+	private JTextField textField_2;
+	private JTextField textField_3;
+	private FornecedorPrincipal parent;
+	private Fornecedor f;
+
+	/**
+	 * Launch the application.
+	 */
+
+
+	/**
+	 * Create the frame.
+	 */
+	public FornecedorEditar(Fornecedor fornecedor, FornecedorPrincipal p) {
+		parent=p;
+		f= fornecedor;
+		setBackground(UIManager.getColor("CheckBox.focus"));
+		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+		setBounds(100, 100, 450, 300);
+		contentPane = new JPanel();
+		contentPane.setBackground(UIManager.getColor("Button.darkShadow"));
+		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
+		setContentPane(contentPane);
+		contentPane.setLayout(null);
+		
+		
+		JLabel lblNome = new JLabel("Nome: ");
+		lblNome.setBounds(12, 98, 40, 15);
+		lblNome.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblNome);
+		
+		JLabel lblEndereo = new JLabel("Endereço: ");
+		lblEndereo.setBounds(12, 148, 60, 15);
+		lblEndereo.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblEndereo);
+		
+		JLabel lblResponsvel = new JLabel("Telefone: ");
+		lblResponsvel.setBounds(12, 193, 80, 15);
+		lblResponsvel.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblResponsvel);
+		
+		textField_1 = new JTextField();
+		textField_1.setBounds(115, 96, 114, 19);
+		contentPane.add(textField_1);
+		textField_1.setColumns(10);
+		
+		textField_2 = new JTextField();
+		textField_2.setFont(new Font("Ubuntu", Font.PLAIN, 12));
+		textField_2.setBounds(115, 146, 114, 19);
+		contentPane.add(textField_2);
+		textField_2.setColumns(10);
+		
+		textField_3 = new JTextField();
+		textField_3.setBounds(115, 191, 114, 19);
+		contentPane.add(textField_3);
+		textField_3.setColumns(10);
+		
+
+		if(f != null){
+			textField_2.setText(f.getEndereco());
+			textField_1.setText(f.getNome());
+			textField_3.setText(f.getTelefone());
+		}
+		
+		
+		JButton btnSalvar = new JButton("Salvar");
+		btnSalvar.setBackground(UIManager.getColor("Button.select"));
+		btnSalvar.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		btnSalvar.setBounds(308, 223, 117, 25);
+		contentPane.add(btnSalvar);
+		btnSalvar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				             Fornecedor e = new Fornecedor();
+				             e.setCNPJ(f.getCNPJ());
+				             e.setNome(textField_1.getText());
+				             e.setEndereco(textField_2.getText());
+				             e.setTelefone(textField_3.getText());
+				             FornecedorDaoImpl dao = new FornecedorDaoImpl();
+				             dao.update(e);
+				             try {
+								parent.atualizaTabela();
+							} catch (SQLException e1) {
+								// TODO Auto-generated catch block
+								e1.printStackTrace();
+							}
+				             dispose();
+				             
+
+				      }  
+				   }  
+				);
+		
+	}
+
+}
diff --git a/src/fornecedor/janela/FornecedorPrincipal.java b/src/fornecedor/janela/FornecedorPrincipal.java
new file mode 100644
index 0000000000000000000000000000000000000000..b89a597cd0db04a6b345e6aaa924d6bdc2af4547
--- /dev/null
+++ b/src/fornecedor/janela/FornecedorPrincipal.java
@@ -0,0 +1,174 @@
+package fornecedor.janela;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.EventQueue;
+import java.awt.Font;
+import java.awt.SystemColor;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import java.sql.SQLException;
+
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.JPanel;
+import javax.swing.JScrollPane;
+import javax.swing.JTable;
+import javax.swing.SwingConstants;
+import javax.swing.UIManager;
+import javax.swing.border.EmptyBorder;
+
+import empresa.Empresa;
+import empresa.dao.EmpresaDAOImpl;
+import empresa.janelas.EmpresaCadastro;
+import empresa.janelas.EmpresaEditar;
+import empresa.janelas.EmpresaPrincipal;
+import empresa.janelas.EmpresaTableModel;
+import fornecedor.Fornecedor;
+import fornecedor.dao.FornecedorDaoImpl;
+
+public class FornecedorPrincipal extends JFrame {
+	private static final long serialVersionUID = 1L;
+	private JPanel contentPane;
+	private JTable table;
+	private JButton btnEditar; 
+	private int linhaSelecionada;
+	private JButton btnExcluir;
+	private Fornecedor f;
+	private JButton btnDetalhes;
+	private JButton btnFechar;
+	private FornecedorTableModel tm ;
+	private FornecedorCadastrar fcadastro;
+	private FornecedorPrincipal parent;
+
+	/**
+	 * Launch the application.
+	 */
+	public static void main(String[] args) {
+		EventQueue.invokeLater(new Runnable() {
+			public void run() {
+				try {
+					FornecedorPrincipal frame = new FornecedorPrincipal();
+					frame.setVisible(true);
+				} catch (Exception e) {
+					e.printStackTrace();
+				}
+			}
+		});
+	}
+
+	/**
+	 * Create the frame.
+	 * @throws SQLException 
+	 */
+	public FornecedorPrincipal() throws SQLException {
+		setBackground(UIManager.getColor("Button.focus"));
+		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+		setBounds(200, 200, 550, 400);
+		contentPane = new JPanel();
+		contentPane.setBackground(UIManager.getColor("Button.darkShadow"));
+		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
+		setContentPane(contentPane);
+		
+		JButton btnCadastrar = new JButton("Cadastrar");
+		btnCadastrar.setBounds(5, 35, 96, 26);
+		btnCadastrar.setFont(new Font("Ubuntu", Font.BOLD, 13));
+		btnCadastrar.setBackground(SystemColor.text);
+		btnCadastrar.setVerticalAlignment(SwingConstants.BOTTOM);
+		fcadastro = new FornecedorCadastrar(this);
+		btnCadastrar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				            fcadastro.setVisible(true);
+				      }  
+				   }  
+				);
+		btnEditar = new JButton("Editar");
+		btnEditar.setBackground(Color.WHITE);
+		btnEditar.setBounds(251, 36, 117, 25);
+		btnEditar.setEnabled(false);
+		parent = this;
+		btnEditar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				    	 FornecedorEditar empresaEditar = new FornecedorEditar(f, parent);	 
+				    	 empresaEditar.setVisible(true);
+				      }  
+				   }  
+				);
+		contentPane.add(btnEditar);
+		
+		btnDetalhes = new JButton("Detalhes");
+		btnDetalhes.setBackground(Color.WHITE);
+		btnDetalhes.setBounds(122, 36, 117, 25);
+		btnDetalhes.setEnabled(false);
+		contentPane.add(btnDetalhes);
+		
+		btnFechar = new JButton("Fechar");
+		btnFechar.setBackground(Color.WHITE);
+		btnFechar.setBounds(421, 341, 117, 25);
+		btnFechar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				    	  dispose();
+				      
+				      }  
+				   }  
+				);
+		contentPane.add(btnFechar);
+		
+		btnExcluir = new JButton("Excluir");
+		btnExcluir.setBackground(Color.WHITE);
+		btnExcluir.setBounds(400, 36, 117, 25);
+		btnExcluir.setEnabled(false);
+		contentPane.add(btnExcluir);
+		contentPane.setLayout(null);
+		btnExcluir.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				    	  FornecedorDaoImpl dao = new FornecedorDaoImpl();
+				    	  dao.delete(f);
+				    	  try {
+							atualiza();
+						} catch (SQLException e) {
+							e.printStackTrace();
+						}
+				      
+				      }  
+				   }  
+				);
+		contentPane.add(btnCadastrar);
+		atualizaTabela();
+		
+		
+	}
+	public void atualizaTabela() throws SQLException {
+		FornecedorDaoImpl dao = new FornecedorDaoImpl();
+		tm = new FornecedorTableModel(dao);
+		
+		table = new JTable(tm);
+		table.addMouseListener(new MouseAdapter(){
+			public void mouseClicked(MouseEvent e){
+				linhaSelecionada = table.getSelectedRow();
+				f = tm.getFornecedor(linhaSelecionada);
+				btnExcluir.setEnabled(true);
+				btnEditar.setEnabled(true);
+			}
+		});
+		JScrollPane scroll = new JScrollPane(table);
+		scroll.setBounds(5, 73, 540, 257);
+		scroll.setVisible(true);
+		contentPane.add(scroll);
+		
+		
+	}
+	public void atualiza() throws SQLException{
+		 	dispose();
+	        setVisible(false);
+	        FornecedorPrincipal frame = new FornecedorPrincipal();
+	        frame.setVisible(true);
+	}
+
+}
diff --git a/src/fornecedor/janela/FornecedorTableModel.java b/src/fornecedor/janela/FornecedorTableModel.java
new file mode 100644
index 0000000000000000000000000000000000000000..32479711bc5f9bb558d9f6724b23333641c170b0
--- /dev/null
+++ b/src/fornecedor/janela/FornecedorTableModel.java
@@ -0,0 +1,61 @@
+package fornecedor.janela;
+
+import java.sql.SQLException;
+import java.util.Arrays;
+import java.util.List;
+
+import javax.swing.table.AbstractTableModel;
+
+import empresa.Empresa;
+import empresa.dao.EmpresaDAOImpl;
+import fornecedor.Fornecedor;
+import fornecedor.dao.FornecedorDaoImpl;
+
+public class FornecedorTableModel extends AbstractTableModel{
+
+		private static final long serialVersionUID = 1L;
+		private List<Fornecedor> empresas;
+		private List<String> colunas;
+		// Construtores
+	
+		public FornecedorTableModel(FornecedorDaoImpl empresaDao) throws SQLException  {
+			FornecedorDaoImpl dao = empresaDao;
+			this.empresas = dao.retornaTodas();
+			System.out.println(empresas.size());
+			colunas = Arrays.asList("CNPJ", "Nome", "Endereco", "Telefone");
+		}
+		// Métodos Geters
+		public List<String> getColunas() {
+			return colunas;
+		}
+		// Retorna o numero de colunas no modelo
+		public int getColumnCount() {
+			return colunas.size();
+		}
+		// Retorna o numero de linhas existentes no modelo
+		public int getRowCount() {
+			return empresas.size();
+		}
+		public String getColumnName(int i) {
+			return colunas.get(i);
+		}
+		// Obtem o valor na linha e coluna
+		public Object getValueAt(int r, int c) {
+			Fornecedor e = empresas.get(r);
+			switch (c) {
+			case 0:
+				return e.getCNPJ();
+			case 1:
+				return e.getNome();
+			case 2:
+				return e.getEndereco();
+			case 3:
+				return e.getTelefone();
+			}
+			return null;
+		}
+		public Fornecedor getFornecedor(int linha){
+			Fornecedor e = empresas.get(linha);
+			return e;
+		}
+}
diff --git a/src/main/janela/.gitignore b/src/main/janela/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..4ecd27fdf0e553cbff2efdf451ab71eb1a558dd8
--- /dev/null
+++ b/src/main/janela/.gitignore
@@ -0,0 +1,4 @@
+/Main$1.class
+/Main.class
+/Main$2.class
+/Main$3.class
diff --git a/src/main/janela/Main.java b/src/main/janela/Main.java
new file mode 100644
index 0000000000000000000000000000000000000000..ab8fabfd427a71f2fab57d53f99351a3e52de464
--- /dev/null
+++ b/src/main/janela/Main.java
@@ -0,0 +1,89 @@
+package main.janela;
+
+import java.awt.BorderLayout;
+import java.awt.EventQueue;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.sql.SQLException;
+
+import javax.swing.JFrame;
+import javax.swing.JPanel;
+import javax.swing.border.EmptyBorder;
+
+import empresa.janelas.EmpresaPrincipal;
+import fornecedor.janela.FornecedorPrincipal;
+
+import javax.swing.UIManager;
+import javax.swing.JButton;
+import java.awt.Color;
+
+public class Main extends JFrame {
+
+	private JPanel contentPane;
+
+	/**
+	 * Launch the application.
+	 */
+	public static void main(String[] args) {
+		EventQueue.invokeLater(new Runnable() {
+			public void run() {
+				try {
+					Main frame = new Main();
+					frame.setVisible(true);
+				} catch (Exception e) {
+					e.printStackTrace();
+				}
+			}
+		});
+	}
+
+	/**
+	 * Create the frame.
+	 */
+	public Main() {
+		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+		setBounds(100, 100, 450, 300);
+		contentPane = new JPanel();
+		contentPane.setBackground(UIManager.getColor("Button.darkShadow"));
+		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
+		setContentPane(contentPane);
+		contentPane.setLayout(null);
+		
+		JButton btnEmpresa = new JButton("Empresa");
+		btnEmpresa.setBackground(Color.WHITE);
+		btnEmpresa.setBounds(12, 35, 117, 25);
+		contentPane.add(btnEmpresa);
+		btnEmpresa.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				    	  EmpresaPrincipal empresaPrincipal;
+						try {
+							empresaPrincipal = new EmpresaPrincipal();
+							empresaPrincipal.setVisible(true);
+						} catch (SQLException e) {
+							e.printStackTrace();
+						}
+				      }  
+				   }  
+				);
+		
+		JButton btnFornecedor = new JButton("Fornecedor");
+		btnFornecedor.setBackground(Color.WHITE);
+		btnFornecedor.setBounds(147, 35, 117, 25);
+		btnFornecedor.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				    	  FornecedorPrincipal fornecedorPrincipal;
+						try {
+							fornecedorPrincipal = new FornecedorPrincipal();
+							fornecedorPrincipal.setVisible(true);
+						} catch (SQLException e) {
+							e.printStackTrace();
+						}
+				      }  
+				   }  
+				);
+		contentPane.add(btnFornecedor);
+	}
+
+}
diff --git a/src/refeicao/.gitignore b/src/refeicao/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..9a8fd3c19184538895bd6e835a76e9e25e63d84c
--- /dev/null
+++ b/src/refeicao/.gitignore
@@ -0,0 +1,2 @@
+/Refeicoes.class
+/Refeicao.class
diff --git a/src/refeicao/Refeicao.java b/src/refeicao/Refeicao.java
new file mode 100644
index 0000000000000000000000000000000000000000..8741c22dc9c4b58bff6276647d2e6ec8131883e6
--- /dev/null
+++ b/src/refeicao/Refeicao.java
@@ -0,0 +1,19 @@
+package refeicao;
+
+public class Refeicao {
+	private String refeicao;
+	private int quantidadeClientes;
+	public String getRefeicao() {
+		return refeicao;
+	}
+	public void setRefeicao(String refeicao) {
+		this.refeicao = refeicao;
+	}
+	public int getQuantidadeClientes() {
+		return quantidadeClientes;
+	}
+	public void setQuantidadeClientes(int quantidadeClientes) {
+		this.quantidadeClientes = quantidadeClientes;
+	} 
+
+}
diff --git a/src/refeicao/dao/.gitignore b/src/refeicao/dao/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..d947bd2d83d4c299cb656cc03fc0e4351327df80
--- /dev/null
+++ b/src/refeicao/dao/.gitignore
@@ -0,0 +1,2 @@
+/RefeicaoDaoImpl.class
+/RefeicaoDao.class
diff --git a/src/refeicao/dao/RefeicaoDao.java b/src/refeicao/dao/RefeicaoDao.java
new file mode 100644
index 0000000000000000000000000000000000000000..c216ae52fde340a4a05b87ab5eeadb7b08428e18
--- /dev/null
+++ b/src/refeicao/dao/RefeicaoDao.java
@@ -0,0 +1,5 @@
+package refeicao.dao;
+
+public interface RefeicaoDao {
+
+}
diff --git a/src/refeicao/dao/RefeicaoDaoImpl.java b/src/refeicao/dao/RefeicaoDaoImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..98b91d1c13cbda13e2e2a038347a9b0f26efc994
--- /dev/null
+++ b/src/refeicao/dao/RefeicaoDaoImpl.java
@@ -0,0 +1,46 @@
+package refeicao.dao;
+
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.List;
+
+import dao.DaoImpl;
+import refeicao.Refeicao;
+
+
+public class RefeicaoDaoImpl {
+    public void insert(Refeicao r)
+    {
+    	String sql = "INSERT INTO refeicao(nome,qtd_media_clientes) VALUES(?,?)";
+    	try {
+    		
+            PreparedStatement pstmt = DaoImpl.getConnection().prepareStatement(sql);
+            pstmt.setString(1, r.getRefeicao());
+            pstmt.setInt(2, r.getQuantidadeClientes());
+            pstmt.executeUpdate();
+        
+        }catch (SQLException e) {
+            System.out.println(e.getMessage());
+        }
+    	
+    }
+    public List<Refeicao> retornaTodas() throws SQLException {
+		List<Refeicao> empresas = new ArrayList<Refeicao>();
+		String sql = "select * from refeicao";
+			PreparedStatement stmt = DaoImpl.getConnection().prepareStatement(sql);
+			ResultSet rs = stmt.executeQuery();
+			while (rs.next()) {
+				Refeicao e = new Refeicao();
+				e.setRefeicao(rs.getString("nome"));
+				e.setQuantidadeClientes(rs.getInt("qtd_media_clientes"));
+				empresas.add(e);
+			
+			}
+			rs.close();
+			stmt.close();
+
+		return empresas;
+	}
+}
diff --git a/src/refeicao/janela/.gitignore b/src/refeicao/janela/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..f1f299ed7f5832534b6c280a5a390a70c7b64ce3
--- /dev/null
+++ b/src/refeicao/janela/.gitignore
@@ -0,0 +1,11 @@
+/RefeicaoPrincipal$1.class
+/RefeicaoPrincipal.class
+/RefeicaoCadastro$1.class
+/RefeicaoCadastro.class
+/RefeicaoPrincipal$2.class
+/PublicoTableModel.class
+/RefeicaoTableModel.class
+/RefeicaoPrincipal$3.class
+/RefeicaoPrincipal$4.class
+/RefeicaoPrincipal$5.class
+/RefeicaoCadastro$2.class
diff --git a/src/refeicao/janela/RefeicaoCadastro.java b/src/refeicao/janela/RefeicaoCadastro.java
new file mode 100644
index 0000000000000000000000000000000000000000..bb85fb8614ff8204e91ed140696b720e867120b1
--- /dev/null
+++ b/src/refeicao/janela/RefeicaoCadastro.java
@@ -0,0 +1,101 @@
+package refeicao.janela;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.EventQueue;
+import java.awt.Font;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.sql.SQLException;
+
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JTextField;
+import javax.swing.UIManager;
+import javax.swing.border.EmptyBorder;
+
+import refeicao.Refeicao;
+import refeicao.dao.RefeicaoDaoImpl;
+
+public class RefeicaoCadastro extends JFrame {
+
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	private JPanel contentPane;
+	private JTextField textField;
+	private JTextField textField_1;
+	private RefeicaoPrincipal parent;
+
+	/**
+	 * Launch the application.
+	 */
+
+
+	/**
+	 * Create the frame.
+	 */
+	public RefeicaoCadastro(RefeicaoPrincipal p) {
+		parent=p;
+		setBackground(UIManager.getColor("CheckBox.focus"));
+		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+		setBounds(100, 100, 450, 300);
+		contentPane = new JPanel();
+		contentPane.setBackground(UIManager.getColor("Button.darkShadow"));
+		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
+		setContentPane(contentPane);
+		contentPane.setLayout(null);
+		
+		JLabel lblCnpj = new JLabel("Nome:");
+		lblCnpj.setBounds(12, 51, 80, 15);
+		lblCnpj.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblCnpj);
+		
+		JLabel lblNome = new JLabel("Quantidade : ");
+		lblNome.setBounds(12, 98, 129, 15);
+		lblNome.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		contentPane.add(lblNome);
+		
+		textField = new JTextField();
+		textField.setBounds(115, 49, 114, 19);
+		contentPane.add(textField);
+		textField.setColumns(10);
+		
+		textField_1 = new JTextField();
+		textField_1.setBounds(115, 96, 114, 19);
+		contentPane.add(textField_1);
+		textField_1.setColumns(10);
+		
+		JButton btnSalvar = new JButton("Salvar");
+		btnSalvar.setBackground(Color.WHITE);
+		btnSalvar.setFont(new Font("Ubuntu", Font.BOLD, 12));
+		btnSalvar.setBounds(308, 223, 117, 25);
+		contentPane.add(btnSalvar);
+		btnSalvar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				             Refeicao e = new Refeicao();
+				             e.setRefeicao(textField.getText());
+				             e.setQuantidadeClientes(Integer.parseInt(textField_1.getText()));
+				             RefeicaoDaoImpl dao = new RefeicaoDaoImpl();
+				             dao.insert(e);
+				             try {
+								parent.atualizaTabela();
+							} catch (SQLException e1) {
+								// TODO Auto-generated catch block
+								e1.printStackTrace();
+							}
+				             dispose();
+				             
+
+				      }  
+				   }  
+				);
+		
+	}
+
+}
diff --git a/src/refeicao/janela/RefeicaoPrincipal.java b/src/refeicao/janela/RefeicaoPrincipal.java
new file mode 100644
index 0000000000000000000000000000000000000000..e50daf6f29eebb79ce91a3191f89ce781db6cbad
--- /dev/null
+++ b/src/refeicao/janela/RefeicaoPrincipal.java
@@ -0,0 +1,142 @@
+package refeicao.janela;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.EventQueue;
+import java.awt.Font;
+import java.awt.SystemColor;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import java.sql.SQLException;
+
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.JPanel;
+import javax.swing.JScrollPane;
+import javax.swing.JTable;
+import javax.swing.SwingConstants;
+import javax.swing.UIManager;
+import javax.swing.border.EmptyBorder;
+
+import empresa.janelas.publicoAlvojanelas.PublicoAlvoCadastrar;
+import empresa.janelas.publicoAlvojanelas.PublicoAlvoPrincipal;
+import empresa.janelas.publicoAlvojanelas.PublicoTableModel;
+import empresa.publicoAlvo.PublicoAlvo;
+import empresa.publicoAlvo.dao.PublicoAlvoDaoImpl;
+import refeicao.Refeicao;
+import refeicao.dao.RefeicaoDaoImpl;
+
+public class RefeicaoPrincipal extends JFrame {
+
+	private static final long serialVersionUID = 1L;
+	private JPanel contentPane;
+	private JTable table;
+	private JButton btnEditar; 
+	private int linhaSelecionada;
+	private JButton btnExcluir;
+	private Refeicao refeicao;
+	private RefeicaoCadastro cadastro;
+	private RefeicaoTableModel tm;
+
+	/**
+	 * Launch the application.
+	 */
+	public static void main(String[] args) {
+		EventQueue.invokeLater(new Runnable() {
+			public void run() {
+				try {
+					RefeicaoPrincipal frame = new RefeicaoPrincipal();
+					frame.setVisible(true);
+				} catch (Exception e) {
+					e.printStackTrace();
+				}
+			}
+		});
+	}
+
+	/**
+	 * Create the frame.
+	 * @throws SQLException 
+	 */
+	public RefeicaoPrincipal() throws SQLException {
+		setBackground(UIManager.getColor("Button.focus"));
+		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+		setBounds(200, 200, 550, 400);
+		contentPane = new JPanel();
+		contentPane.setBackground(UIManager.getColor("Button.darkShadow"));
+		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
+		setContentPane(contentPane);
+		
+		JButton btnCadastrar = new JButton("Novo");
+		btnCadastrar.setBounds(5, 35, 96, 26);
+		btnCadastrar.setFont(new Font("Ubuntu", Font.BOLD, 13));
+		btnCadastrar.setBackground(SystemColor.text);
+		btnCadastrar.setVerticalAlignment(SwingConstants.BOTTOM);
+		cadastro = new RefeicaoCadastro(this);
+		btnCadastrar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				    	  cadastro.setVisible(true);
+				    	 
+				      }  
+				   }  
+				);
+		btnEditar = new JButton("Cadastrar ");
+		btnEditar.setBackground(Color.WHITE);
+		btnEditar.setBounds(251, 36, 117, 25);
+		btnEditar.setEnabled(false);
+		btnEditar.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){ 
+				    	  
+				      }  
+				   }  
+				);
+		contentPane.add(btnEditar);
+		
+		btnExcluir = new JButton("Excluir");
+		btnExcluir.setBackground(Color.WHITE);
+		btnExcluir.setBounds(400, 36, 117, 25);
+		btnExcluir.setEnabled(false);
+		contentPane.add(btnExcluir);
+		contentPane.setLayout(null);
+		btnExcluir.addActionListener(  
+				   new ActionListener(){  
+				      public void actionPerformed(ActionEvent evento){  
+				      
+				      }  
+				   }  
+				);
+		contentPane.add(btnCadastrar);
+		atualizaTabela();
+		
+		
+	}
+	public void atualizaTabela() throws SQLException {
+		RefeicaoDaoImpl dao = new RefeicaoDaoImpl();
+		tm = new RefeicaoTableModel(dao);
+		
+		table = new JTable(tm);
+		table.addMouseListener(new MouseAdapter(){
+			public void mouseClicked(MouseEvent e){
+				linhaSelecionada = table.getSelectedRow();
+				refeicao = tm.getRefeicao(linhaSelecionada);
+				btnExcluir.setEnabled(true);
+				btnEditar.setEnabled(true);
+			}
+		});
+		JScrollPane scroll = new JScrollPane(table);
+		scroll.setBounds(5, 80, 540, 300);
+		scroll.setVisible(true);
+		contentPane.add(scroll);
+		
+	}
+	public void atualiza() throws SQLException{
+		 	dispose();
+	        setVisible(false);
+	        RefeicaoPrincipal frame = new RefeicaoPrincipal();
+	        frame.setVisible(true);
+	}
+}
diff --git a/src/refeicao/janela/RefeicaoTableModel.java b/src/refeicao/janela/RefeicaoTableModel.java
new file mode 100644
index 0000000000000000000000000000000000000000..b8630cb519099fdefba3da1e4c316d479eb98d95
--- /dev/null
+++ b/src/refeicao/janela/RefeicaoTableModel.java
@@ -0,0 +1,57 @@
+package refeicao.janela;
+
+import java.sql.SQLException;
+import java.util.Arrays;
+import java.util.List;
+
+import javax.swing.table.AbstractTableModel;
+
+import empresa.publicoAlvo.PublicoAlvo;
+import empresa.publicoAlvo.dao.PublicoAlvoDaoImpl;
+import refeicao.Refeicao;
+import refeicao.dao.RefeicaoDaoImpl;
+
+
+public class RefeicaoTableModel extends AbstractTableModel{
+
+		private static final long serialVersionUID = 1L;
+		private List<Refeicao> publicos;
+		private List<String> colunas;
+		// Construtores
+	
+		public RefeicaoTableModel(RefeicaoDaoImpl pdao) throws SQLException  {
+			RefeicaoDaoImpl dao = pdao;
+			this.publicos = dao.retornaTodas();
+			colunas = Arrays.asList("Nome", "Quantidade clientes");
+		}
+		// Métodos Geters
+		public List<String> getColunas() {
+			return colunas;
+		}
+		// Retorna o numero de colunas no modelo
+		public int getColumnCount() {
+			return colunas.size();
+		}
+		// Retorna o numero de linhas existentes no modelo
+		public int getRowCount() {
+			return publicos.size();
+		}
+		public String getColumnName(int i) {
+			return colunas.get(i);
+		}
+		// Obtem o valor na linha e coluna
+		public Object getValueAt(int r, int c) {
+			Refeicao e = publicos.get(r);
+			switch (c) {
+			case 0:
+				return e.getRefeicao();
+			case 1:
+				return e.getQuantidadeClientes();
+			}
+			return null;
+		}
+		public Refeicao getRefeicao(int linha){
+			Refeicao e = publicos.get(linha);
+			return e;
+		}
+}
diff --git a/src/wbp-meta/org.eclipse.wb.rcp.wbp-palette.xml b/src/wbp-meta/org.eclipse.wb.rcp.wbp-palette.xml
new file mode 100644
index 0000000000000000000000000000000000000000..fdc59665f7bd7e7665d2fc3fd4f9a4716bc78905
--- /dev/null
+++ b/src/wbp-meta/org.eclipse.wb.rcp.wbp-palette.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<palette>
+	<category id="someUniqueId" name="Custom category" description="Category added for project src" open="true">
+		<component class="javax.swing.JButton"/>
+		<component class="javax.swing.JRadioButton" name="Your name" description="You can write any description here."/>
+	</category>
+</palette>
\ No newline at end of file