libraryDependencies += "mysql" % "mysql-connector-java" % "8.0.23"
import play.db.jpa.JPAApi;
import javax.inject.Inject;
import javax.persistence.EntityManager;
import javax.persistence.TypedQuery;
import java.util.List;
@Entity
public class User {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
public Long id;
public String name;
public String email;
}
public class UserService {
private final JPAApi jpaApi;
@Inject
public UserService(JPAApi jpaApi) {
this.jpaApi = jpaApi;
}
public void saveUser(User user) {
jpaApi.withTransaction(entityManager -> {
entityManager.persist(user);
});
}
public List<User> getAllUsers() {
return jpaApi.withTransaction(entityManager -> {
TypedQuery<User> query = entityManager.createQuery("SELECT u FROM User u", User.class);
return query.getResultList();
});
}
}
db.default.driver=com.mysql.jdbc.Driver
db.default.url="jdbc:mysql://localhost:3306/mydatabase"
db.default.username=myuser
db.default.password=mypassword