Escolar Documentos
Profissional Documentos
Cultura Documentos
public Aluno() { } public Aluno(Integer matricula, String nome, String turma, String sexo) { this.matricula = matricula; this.nome = nome; this.turma = turma; this.sexo = sexo; } @Override public String toString() { return matricula + ", " + nome + ", " + turma + ", " + } public Integer getMatricula() { return matricula; } public void setMatricula(Integer matricula) { this.matricula = matricula;
sexo;
} public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public String getTurma() { return turma; } public void setTurma(String turma) { this.turma = turma; } public String getSexo() { return sexo; } public void setSexo(String sexo) { this.sexo = sexo; } @Override public int hashCode() { // // // // // false) } if (this.matricula == null) { return 0; } else { return this.matricula; }
@Override public boolean equals(Object obj) { Aluno a = (Aluno) obj; return this.matricula.equals(a.getMatricula()); } @Override public int compareTo(Aluno o) { return this.matricula.compareTo(o.getMatricula()); } // s para testar public static void main(String[] args) { Aluno a = new Aluno(); System.out.println(a.hashCode()); // zero a = new Aluno(123, "Carminha", "lixo", "vrias vezes por semana"); System.out.println(a.hashCode()); // 123 Aluno a2 = new Aluno(); a2.setMatricula(123);
System.out.println(a.equals(a2)); // true System.out.println("Comparando iguais: " + a.compareTo(a2)); // zero a2.setMatricula(789); System.out.println(a.equals(a2)); // false System.out.println("Comparando a < a2: " + a.compareTo(a2)); // -1 a2.setMatricula(21); System.out.println("Comparando a > a2: " + a.compareTo(a2)); // 1 } }
Aluno:
package entity; import import import import import import import javax.persistence.Column; javax.persistence.Entity; javax.persistence.GeneratedValue; javax.persistence.GenerationType; javax.persistence.Id; javax.persistence.JoinColumn; javax.persistence.ManyToOne;
@Entity public class Aluno implements Comparable<Aluno> { @Id @GeneratedValue(strategy = GenerationType.AUTO) @Column private Integer matricula; @Column(length = 35) private String nome; @Column(length = 10) private String turma; @Column(columnDefinition = "enum('M', 'F', 'I')") private String sexo; // Aluno TEM-UM Curso // Mapeamento da cardinalidade - da classe para o atributo @ManyToOne @JoinColumn(name = "id_curso") private Curso curso; public Aluno() { } public Aluno(Integer matricula, String nome, String turma, String sexo) { this.matricula = matricula; this.nome = nome;
@Override public String toString() { return matricula + ", " + nome + ", " + turma + ", " + sexo; } public Integer getMatricula() { return matricula; } public void setMatricula(Integer matricula) { this.matricula = matricula; } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public String getTurma() { return turma; } public void setTurma(String turma) { this.turma = turma; } public String getSexo() { return sexo; } public void setSexo(String sexo) { this.sexo = sexo; } public Curso getCurso() { return curso; } public void setCurso(Curso curso) { this.curso = curso; } @Override public int hashCode() { // // // // // false) if (this.matricula == null) { return 0; } else { return this.matricula; }
return this.matricula == null ? 0 : this.matricula; } @Override public boolean equals(Object obj) { Aluno a = (Aluno) obj; return this.matricula.equals(a.getMatricula()); } @Override public int compareTo(Aluno o) { return this.matricula.compareTo(o.getMatricula()); } // s para testar public static void main(String[] args) { Aluno a = new Aluno(); System.out.println(a.hashCode()); // zero a = new Aluno(123, "Carminha", "lixo", "vrias vezes por semana"); System.out.println(a.hashCode()); // 123 Aluno a2 = new Aluno(); a2.setMatricula(123); System.out.println(a.equals(a2)); // true System.out.println("Comparando iguais: " + a.compareTo(a2)); // zero a2.setMatricula(789); System.out.println(a.equals(a2)); // false System.out.println("Comparando a < a2: " + a.compareTo(a2)); // -1 a2.setMatricula(21); System.out.println("Comparando a > a2: " + a.compareTo(a2)); // 1 } }
Curso:
package entity; import java.util.List; import import import import javax.persistence.Column; javax.persistence.Entity; javax.persistence.GeneratedValue; javax.persistence.GenerationType;
import javax.persistence.Id; import javax.persistence.OneToMany; @Entity public class Curso { @Id @GeneratedValue(strategy = GenerationType.AUTO) @Column private Integer idCurso; @Column(length = 15) private String nomeCurso; // Curso TEM-MUITOS Alunos @OneToMany(mappedBy = "curso") private List<Aluno> alunos; public Curso() { } public Curso(Integer idCurso, String nomeCurso) { this.idCurso = idCurso; this.nomeCurso = nomeCurso; } @Override public String toString() { return idCurso + ", " + nomeCurso; } public Integer getIdCurso() { return idCurso; } public void setIdCurso(Integer idCurso) { this.idCurso = idCurso; } public String getNomeCurso() { return nomeCurso; } public void setNomeCurso(String nomeCurso) { this.nomeCurso = nomeCurso; } public List<Aluno> getAlunos() { return alunos; } public void setAlunos(List<Aluno> alunos) { this.alunos = alunos; } }
} }
DESC aluno; DESC curso; INSERT INTO curso (nomeCurso) VALUES ('Java'), ('Oracle'), ('Java Games'), ('Struts Advanced'), ('JSF Advanced'); SELECT * FROM curso;
try { sessionFactory = new AnnotationConfiguration().configure( "config/mysql_hibernate.cfg.xml").buildSe ssionFactory(); } catch (Throwable ex) { System.err.println("Initial SessionFactory creation failed." + ex); } } throw new ExceptionInInitializerError(ex);
import entity.Curso; public class CursoDao { Session session; Transaction transaction; Query query; Criteria criteria; @SuppressWarnings("unchecked") public List<Curso> findAll() throws Exception { List<Curso> lista = new ArrayList<Curso>(); session = HibernateUtil.getSessionFactory().openSession(); criteria = session.createCriteria(Curso.class); criteria = criteria.addOrder(Order.asc("nomeCurso")); lista = criteria.list(); session.close(); return lista; } }
import entity.Aluno; public class AlunoDao { Session session; Transaction transaction; Query query; Criteria criteria; public void create(Aluno a) throws Exception { session = HibernateUtil.getSessionFactory().openSession(); transaction = session.beginTransaction(); session.save(a); transaction.commit(); session.close(); } @SuppressWarnings("unchecked") public List<Aluno> findAll() throws Exception { List<Aluno> lista = new ArrayList<Aluno>(); session = HibernateUtil.getSessionFactory().openSession(); query = session.createQuery("from Aluno"); lista = query.list(); session.close(); return lista; }
import java.util.ArrayList; import java.util.List; import javax.faces.application.FacesMessage; import javax.faces.context.FacesContext; import javax.faces.model.SelectItem; import persistence.AlunoDao; import persistence.CursoDao; import entity.Aluno; import entity.Curso; public class ManagedBean { private Aluno aluno; private List<SelectItem> listaCurso; private List<Aluno> listaAlunos; public ManagedBean() { aluno = new Aluno(); aluno.setCurso(new Curso()); } public Aluno getAluno() { return aluno; } public void setAluno(Aluno aluno) { this.aluno = aluno; } public List<SelectItem> getListaCurso() { try { listaCurso = new ArrayList<SelectItem>(); for (Curso c : new CursoDao().findAll()) { listaCurso .add(new SelectItem(c.getIdCurso(), c.getNomeCurso())); } } catch (Exception e) { e.printStackTrace(); } return listaCurso; } public void setListaCurso(List<SelectItem> listaCurso) { this.listaCurso = listaCurso; } public List<Aluno> getListaAlunos() { listaAlunos = new ArrayList<Aluno>(); try { for (Aluno a : new AlunoDao().findAll()) { listaAlunos.add(a); } } catch (Exception e) { e.printStackTrace(); } return listaAlunos; }
public void setListaAlunos(List<Aluno> listaAlunos) { this.listaAlunos = listaAlunos; } public String cadastrar() { FacesContext fc = FacesContext.getCurrentInstance(); try { new AlunoDao().create(aluno); fc.addMessage("form1", new FacesMessage("Gravado com sucesso!")); aluno = new Aluno(); // "limpando" aluno } catch (Exception e) { fc.addMessage("form1", new FacesMessage("Erro: " + e.getMessage())); } return "cadastrar.jsf"; // recarregar a pgina "cadastrar.jsf" } }
continua!
faces-config.xml
<?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN" "http://java.sun.com/dtd/web-facesconfig_1_1.dtd"> <!-- =========== FULL CONFIGURATION FILE ================================== --> <faces-config> <managed-bean> <managed-bean-name>managedBean</managed-bean-name> <managed-bean-class>manager.ManagedBean</managed-bean-class> <managed-bean-scope>request</managed-bean-scope> </managed-bean> </faces-config>
<f:selectItem itemValue="M" itemLabel="Masculino" /> <f:selectItem itemValue="F" itemLabel="Feminino" /> <f:selectItem itemValue="I" itemLabel="Indefinido" /> </h:selectOneRadio> <h:message for="sexo" /> <h:outputText value="Curso:" /> <h:selectOneMenu value="#{managedBean.aluno.curso.idCurso}"> <f:selectItems value="#{managedBean.listaCurso}" /> </h:selectOneMenu> </h:panelGrid> <h:commandButton value="Cadastrar Aluno" action="#{managedBean.cadastrar}" /> <br /> <h:message for="form1" /> </h:form>
<hr /> <h:dataTable value="#{managedBean.listaAlunos}" var="a"> <h:column> <f:facet name="header"> <h:outputText value="Matrcula" /> </f:facet> <h:outputText value="#{a.matricula}" /> </h:column> <h:column> <f:facet name="header"> <h:outputText value="Nome" /> </f:facet> <h:outputText value="#{a.nome}" /> </h:column> <h:column> <f:facet name="header"> <h:outputText value="Sexo" /> </f:facet> <h:outputText value="#{a.sexo}" /> </h:column> <h:column> <f:facet name="header">
<h:outputText value="Turma" /> </f:facet> <h:outputText value="#{a.turma}" /> </h:column> <h:column> <f:facet name="header"> <h:outputText value="Curso" /> </f:facet> <h:outputText value="#{a.curso.nomeCurso}" /> </h:column> </h:dataTable> </f:view> </body> </html>
public String getDestino() { return destino; } public void setDestino(String destino) { this.destino = destino; } public String getAssunto() { return assunto; } public void setAssunto(String assunto) { this.assunto = assunto; } public String getMsg() { return msg; } public void setMsg(String msg) { this.msg = msg; } }
import util.EmailUtil; import entity.EnvioEmail; public class Controle extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String resp = null; try { EnvioEmail ee = new EnvioEmail(request.getParameter("destino"), request.getParameter("assunto"), request.getParameter("msg")); resp = EmailUtil.enviarEmail(ee); } catch (Exception e) { e.printStackTrace(); resp = "Erro: " + e.getMessage(); } finally { request.setAttribute("msg", resp); request.getRequestDispatcher("index.jsp") .forward(request, response); } } }