源码获取:文末获取联系方式!
一、项目运行
环境配置:
Jdk1.8 + Tomcat 8.5+ Mysql + VUE+ IDEA(Eclispe,MyEclispe,Sts都支持)。
项目技术:
Spring + SpringBoot+ SSM+ Maven + Vue + 协同过滤算法等等组成,B/S模式 + Maven管理等等。
二、项目展示
网站首页
![](https://img-blog.csdnimg.cn/e89b70692b1747cba43c9d3b86963db1.png)
电影列表
电影详情(收藏、下载、评论)
![](https://img-blog.csdnimg.cn/73e2f85a43284cabaf94e66ed001926c.png)
高分榜电影
后台管理
![](https://img-blog.csdnimg.cn/cf616d2e6eeb42c7972c1cb5570b99ee.png)
![](https://img-blog.csdnimg.cn/18a978bd04a149cc9a665904f782f42b.png)
三、关键代码展示
项目结构
![](https://img-blog.csdnimg.cn/3076bbdaeb374675963aa4b2165ae85f.png)
协同过滤算法电影推荐
@ResponseBody
@RequestMapping("movieLove")
public HashMap<String,Object> productLove(HttpServletRequest request){
HashMap<String,Object> res = new HashMap<String,Object>();
Member member = (Member)request.getSession().getAttribute("sessionmember");
//会员集合
List<Member> ulist = memberDAO.selectAll(null);
String[] uarray=new String[ulist.size()];
for(int i=0;i<ulist.size();i++){
uarray[i]=String.valueOf(ulist.get(i).getId());
}
//电影集合
HashMap map = new HashMap();
List<Movie> movies = movieDAO.selectAll(null);
String[] dyarray=new String[movies.size()];
for(int i=0;i<movies.size();i++){
dyarray[i]=String.valueOf(movies.get(i).getId());
}
//评分
int [][] arr2 = new int[ulist.size()][];
int count = 0;
//System.out.println("arr2.length=="+arr2.length);
for(int i=0;i<arr2.length;i++){
Member mb = ulist.get(i);
//System.out.println("userobj"+i+" "+userobj);
//创建一维数组
int[] tmpArr = new int[movies.size()];
//创建二维数组
for(int j=0;j < tmpArr.length;j++){
Movie movie = movies.get(j);
map.put("movieid", movie.getId());
map.put("memberid", mb.getId());
List<Comment> comments = commentDAO.selectAll(map);
if(comments.size()>0){
int pf = 0;
for(Comment comment : comments){
pf += comment.getScore();
}
tmpArr[j] = pf;
}
//System.out.println("dyobj"+j+" "+dyobj);
//tmpArr[j] = (++count);
}
arr2[i] = tmpArr;
}
for(int m=0;m<arr2.length;m++){
for(int n=0;n<arr2[m].length;n++){
System.out.print(arr2[m][n]+" ");
}
System.out.println();
}
UserCFDemo u = new UserCFDemo();
u.users = uarray;
u.movies = dyarray;
u.allUserMovieStarList = arr2;
u.membernum = ulist.size();
u.mvnum = movies.size();
List<String> rtnlist = u.mvlist(String.valueOf(member.getId()));
String aa = "";
List<Movie> tjproductlist = new ArrayList<Movie>();
for(int m = 0;m< rtnlist.size();m++){
Movie p = movieDAO.findById(Integer.valueOf(rtnlist.get(m)));
Category category = categoryDAO.findById(p.getCategoryid());
p.setCategory(category);
tjproductlist.add(p);
System.out.println("推荐的电影==="+p.getName());
}
res.put("lovelist", tjproductlist);
return res;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)