基于javaweb+mysql的ssm+maven电影在线观看系统(java+ssm+jsp+layui+maven+mysql)
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb+mysql的SSM+Maven电影在线观看系统(java+ssm+jsp+layui+maven+mysql)
一、项目简述
环境配置:
Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)
项目技术:
JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript + JQuery + Ajax + layui+ maven等等。
}
}
package com.example.controller;
@Controller
@RequestMapping("video")
public class VideoController {
@Resource
private VideoService videoServiceImpl;
@RequestMapping("getAll/{pageNum}/{pageSize}")
@ResponseBody
public PageInfo<Video> getAll(@PathVariable("pageNum")int pageNum,@PathVariable("pageSize")int pageSize){
if (pageNum <= 0){
pageNum = 1;
}
if (pageSize <= 0){
pageSize = 30;
}
PageInfo<Video> pageInfo = new PageInfo<>();
pageInfo.setPageSize(pageSize);
map.put("count",categoryServiceImpl.selCount());
return map;
}
@RequestMapping("category/getByName")
@ResponseBody
public Map<String,Object> getCategoryByName(String name,Integer pid,Integer page,Integer limit){
Map<String,Object> map = new HashMap<>();
map.put("code",0);
map.put("data",categoryServiceImpl.selByNameWithLimit(name,pid,page,limit));
map.put("count",categoryServiceImpl.selCountByName(name,pid));
return map;
}
@RequestMapping("category/delCategory")
@ResponseBody
public Map<String,Object> delCategory(Integer id){
Map<String,Object> map = new HashMap<>();
map.put("result",categoryServiceImpl.delById(id));
return map;
}
@RequestMapping("category/add")
public String add(HttpServletRequest request){
request.setAttribute("type",categoryServiceImpl.selByPid(0));
return "manage/addCategory";
}
@RequestMapping("category/addCategory")
@ResponseBody
public Map<String,Object> addCategory(String name,Integer pid){
Map<String,Object> map = new HashMap<>();
if (pid == null){
pid = 0;
}
map.put("result",categoryServiceImpl.insCategory(name,pid));
return map;
}
}
package com.example.controller;
map.put("code",0);
map.put("data",categoryServiceImpl.selByLimit(page,limit));
map.put("count",categoryServiceImpl.selCount());
return map;
}
@RequestMapping("category/getByName")
@ResponseBody
public Map<String,Object> getCategoryByName(String name,Integer pid,Integer page,Integer limit){
Map<String,Object> map = new HashMap<>();
map.put("code",0);
map.put("data",categoryServiceImpl.selByNameWithLimit(name,pid,page,limit));
map.put("count",categoryServiceImpl.selCountByName(name,pid));
return map;
}
@RequestMapping("category/delCategory")
@ResponseBody
public Map<String,Object> delCategory(Integer id){
Map<String,Object> map = new HashMap<>();
map.put("result",categoryServiceImpl.delById(id));
return map;
}
@RequestMapping("category/add")
public String add(HttpServletRequest request){
request.setAttribute("type",categoryServiceImpl.selByPid(0));
return "manage/addCategory";
}
@RequestMapping("category/addCategory")
@ResponseBody
public Map<String,Object> addCategory(String name,Integer pid){
Map<String,Object> map = new HashMap<>();
if (pid == null){
pid = 0;
}
map.put("result",categoryServiceImpl.insCategory(name,pid));
return map;
}
}
package com.example.controller;
Admin adminByName = managerServiceImpl.selByName(admin.getName());
if(adminByName == null){ //用户名不存在
obj.put("loginMsg","用户名不存在!");
obj.put("loginCode",0);
return obj.toString();
}
Admin adminByNameAndPassword = managerServiceImpl.selByNameAndPassword(admin.getName(),admin.getPassword());
if (adminByNameAndPassword == null){ //密码错误
obj.put("loginMsg","密码错误!");
obj.put("loginCode",0);
return obj.toString();
}
session.setAttribute("admin",adminByNameAndPassword);
obj.put("loginMsg","登陆成功!");
obj.put("loginCode",1);
return obj.toString();
}
@RequestMapping("toIndex")
public String toIndex(){
return "redirect:/jsp/manage/index.jsp";
}
@RequestMapping(value = "getAll",produces="text/html;charset=utf-8")
@ResponseBody
public String getAll(int page,int limit){
int start = (page-1)*limit;
List<User> userList = userServiceImpl.getAll(start, limit);
int count = userServiceImpl.getCount();
JSONObject jsonObject = new JSONObject();
jsonObject.put("code",0);
jsonObject.put("count",count);
jsonObject.put("data",userList);
return jsonObject.toString();
}
@RequestMapping(value = "getByCondition",produces="text/html;charset=utf-8")
@ResponseBody
public String getByCondition(User user,int page,int limit){
int start = (page-1)*limit;
List<User> userList = userServiceImpl.getByCondition(user,start, limit);
int count = userServiceImpl.getCountByCondition(user);
System.out.println(count);
JSONObject jsonObject = new JSONObject();
jsonObject.put("code",0);
jsonObject.put("count",count);
jsonObject.put("data",userList);
Admin adminByNameAndPassword = managerServiceImpl.selByNameAndPassword(admin.getName(),admin.getPassword());
if (adminByNameAndPassword == null){ //密码错误
obj.put("loginMsg","密码错误!");
obj.put("loginCode",0);
return obj.toString();
}
session.setAttribute("admin",adminByNameAndPassword);
obj.put("loginMsg","登陆成功!");
obj.put("loginCode",1);
return obj.toString();
}
@RequestMapping("toIndex")
public String toIndex(){
return "redirect:/jsp/manage/index.jsp";
}
@RequestMapping(value = "getAll",produces="text/html;charset=utf-8")
@ResponseBody
public String getAll(int page,int limit){
int start = (page-1)*limit;
List<User> userList = userServiceImpl.getAll(start, limit);
int count = userServiceImpl.getCount();
JSONObject jsonObject = new JSONObject();
jsonObject.put("code",0);
jsonObject.put("count",count);
jsonObject.put("data",userList);
return jsonObject.toString();
}
@RequestMapping(value = "getByCondition",produces="text/html;charset=utf-8")
@ResponseBody
public String getByCondition(User user,int page,int limit){
int start = (page-1)*limit;
List<User> userList = userServiceImpl.getByCondition(user,start, limit);
int count = userServiceImpl.getCountByCondition(user);
System.out.println(count);
JSONObject jsonObject = new JSONObject();
jsonObject.put("code",0);
jsonObject.put("count",count);
jsonObject.put("data",userList);
return jsonObject.toString();
}
@RequestMapping("user/list")
public String user(){
return map;
}
@RequestMapping("category/getByName")
@ResponseBody
public Map<String,Object> getCategoryByName(String name,Integer pid,Integer page,Integer limit){
Map<String,Object> map = new HashMap<>();
map.put("code",0);
map.put("data",categoryServiceImpl.selByNameWithLimit(name,pid,page,limit));
map.put("count",categoryServiceImpl.selCountByName(name,pid));
return map;
}
@RequestMapping("category/delCategory")
@ResponseBody
public Map<String,Object> delCategory(Integer id){
Map<String,Object> map = new HashMap<>();
map.put("result",categoryServiceImpl.delById(id));
return map;
}
@RequestMapping("category/add")
public String add(HttpServletRequest request){
request.setAttribute("type",categoryServiceImpl.selByPid(0));
return "manage/addCategory";
}
@RequestMapping("category/addCategory")
@ResponseBody
public Map<String,Object> addCategory(String name,Integer pid){
Map<String,Object> map = new HashMap<>();
if (pid == null){
pid = 0;
}
map.put("result",categoryServiceImpl.insCategory(name,pid));
return map;
}
}
package com.example.controller;
for (File file : fileList){
inChannel = new FileInputStream(file).getChannel();
inChannel.transferTo(0,inChannel.size(),outChannel);
inChannel.close();
//删除分片
//file.delete();
}
outChannel.close();
//清除文件夹
File fileDir = new File(ServerPath + "/" + fileMd5);
if (fileDir.isDirectory() && fileDir.exists()){
//fileDir.delete();
}
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("合并成功");
return fileName;
}
@RequestMapping("video/detail/updDetailAndDate")
@ResponseBody
public Map<String,Object> updDetailAndDate(VideoDetail detail){
Date date = new Date();
detail.setUploadDate(date);
Map<String,Object> map = new HashMap<>();
map.put("code",videoServiceImpl.updDetailById(detail));
return map;
}
@RequestMapping("video/detail/updDetail")
@ResponseBody
public Map<String,Object> updDetail(VideoDetail detail){
Map<String,Object> map = new HashMap<>();
map.put("code",videoServiceImpl.updDetailById(detail));
return map;
}
@RequestMapping("video/detail/del")
@ResponseBody
public int delDetail(HttpServletRequest request, Integer id){
VideoDetail detail = videoServiceImpl.getDetailByDetailId(id);
File path = new File(request.getServletContext().getRealPath("file/video/videos/" + detail.getFileName()));
if (path.exists()){
//path.delete();
}
@RequestMapping("category/getByName")
@ResponseBody
public Map<String,Object> getCategoryByName(String name,Integer pid,Integer page,Integer limit){
Map<String,Object> map = new HashMap<>();
map.put("code",0);
map.put("data",categoryServiceImpl.selByNameWithLimit(name,pid,page,limit));
map.put("count",categoryServiceImpl.selCountByName(name,pid));
return map;
}
@RequestMapping("category/delCategory")
@ResponseBody
public Map<String,Object> delCategory(Integer id){
Map<String,Object> map = new HashMap<>();
map.put("result",categoryServiceImpl.delById(id));
return map;
}
@RequestMapping("category/add")
public String add(HttpServletRequest request){
request.setAttribute("type",categoryServiceImpl.selByPid(0));
return "manage/addCategory";
}
@RequestMapping("category/addCategory")
@ResponseBody
public Map<String,Object> addCategory(String name,Integer pid){
Map<String,Object> map = new HashMap<>();
if (pid == null){
pid = 0;
}
map.put("result",categoryServiceImpl.insCategory(name,pid));
return map;
}
}
package com.example.controller;
@ResponseBody
public Map<String,Object> update(HttpServletRequest request, MultipartFile file,Integer id
, String name, @RequestParam(value = "type",required = false) Integer type2
, @RequestParam(value = "category",required = false) List<Integer> category
, String starring, Integer year, String location,Integer statue
,String description,Integer totalEpisode,Integer currentEpisode){
int result;
if (file != null){
String filename = file.getOriginalFilename(); //获取文件名
String suffix = filename.substring(filename.lastIndexOf("."));
String src = request.getServletContext().getRealPath("file/video/images/");
File dest = new File(src+ "/" + name + suffix);
String imgPath = "file/video/images/" + name+suffix;
try {
FileUtils.copyInputStreamToFile(file.getInputStream(),dest);
} catch (IOException e) {
e.printStackTrace();
}
result = videoServiceImpl.updVideo(id,name,totalEpisode,currentEpisode,imgPath,type2,category,starring,year,location,statue,description);
}else{
result = videoServiceImpl.updVideo(id,name,totalEpisode,currentEpisode,null,type2,category,starring,year,location,statue,description);
}
Map<String,Object> map = new HashMap<>();
if (result == 1){
map.put("code",1);
}else{
map.put("code",0);
}
return map;
}
@RequestMapping("video/updateForForm")
public String updateForForm(HttpServletRequest request, MultipartFile file,Integer id
, String name, @RequestParam(value = "type",required = false) Integer type2
, @RequestParam(value = "category",required = false) List<Integer> category
, String starring, Integer year, String location,Integer statue
,String description,Integer totalEpisode,Integer currentEpisode){
if (file != null){
String filename = file.getOriginalFilename(); //获取文件名
String suffix = filename.substring(filename.lastIndexOf("."));
String src = request.getServletContext().getRealPath("file/video/images/");
File dest = new File(src+ "/" + name + suffix);
String imgPath = "file/video/images/" + name+suffix;
try {
FileUtils.copyInputStreamToFile(file.getInputStream(),dest);
} catch (IOException e) {
e.printStackTrace();
}
videoServiceImpl.updVideo(id,name,totalEpisode,currentEpisode,imgPath,type2,category,starring,year,location,statue,description);
}else{
videoServiceImpl.updVideo(id,name,totalEpisode,currentEpisode,null,type2,category,starring,year,location,statue,description);
@RequestMapping("category/getAll")
@ResponseBody
public Map<String,Object> getAllCategory(Integer page,Integer limit){
Map<String,Object> map = new HashMap<>();
map.put("code",0);
map.put("data",categoryServiceImpl.selByLimit(page,limit));
map.put("count",categoryServiceImpl.selCount());
return map;
}
@RequestMapping("category/getByName")
@ResponseBody
public Map<String,Object> getCategoryByName(String name,Integer pid,Integer page,Integer limit){
Map<String,Object> map = new HashMap<>();
map.put("code",0);
map.put("data",categoryServiceImpl.selByNameWithLimit(name,pid,page,limit));
map.put("count",categoryServiceImpl.selCountByName(name,pid));
return map;
}
@RequestMapping("category/delCategory")
@ResponseBody
public Map<String,Object> delCategory(Integer id){
Map<String,Object> map = new HashMap<>();
map.put("result",categoryServiceImpl.delById(id));
return map;
}
@RequestMapping("category/add")
public String add(HttpServletRequest request){
request.setAttribute("type",categoryServiceImpl.selByPid(0));
return "manage/addCategory";
}
@RequestMapping("category/addCategory")
@ResponseBody
public Map<String,Object> addCategory(String name,Integer pid){
Map<String,Object> map = new HashMap<>();
if (pid == null){
pid = 0;
}
map.put("result",categoryServiceImpl.insCategory(name,pid));
return map;
}
}
package com.example.controller;
@Controller
@RequestMapping("video")
public class VideoController {
@Resource
private VideoService videoServiceImpl;
@RequestMapping("getAll/{pageNum}/{pageSize}")
@ResponseBody
public PageInfo<Video> getAll(@PathVariable("pageNum")int pageNum,@PathVariable("pageSize")int pageSize){
if (pageNum <= 0){
pageNum = 1;
}
if (pageSize <= 0){
pageSize = 30;
}
PageInfo<Video> pageInfo = new PageInfo<>();
pageInfo.setPageSize(pageSize);
pageInfo.setPageNum(pageNum);
pageInfo.setCount(videoServiceImpl.getCount());
pageInfo.setList(videoServiceImpl.getAll(pageInfo));
return pageInfo;
}
@RequestMapping("getAllBySelect/{type}/{category}/{location}/{year}/{pageNum}/{pageSize}")
@ResponseBody
public PageInfo<Video> getAllBySelect(@PathVariable("type")int type,@PathVariable("category")int category
,@PathVariable("location")String location,@PathVariable("year")String year
,@PathVariable("pageNum")int pageNum,@PathVariable("pageSize")int pageSize){
if (pageNum <= 0){
@RequestMapping("user/detail/{id}")
public String userDetail(@PathVariable("id")int id, HttpServletRequest request){
User user = userServiceImpl.getUserById(id);
request.setAttribute("user",user);
return "manage/user_detail";
}
@RequestMapping("user/delete/{id}")
@ResponseBody
public int userDelete(@PathVariable("id")int id, HttpServletRequest request){
return userServiceImpl.delById(id);
}
@RequestMapping("video/list")
public String video(HttpServletRequest request){
List<Video> videos = videoServiceImpl.getAllVideos();
List<Category> type = categoryServiceImpl.selByPid(0);
request.setAttribute("videos",videos);
request.setAttribute("type",type);
return "manage/videolist";
}
@RequestMapping("video/getCategoryByPid/{pid}")
@ResponseBody
public List<Category> getCategoryByPid(@PathVariable("pid") int pid){
return categoryServiceImpl.selByPid(pid);
}
@RequestMapping("video/search")
public String search(HttpServletRequest request,Video video,String year){
System.out.println(video);
List<Video> videos = videoServiceImpl.getAllVideosByCondition(video,year);
List<Category> types = categoryServiceImpl.selByPid(0);
request.setAttribute("videos",videos);
request.setAttribute("type",types);
request.setAttribute("video",video);
request.setAttribute("year",year);
return "manage/videolist";
}
@RequestMapping("video/add")
@ResponseBody
public Map<String,Object> add(HttpServletRequest request, MultipartFile file
, String name, @RequestParam(value = "type",required = false) Integer type2
, @RequestParam(value = "category",required = false) List<Integer> category
, String starring, Integer year, String location,Integer statue
,String description,Integer totalEpisode,Integer currentEpisode){
String filename = file.getOriginalFilename(); //获取文件名
String suffix = filename.substring(filename.lastIndexOf("."));
String src = request.getServletContext().getRealPath("file/video/images/");
File dest = new File(src+ "/" + name + suffix);
String imgPath = "file/video/images/" + name+suffix;
UUID uuid = UUID.randomUUID();
File dest = new File(src+"/"+uuid+suffix);
String imgPath = "file/user/avatar/" +uuid+suffix;
JSONObject jsonObject = new JSONObject();
try {
FileUtils.copyInputStreamToFile(file.getInputStream(),dest);
jsonObject.put("src",imgPath);
jsonObject.put("code",1);
jsonObject.put("fileName",uuid+suffix);
return jsonObject.toString();
} catch (IOException e) {
System.out.println("图片上传失败");
jsonObject.put("code",0);
return jsonObject.toString();
}
}
@RequestMapping(value = "imageUpdate",produces="text/html;charset=utf-8")
@ResponseBody
public String imageUpdate(MultipartFile file,HttpSession session,HttpServletRequest request){
User user = (User) session.getAttribute("user");
JSONObject jsonObject = new JSONObject();
File oldFile = new File(request.getServletContext().getRealPath(user.getImg()));
System.out.println(oldFile);
if (oldFile.exists()){
// if (oldFile.delete()){
// System.out.println("删除成功");
// }
}
String suffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
String fileName = user.getUsername()+ "-" + new Date().getTime()+suffix;
String src = request.getServletContext().getRealPath("file/user/avatar/" + fileName);
try {
FileUtils.copyInputStreamToFile(file.getInputStream(),new File(src));
userServiceImpl.updImgById(user.getId(),"file/user/avatar/" + fileName);
user.setImg("file/user/avatar/" + fileName);
session.setAttribute("user",user);
jsonObject.put("src","file/user/avatar/" + fileName);
jsonObject.put("code",1);
} catch (IOException e) {
FileUtils.copyInputStreamToFile(file.getInputStream(),dest);
jsonObject.put("src",imgPath);
jsonObject.put("code",1);
jsonObject.put("fileName",uuid+suffix);
return jsonObject.toString();
} catch (IOException e) {
System.out.println("图片上传失败");
jsonObject.put("code",0);
return jsonObject.toString();
}
}
@RequestMapping(value = "imageUpdate",produces="text/html;charset=utf-8")
@ResponseBody
public String imageUpdate(MultipartFile file,HttpSession session,HttpServletRequest request){
User user = (User) session.getAttribute("user");
JSONObject jsonObject = new JSONObject();
File oldFile = new File(request.getServletContext().getRealPath(user.getImg()));
System.out.println(oldFile);
if (oldFile.exists()){
// if (oldFile.delete()){
// System.out.println("删除成功");
// }
}
String suffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
String fileName = user.getUsername()+ "-" + new Date().getTime()+suffix;
String src = request.getServletContext().getRealPath("file/user/avatar/" + fileName);
try {
FileUtils.copyInputStreamToFile(file.getInputStream(),new File(src));
userServiceImpl.updImgById(user.getId(),"file/user/avatar/" + fileName);
user.setImg("file/user/avatar/" + fileName);
session.setAttribute("user",user);
jsonObject.put("src","file/user/avatar/" + fileName);
jsonObject.put("code",1);
} catch (IOException e) {
System.out.println("图片上传失败");
jsonObject.put("code",0);
return jsonObject.toString();
}
return jsonObject.toString();
@RequestMapping("category/addCategory")
@ResponseBody
public Map<String,Object> addCategory(String name,Integer pid){
Map<String,Object> map = new HashMap<>();
if (pid == null){
pid = 0;
}
map.put("result",categoryServiceImpl.insCategory(name,pid));
return map;
}
}
package com.example.controller;
return pageInfo;
}
@RequestMapping("/getByName/{name}/{pageNum}/{pageSize}")
@ResponseBody
public PageInfo<Video> getByName(@PathVariable("name") String name,@PathVariable("pageNum") int pageNum,@PathVariable("pageSize") int pageSize){
if (pageNum <= 0){
pageNum = 1;
}
if (pageSize <= 0){
pageSize = 30;
}
PageInfo<Video> pageInfo = new PageInfo<>();
pageInfo.setPageSize(pageSize);
pageInfo.setPageNum(pageNum);
pageInfo.setCount(videoServiceImpl.getCountByName(name));
pageInfo.setList(videoServiceImpl.getByName(name,pageInfo));
return pageInfo;
}
@RequestMapping("/getByName/{name}")
@ResponseBody
public List<Video> getByName(@PathVariable("name") String name){
return videoServiceImpl.getByName(name);
}
@RequestMapping("detail/{id}")
public String detail(@PathVariable("id")int id, HttpServletRequest request){
Video video = videoServiceImpl.getById(id);
List<VideoDetail> episodes =videoServiceImpl.getDetailById(id);
request.setAttribute("video",video);
request.setAttribute("episodes",episodes);
return "video/video_detail";
}
@RequestMapping("download")
public void download(HttpServletRequest request, HttpServletResponse response,String fileName) throws IOException {
System.out.println(fileName);
String newName;
//解决文件名乱码
String userAgent = request.getHeader("User-Agent");
if(userAgent.contains("MSIE") || userAgent.contains("Trident") || userAgent.contains("Edge")){//IE
newName = java.net.URLEncoder.encode(fileName, "UTF-8");
}else{//非IE
public int compare(File o1, File o2) {
if (Integer.parseInt(o1.getName()) < Integer.parseInt(o2.getName())) {
return -1;
}
return 1;
}
});
File outputFile = new File(ServerPath + "/" + fileName);
try {
//创建文件
outputFile.createNewFile();
//输出流
FileChannel outChannel = new FileOutputStream(outputFile).getChannel();
//合并
FileChannel inChannel;
for (File file : fileList){
inChannel = new FileInputStream(file).getChannel();
inChannel.transferTo(0,inChannel.size(),outChannel);
inChannel.close();
//删除分片
//file.delete();
}
outChannel.close();
//清除文件夹
File fileDir = new File(ServerPath + "/" + fileMd5);
if (fileDir.isDirectory() && fileDir.exists()){
//fileDir.delete();
}
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("合并成功");
return fileName;
}
@RequestMapping("video/detail/updDetailAndDate")
@ResponseBody
return "manage/addCategory";
}
@RequestMapping("category/addCategory")
@ResponseBody
public Map<String,Object> addCategory(String name,Integer pid){
Map<String,Object> map = new HashMap<>();
if (pid == null){
pid = 0;
}
map.put("result",categoryServiceImpl.insCategory(name,pid));
return map;
}
}
package com.example.controller;
@Controller
@RequestMapping("user")
@RequestMapping("category/delCategory")
@ResponseBody
public Map<String,Object> delCategory(Integer id){
Map<String,Object> map = new HashMap<>();
map.put("result",categoryServiceImpl.delById(id));
return map;
}
@RequestMapping("category/add")
public String add(HttpServletRequest request){
request.setAttribute("type",categoryServiceImpl.selByPid(0));
return "manage/addCategory";
}
@RequestMapping("category/addCategory")
@ResponseBody
public Map<String,Object> addCategory(String name,Integer pid){
Map<String,Object> map = new HashMap<>();
if (pid == null){
pid = 0;
}
map.put("result",categoryServiceImpl.insCategory(name,pid));
return map;
}
}
package com.example.controller;
String imgPath = "file/user/avatar/" +uuid+suffix;
JSONObject jsonObject = new JSONObject();
try {
FileUtils.copyInputStreamToFile(file.getInputStream(),dest);
jsonObject.put("src",imgPath);
jsonObject.put("code",1);
jsonObject.put("fileName",uuid+suffix);
return jsonObject.toString();
} catch (IOException e) {
System.out.println("图片上传失败");
jsonObject.put("code",0);
return jsonObject.toString();
}
}
@RequestMapping(value = "imageUpdate",produces="text/html;charset=utf-8")
@ResponseBody
public String imageUpdate(MultipartFile file,HttpSession session,HttpServletRequest request){
User user = (User) session.getAttribute("user");
JSONObject jsonObject = new JSONObject();
File oldFile = new File(request.getServletContext().getRealPath(user.getImg()));
System.out.println(oldFile);
if (oldFile.exists()){
// if (oldFile.delete()){
// System.out.println("删除成功");
// }
}
String suffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
String fileName = user.getUsername()+ "-" + new Date().getTime()+suffix;
String src = request.getServletContext().getRealPath("file/user/avatar/" + fileName);
try {
FileUtils.copyInputStreamToFile(file.getInputStream(),new File(src));
userServiceImpl.updImgById(user.getId(),"file/user/avatar/" + fileName);
user.setImg("file/user/avatar/" + fileName);
session.setAttribute("user",user);
jsonObject.put("src","file/user/avatar/" + fileName);
jsonObject.put("code",1);
} catch (IOException e) {
System.out.println("图片上传失败");
jsonObject.put("code",0);
return jsonObject.toString();
}
return jsonObject.toString();
}
@RequestMapping("update")
public String update(User user,HttpSession session,HttpServletRequest req){
System.out.println(user);
userServiceImpl.updByUser(user);
User oldUser = (User) session.getAttribute("user");
user.setImg(oldUser.getImg());
session.setAttribute("user",user);
String code = (String) objs[0];
BufferedImage image = (BufferedImage) objs[1];
OutputStream os = response.getOutputStream();
ImageIO.write(image,"png",os);
session.setAttribute("adminLoginCode",code);
}
@RequestMapping(value = "login",produces = "text/html;charset=UTF-8;")
@ResponseBody
public String login(Admin admin, String code, HttpServletRequest request, HttpSession session){
String sessionCode = (String) session.getAttribute("adminLoginCode");
JSONObject obj = new JSONObject();
if(!sessionCode.toLowerCase().equals(code.toLowerCase())){ //验证码输入错误
obj.put("loginMsg","验证码输入错误!");
obj.put("loginCode",0);
return obj.toString();
}
Admin adminByName = managerServiceImpl.selByName(admin.getName());
if(adminByName == null){ //用户名不存在
obj.put("loginMsg","用户名不存在!");
obj.put("loginCode",0);
return obj.toString();
}
Admin adminByNameAndPassword = managerServiceImpl.selByNameAndPassword(admin.getName(),admin.getPassword());
if (adminByNameAndPassword == null){ //密码错误
obj.put("loginMsg","密码错误!");
obj.put("loginCode",0);
return obj.toString();
}
session.setAttribute("admin",adminByNameAndPassword);
obj.put("loginMsg","登陆成功!");
obj.put("loginCode",1);
return obj.toString();
}
@RequestMapping("toIndex")
public String toIndex(){
userServiceImpl.insertCollection(u.getId(),vid);
}
@RequestMapping("collection/del")
@ResponseBody
public void delCollection(HttpSession session,int vid){
User u = (User) session.getAttribute("user");
userServiceImpl.delCollection(u.getId(),vid);
}
@RequestMapping("collection/get")
@ResponseBody
public List<Video> getCollections(Integer uid){
return userServiceImpl.getCollection(uid);
}
@RequestMapping("home")
public String home(int id,HttpServletRequest req){
List<Video> collections = userServiceImpl.getCollection(id);
List<History> histories = historyServiceImpl.selHistoryByUid(id);
req.setAttribute("collections",collections);
req.setAttribute("histories",histories);
return "user/home";
}
@RequestMapping("addHistory")
@ResponseBody
public void addHistory(History history){
history.setTime(new Date());
History oldHistory = historyServiceImpl.selHistoryByName(history.getUid(),history.getName());
if(oldHistory == null){
historyServiceImpl.insHistory(history);
}else{
historyServiceImpl.updHistory(history);
}
}
}
package com.example.controller;
}
@RequestMapping(value = "getByCondition",produces="text/html;charset=utf-8")
@ResponseBody
public String getByCondition(User user,int page,int limit){
int start = (page-1)*limit;
List<User> userList = userServiceImpl.getByCondition(user,start, limit);
int count = userServiceImpl.getCountByCondition(user);
System.out.println(count);
JSONObject jsonObject = new JSONObject();
jsonObject.put("code",0);
jsonObject.put("count",count);
jsonObject.put("data",userList);
return jsonObject.toString();
}
@RequestMapping("user/list")
public String user(){
return "manage/userlist";
}
@RequestMapping("user/detail/{id}")
public String userDetail(@PathVariable("id")int id, HttpServletRequest request){
User user = userServiceImpl.getUserById(id);
request.setAttribute("user",user);
return "manage/user_detail";
}
@RequestMapping("user/delete/{id}")
@ResponseBody
public int userDelete(@PathVariable("id")int id, HttpServletRequest request){
return userServiceImpl.delById(id);
}
@RequestMapping("video/list")
public String video(HttpServletRequest request){
List<Video> videos = videoServiceImpl.getAllVideos();
List<Category> type = categoryServiceImpl.selByPid(0);
request.setAttribute("videos",videos);
request.setAttribute("type",type);
return "manage/videolist";
}
os.close();
is.close();
}
@RequestMapping("play")
public String play(Integer id,HttpServletRequest req){
VideoDetail videoDetail = videoServiceImpl.getDetailByDetailId(id);
List<VideoDetail> episodes = videoServiceImpl.getDetailById(videoDetail.getPid());
Video video = videoServiceImpl.getById(videoDetail.getPid());
req.setAttribute("episodes",episodes);
req.setAttribute("video",video);
req.setAttribute("detail",videoDetail);
return "video/play";
}
}
package com.example.controller;
@Controller
@RequestMapping("category")
public class CategoryController {
@Resource
private CategoryService categoryServiceImpl;
@RequestMapping("getByPid/{pid}")
@ResponseBody
public List<Category> getByPid(@PathVariable("pid")int pid){
return categoryServiceImpl.selByPid(pid);
}
}
package com.example.interceptor;
@Resource
private UserService userServiceImpl;
@Resource
private HistoryService historyServiceImpl;
@RequestMapping(value = "getAll",produces="text/html;charset=utf-8")
@ResponseBody
public String getAll(int page,int limit){
int start = (page-1)*limit;
List<User> userList = userServiceImpl.getAll(start, limit);
int count = userServiceImpl.getCount();
JSONObject jsonObject = new JSONObject();
jsonObject.put("code",0);
jsonObject.put("count",count);
jsonObject.put("data",userList);
return jsonObject.toString();
}
@RequestMapping("getCode")
public void getCode(HttpServletResponse response, HttpSession session) throws IOException {
Object[] objs = CodeImageUtil.createImage();
String code = (String) objs[0];
BufferedImage image = (BufferedImage) objs[1];
OutputStream os = response.getOutputStream();
ImageIO.write(image,"png",os);
session.setAttribute("code",code);
}
@RequestMapping(value = "login/{username}/{password}/{code}",produces = "text/html;charset=UTF-8;")
@ResponseBody
public String login(@PathVariable("username") String username,@PathVariable("password") String password
,@PathVariable("code") String code,HttpSession session) throws UnsupportedEncodingException {
String sessionCode = (String) session.getAttribute("code");
User userByNameAndPwd = userServiceImpl.getUserByNameAndPwd(username,password);
User userByName = userServiceImpl.getUserByName(username);
System.out.println(sessionCode);
if(userByName == null){
return "用户名不存在";
}else if (userByNameAndPwd == null){
return "密码错误";
}else{
String suffix = filename.substring(filename.lastIndexOf("."));
String src = request.getServletContext().getRealPath("file/video/images/");
File dest = new File(src+ "/" + name + suffix);
String imgPath = "file/video/images/" + name+suffix;
try {
FileUtils.copyInputStreamToFile(file.getInputStream(),dest);
} catch (IOException e) {
e.printStackTrace();
}
result = videoServiceImpl.updVideo(id,name,totalEpisode,currentEpisode,imgPath,type2,category,starring,year,location,statue,description);
}else{
result = videoServiceImpl.updVideo(id,name,totalEpisode,currentEpisode,null,type2,category,starring,year,location,statue,description);
}
Map<String,Object> map = new HashMap<>();
if (result == 1){
map.put("code",1);
}else{
map.put("code",0);
}
return map;
}
@RequestMapping("video/updateForForm")
public String updateForForm(HttpServletRequest request, MultipartFile file,Integer id
, String name, @RequestParam(value = "type",required = false) Integer type2
, @RequestParam(value = "category",required = false) List<Integer> category
, String starring, Integer year, String location,Integer statue
,String description,Integer totalEpisode,Integer currentEpisode){
if (file != null){
String filename = file.getOriginalFilename(); //获取文件名
String suffix = filename.substring(filename.lastIndexOf("."));
String src = request.getServletContext().getRealPath("file/video/images/");
File dest = new File(src+ "/" + name + suffix);
String imgPath = "file/video/images/" + name+suffix;
try {
FileUtils.copyInputStreamToFile(file.getInputStream(),dest);
} catch (IOException e) {
e.printStackTrace();
}
videoServiceImpl.updVideo(id,name,totalEpisode,currentEpisode,imgPath,type2,category,starring,year,location,statue,description);
}else{
videoServiceImpl.updVideo(id,name,totalEpisode,currentEpisode,null,type2,category,starring,year,location,statue,description);
}
List<Video> videos = videoServiceImpl.getAllVideos();
List<Category> type = categoryServiceImpl.selByPid(0);
request.setAttribute("videos",videos);
request.setAttribute("type",type);
return "manage/videolist";
}