Guest User

Untitled

a guest
Sep 18th, 2018
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.43 KB | None | 0 0
  1. Sorting in Query for MySQL database using hibernate
  2. Session session = HibernateUtil.getSessionFactory().getCurrentSession();
  3. session.beginTransaction();
  4. List<Task> tasks = (List<Task>)session.createQuery(
  5. "from Task as t where t.user.username = :name order by t.project.key ASC").setString("name", username).list();
  6. orderByDeliverable(tasks);
  7. orderByActivity(tasks);
  8.  
  9.  
  10.  
  11. private void orderByDeliverable(List<Task> tasks) {
  12. Collections.sort(tasks, new Comparator<Task>(){
  13. public int compare(Task t1, Task t2) {
  14. if(t1.getProject().getId() == t2.getProject().getId())
  15. return t1.getDeliverable().getKey().compareToIgnoreCase(t2.getDeliverable().getKey());
  16. return 0;
  17. }
  18. });
  19. }
  20.  
  21. private void orderByActivity(List<Task> tasks) {
  22. Collections.sort(tasks, new Comparator<Task>(){
  23. public int compare(Task t1, Task t2) {
  24. if(t1.getProject().getId() == t2.getProject().getId())
  25. if(t1.getDeliverable().getId() == t2.getDeliverable().getId())
  26. return t1.getActivity().getKey().compareToIgnoreCase(t2.getActivity().getKey());
  27. return 0;
  28. }
  29. });
  30. }
  31.  
  32. tasks = (List<Task>)session.createQuery("from Task as t where t.user.username = :name
  33. order by t.project.key ASC, t.deliverable.key ASC, t.activity.key ASC")
  34. .setString("name", username).list();
Add Comment
Please, Sign In to add comment