@Entity
@Table(name = "students")
public class Student {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column(name = "name")
private String name;
@Column(name = "age")
private int age;
// Getters and setters
}
<hibernate-configuration>
<session-factory>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/test</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">password</property>
</session-factory>
</hibernate-configuration>
public class Main {
public static void main(String[] args) {
SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
Session session = sessionFactory.openSession();
Transaction transaction = session.beginTransaction();
Student student = new Student();
student.setName("John Doe");
student.setAge(18);
session.save(student);
transaction.commit();
session.close();
sessionFactory.close();
}
}
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://www.ehcache.org/ehcache.xsd" updateCheck="false">
<diskStore path="java.io.tmpdir/ehcache" />
<cache name="studentCache" maxEntriesLocalHeap="1000" eternal="false"
timeToLiveSeconds="60" timeToIdleSeconds="30">
<persistence strategy="localTempSwap" />
</cache>
</ehcache>
public class Main {
public static void main(String[] args) {
CacheManager cacheManager = CacheManager.getInstance();
Cache studentCache = cacheManager.getCache("studentCache");
Element element = new Element("John", new Student("John Doe", 18));
studentCache.put(element);
Element cachedElement = studentCache.get("John");
Student cachedStudent = (Student) cachedElement.getObjectValue();
System.out.println("Name: " + cachedStudent.getName());
System.out.println("Age: " + cachedStudent.getAge());
cacheManager.shutdown();
}
}