-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCourseService.java
More file actions
45 lines (39 loc) · 1.33 KB
/
CourseService.java
File metadata and controls
45 lines (39 loc) · 1.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
package sba.sms.services;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.query.Query;
import sba.sms.dao.CourseI;
import sba.sms.models.Course;
import sba.sms.utils.HibernateUtil;
import java.util.ArrayList;
import java.util.List;
/**
* CourseService is a concrete class. This class implements the
* CourseI interface, overrides all abstract service methods and
* provides implementation for each method.
*/
public class CourseService implements CourseI {
@Override
public void createCourse(Course course) {
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction transaction = session.beginTransaction();
session.save(course);
transaction.commit();
session.close();
}
@Override
public List<Course> getAllCourses() {
Session session = HibernateUtil.getSessionFactory().openSession();
List<Course> courses = session.createQuery("from Course", Course.class).list();
session.close();
return courses;
}
@Override
public Course getCourseById(int courseId) {
Session session = HibernateUtil.getSessionFactory().openSession();
Course course = session.get(Course.class, courseId);
session.close();
return course;
}
}