1 package org.javabb.dao.hibernate; 2 3 import java.util.List ; 4 5 import org.javabb.dao.entity.ICategoryDAO; 6 import org.javabb.vh.Stats; 7 import org.javabb.vo.Category; 8 import org.javabb.vo.Post; 9 import org.javabb.vo.Topic; 10 import org.javabb.vo.User; 11 12 27 28 33 public class CategoryHibernateDAO extends HibernateDAO implements ICategoryDAO { 34 35 static final String [] FIELD_NAMES = new String [] { null, 36 "idCategory", 37 "catOrder", 38 "nameCategory" }; 39 40 43 public Category load(Long id) { 44 return (Category) getHibernateTemplate().load(Category.class, id); 45 } 46 47 50 public int countAllPosts() { 51 return countRows(Post.class, "idPost"); 52 } 53 54 57 public int countAllTopics() { 58 return countRows(Topic.class, "idTopic"); 59 } 60 61 64 public int countAllUsers() { 65 return countRows(User.class, "idUser"); 66 } 67 68 71 protected String getFieldName(int i) { 72 return FIELD_NAMES[i]; 73 } 74 75 78 public Stats getStatistics() { 79 String [] orderField = { "idUser" }; 80 String [] orderValue = { "desc" }; 81 82 User lastUser = null; 83 List lstUsers = findAll(User.class, orderField, orderValue, 0, 1); 84 85 if (!lstUsers.isEmpty()) { 86 lastUser = (User) lstUsers.get(0); 87 } 88 lstUsers = null; 89 90 Stats sts = new Stats(); 91 sts.setLastRegisteredUserId(lastUser.getIdUser()); 92 sts.setLastRegisteredUserName(lastUser.getUser()); 93 return sts; 94 } 95 96 100 public List findAll(int[] sortingFields) { 101 return findAll(Category.class, sortingFields); 102 } 103 104 109 public Category insertCategory(Category cat){ 110 return (Category)getHibernateTemplate().saveOrUpdateCopy(cat); 111 } 112 113 public Category getLastCattegoryByOrder(){ 114 Category cat = null; 115 List lstCats = findAll(Category.class, 116 new String []{"catOrder"}, 117 new String []{"desc"}, 118 0, 1); 119 120 if (!lstCats.isEmpty()) { 121 cat = (Category) lstCats.get(0); 122 } 123 return cat; 124 } 125 126 130 public void deleteCategory(Category cat){ 131 this.getHibernateTemplate().delete(cat); 132 } 133 } 134 | Popular Tags |