<dependency>
<groupId>javax.persistence</groupId>
<artifactId>javax.persistence-api</artifactId>
<version>2.2</version>
</dependency>
<?xml version="1.0" encoding="UTF-8"?>
<persistence 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_2.xsd"
version="2.2">
<persistence-unit name="myPersistenceUnit" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
<class>com.example.entity.User</class>
<properties>
<property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/my_database"/>
<property name="javax.persistence.jdbc.user" value="my_username"/>
<property name="javax.persistence.jdbc.password" value="my_password"/>
<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"/>
</properties>
</persistence-unit>
</persistence>
import javax.persistence.Entity;
import javax.persistence.Id;
@Entity
public class User {
@Id
private Long id;
private String name;
// getters and setters
}
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
public class UserDao {
private static final String PERSISTENCE_UNIT_NAME = "myPersistenceUnit";
private EntityManagerFactory factory;
public UserDao() {
factory = Persistence.createEntityManagerFactory(PERSISTENCE_UNIT_NAME);
}
public void save(User user) {
EntityManager entityManager = factory.createEntityManager();
entityManager.getTransaction().begin();
entityManager.persist(user);
entityManager.getTransaction().commit();
entityManager.close();
}
public User findById(Long id) {
EntityManager entityManager = factory.createEntityManager();
User user = entityManager.find(User.class, id);
entityManager.close();
return user;
}
}
public class Main {
public static void main(String[] args) {
UserDao userDao = new UserDao();
User newUser = new User();
newUser.setId(1L);
newUser.setName("John Doe");
userDao.save(newUser);
User user = userDao.findById(1L);
System.out.println("User name: " + user.getName());
}
}