基于SSM的“基于协同过滤的在线通用旅游平台网站”的设计与实现(源码+数据库+文档)
-
开发语言:Java
-
数据库:MySQL
-
技术:SSM
-
工具:IDEA/Ecilpse、Navicat、Maven
系统展示
系统主界面
景点信息界面
后台界面
部分源码
@Repository
public class HobbyDao extends HibernateDaoSupport {@Autowiredprotected void initDao(SessionFactory sessionFactory) {super.setSessionFactory(sessionFactory);}public Hobby findById(java.lang.String id) {return getHibernateTemplate().get(Hobby.class, id);}public List<Hobby> findList(Hobby entity, int start, int limit) {DetachedCriteria criteria = DetachedCriteria.forClass(entity.getClass());if (entity != null) {/**********************************************************************/if (StringUtils.isNotEmpty(entity.getId())) {criteria.add(Restrictions.like("id", entity.getId(), MatchMode.ANYWHERE));}if (StringUtils.isNotEmpty(entity.getName())) {criteria.add(Restrictions.like("name", entity.getName(), MatchMode.ANYWHERE));}/**********************************************************************/}criteria.addOrder(Order.desc("createtime"));return getHibernateTemplate().findByCriteria(criteria, start, limit);}public List<Hobby> findAllList(Hobby entity) {DetachedCriteria criteria = DetachedCriteria.forClass(entity.getClass());if (entity != null) {/**********************************************************************/if (StringUtils.isNotEmpty(entity.getId())) {criteria.add(Restrictions.like("id", entity.getId(), MatchMode.ANYWHERE));}if (StringUtils.isNotEmpty(entity.getName())) {criteria.add(Restrictions.like("name", entity.getName(), MatchMode.ANYWHERE));}/**********************************************************************/}criteria.addOrder(Order.desc("createtime"));return getHibernateTemplate().findByCriteria(criteria);}public int countList(Hobby entity) {DetachedCriteria criteria = DetachedCriteria.forClass(entity.getClass());if (entity != null) {/**********************************************************************/if (StringUtils.isNotEmpty(entity.getId())) {criteria.add(Restrictions.like("id", entity.getId(), MatchMode.ANYWHERE));}if (StringUtils.isNotEmpty(entity.getName())) {criteria.add(Restrictions.like("name", entity.getName(), MatchMode.ANYWHERE));}/**********************************************************************/}ProjectionList projList = Projections.projectionList();projList.add(Projections.count("id"));criteria.setProjection(projList);HibernateTemplate hibernateTemplate = getHibernateTemplate();List<?> countList = hibernateTemplate.findByCriteria(criteria);if (!countList.isEmpty()) {return Integer.parseInt(countList.get(0) + "");}return 0;}public boolean delete(String id) {if (StringUtils.isNotEmpty(id)) {Hobby entity = findById(id);if (entity != null) {getHibernateTemplate().delete(entity);return true;}}return false;}public boolean update(Hobby entity) {try {if (entity != null && StringUtils.isNotEmpty(entity.getId())) {Hobby updateEntity = findById(entity.getId());entity.setCreatetime(updateEntity.getCreatetime());PropertyUtils.copyProperties(updateEntity, entity);getHibernateTemplate().update(updateEntity);} else {entity.setCreatetime(new Date());getHibernateTemplate().save(entity);}return true;} catch (DataAccessException e) {e.printStackTrace();} catch (IllegalAccessException e) {e.printStackTrace();} catch (InvocationTargetException e) {e.printStackTrace();} catch (NoSuchMethodException e) {e.printStackTrace();}return false;}
}
结论
此次毕业设计让我对JAVA语言和MYSQL2008有着更清晰的认识。同时对于各种开发工具的操作也更加熟练了。当然在程序的设计和实现过程中也遇到了许许多多的困难,我通过请教指导老师和查阅资料顺利得克服并能解决困难。在此过程中更让我懂得了面对困难应该如何想着去解决。真正的达到了为自己四年的大学生活交上一份完美的答卷。虽然旅游网站的设计和实现已经基本完成了,但在我看来网站还存在一定的瑕疵和不足之处,距离真正可以上线发布使用还存在一定的差距,在今后的学习过程中我会不断的提高和完善。通过在实现本网站的设计过程中,让我对旅游网站的基本相关情况有了更进一步的了解,也对一般的网站系统有了更新的认识。更是我对大学所学习的专业课程的一次完整的实践运用,加深了我对JAVA编程语言的深入理解,以及以及对JSP编程以及网页设计的相关的知识有了更深入的认识,提高了我的专业技能,也为以后从事软件开发工作奠定了一个坚实的基础。