By GokiSoft.com|
19:29 09/05/2020|
Java Web + EA
Share Code - EA - Phần mềm hỗ trợ kiểm soát dịch COVID-19 BT1321
Share Code - EA - Phần mềm hỗ trợ kiểm soát dịch COVID-19
Bài Tập >> EA - Phần mềm hỗ trợ kiểm soát dịch COVID-19
Video #1
#index.xhtml
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:f="http://xmlns.jcp.org/jsf/core">
<h:head>
<title>Citizen</title>
</h:head>
<h:body>
<h1>Citizen List</h1>
<h:dataTable border="1" value="#{citizenBean.citizenList}" var="item">
<h:column>
<f:facet name="header">Full Name</f:facet>
#{item.fullname}
</h:column>
<h:column>
<f:facet name="header">Gender</f:facet>
#{item.gender}
</h:column>
<h:column>
<f:facet name="header">Birthday</f:facet>
#{item.birthday}
</h:column>
<h:column>
<f:facet name="header">Phone Number</f:facet>
#{item.phoneNumber}
</h:column>
<h:column>
<f:facet name="header">Status</f:facet>
#{item.status}
</h:column>
<h:column>
<f:facet name="header">Address</f:facet>
#{item.address}
</h:column>
<h:column>
<f:facet name="header">View</f:facet>
View
</h:column>
<h:column>
<f:facet name="header">Delete</f:facet>
<h:form>
<h:commandButton value="Delete" action="#{citizenBean.delete(item.id)}"></h:commandButton>
</h:form>
</h:column>
</h:dataTable>
</h:body>
</html>
#web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd">
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Development</param-value>
</context-param>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>index.xhtml</welcome-file>
</welcome-file-list>
</web-app>
#persistence.xml
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
<persistence-unit name="COVID19PU" transaction-type="RESOURCE_LOCAL">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<class>entities.Area</class>
<class>entities.Citizen</class>
<properties>
<property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/covid19"/>
<property name="javax.persistence.jdbc.user" value="root"/>
<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"/>
<property name="javax.persistence.jdbc.password" value=""/>
</properties>
</persistence-unit>
</persistence>
#CitizenBean.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package beans;
import entities.Citizen;
import java.io.Serializable;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.persistence.Query;
/**
*
* @author DiepTV
*/
@ManagedBean(name = "citizenBean")
public class CitizenBean implements Serializable{
public CitizenBean() {}
public List<Citizen> getCitizenList() {
EntityManagerFactory factory = Persistence.createEntityManagerFactory("COVID19PU");
EntityManager em = factory.createEntityManager();
Query q = em.createNamedQuery("Citizen.findAll", Citizen.class);
return q.getResultList();
}
public void delete(int id) {
EntityManagerFactory factory = Persistence.createEntityManagerFactory("COVID19PU");
EntityManager em = factory.createEntityManager();
Citizen cFind = em.find(Citizen.class, id);
if(cFind != null) {
em.getTransaction().begin();
em.remove(cFind);
em.getTransaction().commit();
}
}
}
#Area.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package entities;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.xml.bind.annotation.XmlRootElement;
/**
*
* @author DiepTV
*/
@Entity
@Table(name = "area")
@XmlRootElement
@NamedQueries({
@NamedQuery(name = "Area.findAll", query = "SELECT a FROM Area a"),
@NamedQuery(name = "Area.findById", query = "SELECT a FROM Area a WHERE a.id = :id"),
@NamedQuery(name = "Area.findByAddress", query = "SELECT a FROM Area a WHERE a.address = :address"),
@NamedQuery(name = "Area.findByCheckin", query = "SELECT a FROM Area a WHERE a.checkin = :checkin"),
@NamedQuery(name = "Area.findByCheckout", query = "SELECT a FROM Area a WHERE a.checkout = :checkout"),
@NamedQuery(name = "Area.findByIdCitizen", query = "SELECT a FROM Area a WHERE a.idCitizen = :idCitizen")})
public class Area implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "id")
private Integer id;
@Column(name = "address")
private String address;
@Column(name = "checkin")
@Temporal(TemporalType.TIMESTAMP)
private Date checkin;
@Column(name = "checkout")
@Temporal(TemporalType.TIMESTAMP)
private Date checkout;
@Column(name = "id_citizen")
private Integer idCitizen;
public Area() {
}
public Area(Integer id) {
this.id = id;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public Date getCheckin() {
return checkin;
}
public void setCheckin(Date checkin) {
this.checkin = checkin;
}
public Date getCheckout() {
return checkout;
}
public void setCheckout(Date checkout) {
this.checkout = checkout;
}
public Integer getIdCitizen() {
return idCitizen;
}
public void setIdCitizen(Integer idCitizen) {
this.idCitizen = idCitizen;
}
@Override
public int hashCode() {
int hash = 0;
hash += (id != null ? id.hashCode() : 0);
return hash;
}
@Override
public boolean equals(Object object) {
// TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof Area)) {
return false;
}
Area other = (Area) object;
if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) {
return false;
}
return true;
}
@Override
public String toString() {
return "entities.Area[ id=" + id + " ]";
}
}
#Citizen.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package entities;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.xml.bind.annotation.XmlRootElement;
/**
*
* @author DiepTV
*/
@Entity
@Table(name = "citizen")
@XmlRootElement
@NamedQueries({
@NamedQuery(name = "Citizen.findAll", query = "SELECT c FROM Citizen c"),
@NamedQuery(name = "Citizen.findById", query = "SELECT c FROM Citizen c WHERE c.id = :id"),
@NamedQuery(name = "Citizen.findByFullname", query = "SELECT c FROM Citizen c WHERE c.fullname = :fullname"),
@NamedQuery(name = "Citizen.findByBirthday", query = "SELECT c FROM Citizen c WHERE c.birthday = :birthday"),
@NamedQuery(name = "Citizen.findByGender", query = "SELECT c FROM Citizen c WHERE c.gender = :gender"),
@NamedQuery(name = "Citizen.findByPhoneNumber", query = "SELECT c FROM Citizen c WHERE c.phoneNumber = :phoneNumber"),
@NamedQuery(name = "Citizen.findByAddress", query = "SELECT c FROM Citizen c WHERE c.address = :address"),
@NamedQuery(name = "Citizen.findByStatus", query = "SELECT c FROM Citizen c WHERE c.status = :status")})
public class Citizen implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "id")
private Integer id;
@Basic(optional = false)
@Column(name = "fullname")
private String fullname;
@Column(name = "birthday")
@Temporal(TemporalType.DATE)
private Date birthday;
@Column(name = "gender")
private String gender;
@Column(name = "phone_number")
private String phoneNumber;
@Column(name = "address")
private String address;
@Column(name = "status")
private Integer status;
public Citizen() {
}
public Citizen(Integer id) {
this.id = id;
}
public Citizen(Integer id, String fullname) {
this.id = id;
this.fullname = fullname;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getFullname() {
return fullname;
}
public void setFullname(String fullname) {
this.fullname = fullname;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getPhoneNumber() {
return phoneNumber;
}
public void setPhoneNumber(String phoneNumber) {
this.phoneNumber = phoneNumber;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
@Override
public int hashCode() {
int hash = 0;
hash += (id != null ? id.hashCode() : 0);
return hash;
}
@Override
public boolean equals(Object object) {
// TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof Citizen)) {
return false;
}
Citizen other = (Citizen) object;
if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) {
return false;
}
return true;
}
@Override
public String toString() {
return "entities.Citizen[ id=" + id + " ]";
}
}
Tags: