Test DAO in JAVA
I have the following code in JAVA, the code is autogenerated from net
beans in create Entity from database, and i created later the DAO:
@Entity
@Table(name = "USERS")
@XmlRootElement
@NamedQueries({
@NamedQuery(name = "Users.findAll", query = "SELECT u FROM Users u"),
@NamedQuery(name = "Users.findByIdUser", query = "SELECT u FROM Users u
WHERE u.idUser = :idUser"),
@NamedQuery(name = "Users.findByEmail", query = "SELECT u FROM Users u
WHERE u.email = :email"),
@NamedQuery(name = "Users.findByPassword", query = "SELECT u FROM Users u
WHERE u.password = :password")})
public class Users implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Basic(optional = false)
@Column(name = "ID_USER")
private Short idUser;
@Basic(optional = false)
@Column(name = "EMAIL")
private String email;
@Basic(optional = false)
@Column(name = "PASSWORD")
private String password;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "users")
private Collection<UserMno> userMnoCollection;
public Users() {
}
public Users(Short idUser) {
this.idUser = idUser;
}
public Users(Short idUser, String email, String password) {
this.idUser = idUser;
this.email = email;
this.password = password;
}
public Short getIdUser() {
return idUser;
}
public void setIdUser(Short idUser) {
this.idUser = idUser;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
@XmlTransient
public Collection<UserMno> getUserMnoCollection() {
return userMnoCollection;
}
public void setUserMnoCollection(Collection<UserMno> userMnoCollection) {
this.userMnoCollection = userMnoCollection;
}
@Override
public int hashCode() {
int hash = 0;
hash += (idUser != null ? idUser.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 Users)) {
return false;
}
Users other = (Users) object;
if ((this.idUser == null && other.idUser != null) || (this.idUser !=
null && !this.idUser.equals(other.idUser))) {
return false;
}
return true;
}
}
public class UsersDAO implements UserDAOInt{
@Override
public Users getUserByEmail(String email){
EntityManager e = DBManager.createEM();
Users retVal = getUserByEmail(email, e);
e.close();
return retVal;
}
@Override
public Users getUserByEmail(String email, EntityManager em) {
Users retVal = null;
TypedQuery<Users> q = em.createNamedQuery("Users.findByEmail",
Users.class)
.setParameter("email", email);
List<Users> resultList = q.getResultList();
if (resultList.size() > 0) {
retVal = resultList.get(0);
}
return retVal;
}
@Override
public Users getUserByIdUser(Short idUser){
EntityManager e = DBManager.createEM();
Users retVal = getUserByIdUser(idUser, e);
e.close();
return retVal;
}
@Override
public Users getUserByIdUser(Short idUser, EntityManager em) {
Users retVal = null;
TypedQuery<Users> q = em.createNamedQuery("Users.findByIdUser",
Users.class)
.setParameter("idUser", idUser);
List<Users> resultList = q.getResultList();
if (resultList.size() > 0) {
retVal = resultList.get(0);
}
return retVal;
}
@Override
public Users getUserByPassword(String password){
EntityManager e = DBManager.createEM();
Users retVal = getUserByPassword(password, e);
e.close();
return retVal;
}
@Override
public Users getUserByPassword(String password, EntityManager em) {
Users retVal = null;
TypedQuery<Users> q = em.createNamedQuery("Users.findByIdUser",
Users.class)
.setParameter("idUser", password);
List<Users> resultList = q.getResultList();
if (resultList.size() > 0) {
retVal = resultList.get(0);
}
return retVal;
}
}
public class DBManager {
private static EntityManagerFactory emf;
private synchronized static EntityManagerFactory getEMF() {
if (emf != null && emf.isOpen()) {
return emf;
} else {
emf = Persistence.createEntityManagerFactory("PersistencePU");
return emf;
}
}
public static EntityManager createEM() {
return getEMF().createEntityManager();
}
public static Connection getDBConnection() throws SQLException {
Properties p = new Properties();
p.putAll(getEMF().getProperties());
p.list(System.out);
return DriverManager.getConnection(
p.getProperty("javax.persistence.jdbc.url"),
p.getProperty("javax.persistence.jdbc.user"),
p.getProperty("javax.persistence.jdbc.password"));
}
}
I want to do a test to see if the code are bringing the information to the
database
But i do not know how can i create the main or the JUnit Test because i
intent with:
public class JPAUserDaoTests {
private UsersDAO userDAO;
@Test
public void metodo() throws Exception{
short a = 1;
Users user = userDAO.getUserByIdUser(a);
}
}
But i have very much errors.
Can you help me?
No comments:
Post a Comment