Stwórz sobie projekt maven. Klikasz new->maven project. Zaznaczasz tam skip archetype project.
Następnie będziesz miał w plikach plik pom.xml.
Do tego pliku doklej taki kodzik:
Kopiuj
<properties>
<maven.compiler.version>12</maven.compiler.version>
<maven.compiler.target>12</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.16</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.4.6.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>5.4.4.Final</version>
</dependency>
<dependency>
<groupId>javax.transaction</groupId>
<artifactId>jta</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.1</version>
</dependency>
</dependencies>
Następnie stwórz plik "persistence.xml" w folderze src/main/resource/META-INF. Jeśli go nie masz to stwórz. Wklej do niego to i uzupełnij.
Kopiuj
<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_1.xsd"
version="2.1">
<persistence-unit name="myPersistenceUnit"
transaction-type="RESOURCE_LOCAL">
<properties>
<property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/**TUTAJ NAZWA TWOJEGO SCHEMATU BAZY DANYCH**?useSSL=false&serverTimezone=UTC" />
<property name="javax.persistence.jdbc.user" value="**TUTAJ PODAJ LOGIN BAZY DANYCH**" />
<property name="javax.persistence.jdbc.password" value="**TUTAJ PODAJ HASŁO**" />
<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver" />
<property name="javax.persistence.schema-generation.database.action"
value="drop-and-create"/>
</properties>
</persistence-unit>
</persistence>
Value drop-and-create oznacza że przy każdym starcie programu będzie usuwana baza danych i tworzona.
Potem stwórz sobie klase, najprostszą java którą nazywa się DAO. Załóżmy że chciałbyś zapisywać, odczytywać ludzi z danej bazy, więc powinna w najprostszym wykonaniu wyglądać tak.
Kopiuj
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.EntityTransaction;
import javax.persistence.Persistence;
public class PeopleDao {
private EntityManagerFactory emFactory;
private EntityManager entityManager;
public PeopleDao() {
emFactory = Persistence.createEntityManagerFactory("myPersistenceUnit");
entityManager = emFactory.createEntityManager();
}
public void save(People people) {
EntityTransaction tx = entityManager.getTransaction();
tx.begin();
entityManager.persist(people);
tx.commit();
}
public People get(Long id) {
People people= entityManager.find(People.class, id);
return people;
}
@Override
public void cleanUp() {
entityManager.close();
emFactory.close();
}
}
Ostatnia rzecz to stworzenie klasy People która przechowuje człowieka. A następnie klasa main cos w tym stylu:
Kopiuj
public class Main {
public static void main(String[] args) {
People people= new People("Jacek", "Wrona");
PeopleDao peopleDao= new PeopleDao();
peopleDao.save(people);
System.out.println("People saved");
peopleDao.cleanUp();
}
}
Oczywiście nigdy w życiu tego nie wykorzystasz w pracy czy coś, ale jest to "najprostsza" implementacja. Do webowych aplikacji polecam pouczyć się Springa, Springa data, rest itd.