源码获取:博客首页 "资源" 里下载!
项目介绍
文件集中上传:系统支持单文件上传以及批量上传,系统支持zip、rar格式的压缩包导入。亮点创新 多格式文件在线预览 用户可以对所有公共文件进行浏览,支持office,pdf格式以及常见图片格式,音频格式,音频播放以流媒体服务搭载实现边下边播的用户体验。
文档链接:系统支持用户对喜爱的文档进行收藏及发送到常用文档。
文档关联:手动关联:用户可以手动对文件关联相关的文件。
自动关联:系统可以自动关联类似文档
规则使用:系统对用户上传的过大文件(视频)进行压缩来加快用户在线预览打开的速度,对文档自动提取简介和关键词。对视频、office等文件提取缩略图。
系统中可增加词典,增强分词效果
智能检索:系统包含全文检索、多重条件检索、关键词检索。同时还支持对检索结果再次附加条件检索。
用户管理:普通用户可以对自己的文件夹、收藏夹管理。用户可以分享自己的文档到公共资源库中。
管理员可以对系统中的用户管理、公共文件审核,系统分类的管理,一些数据的统计和日志记录的查看
用户评论:用户可以对文档进行评论
文本处理:能够支持中文,人名、组织机构名、时间、地名、目标类型、目标名称等实体识别,能对常见文本格式抽取。
文档推荐:系统使用协同过滤算法推荐用户可能会查看的文档
知识图谱:系统中的知识以树结构存放,可以通过知识图谱快速到达你要找的知识点。对于每个节点都有详细的介绍。
智能提取:系统结合PageRank、TF-IDF等算法组织知识点在我们的库中,用户可以通过半自动化的操作,去提取归纳知识,产生新的文档。
信息统计:系统对文档的数据进行统计分析,以图表的方式呈现。
新建文档:用户可以使用在线多功能编辑器新建文档
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.是否Maven项目:是; 查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目
6.数据库:MySql 5.7版本;
技术栈
1. spring+spring mvc+mybatis+bootstrap+jquery
使用说明
1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择 maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,配置tomcat,然后运行;
3. 将项目中jdbc.properties配置文件中的数据库配置改为自己的配置
4. 运行项目,在浏览器中输入http://localhost:8080/lib/login 登录
5. 登录账号:11184629@qq.com 密码:123456
注意事项
需要先安装openoffice,下载地址:http://www.openoffice.org/download/index.html
并在TranslateUtils中修改相关路径;
用户管理控制层:
@Controller
@RequestMapping("/User")
public class UserController {
@Autowired
private UserService userService;
@Autowired
private PowerService powerService;
@Autowired
private RoleService roleService;
@Autowired
private NoticeService noticeService;
@RequestMapping("/Main")
public String res(HttpServletRequest request){
String time = DateUtil.getStringToday();
request.getSession().setAttribute("time", time);
Notice notice = new Notice();
List<Notice> list = noticeService.queryAll(notice);
notice = list.get(0);
User user = userService.selectByPrimaryKey(notice.getUserid());
notice.setUserid(user.getName());
request.getSession().setAttribute("notice", notice);
return "Main";
}
@RequestMapping("/changePa")
public String res1(){
return "changePass";
}
@RequestMapping("/Login")
public ModelAndView login(HttpServletRequest request,String id,String password) throws Exception{
ModelAndView mav = new ModelAndView();
User user1 = userService.selectByPrimaryKey(id);
if(user1 == null || !password.equals(user1.getPassword())){
mav.setViewName("index");
request.getSession().setAttribute("info", "error");
return mav;
}else{
Role role = new Role();
role.setRoleid(user1.getRoleid());
List<Role> list =roleService.QueryAll(role);
role =list.get(0);
request.getSession().setAttribute("roleName", role.getRolename());
Power power = powerService.selectByPrimaryKey(role.getPowerid());
if(!StringUtil.isNullOrEmpty(power.getPower())){
request.getSession().setAttribute("power", power.getPower());
}
String time = DateUtil.getStringToday();
request.getSession().setAttribute("time", time);
request.getSession().setAttribute("user", user1);
mav.setViewName("redirect:/User/Main");
}
return mav;
}
@RequestMapping("/updateStudent")
public String update(User user){
userService.updateByPrimaryKey(user);
return "redirect:/User/student";
}
@RequestMapping("/updateTeacher")
public String updatet(User user){
userService.updateByPrimaryKey(user);
return "redirect:/User/teacher";
}
@RequestMapping("/updatePa")
public String updatePa(String userID,String password){
User user = new User();
System.out.println(userID);
User user1 = userService.selectByPrimaryKey(userID);
user1.setPassword(password);
userService.updateByPrimaryKey(user1);
return "Main";
}
@RequestMapping("/delete")
public String delete(String ID){
userService.deleteByPrimaryKey(ID);
return "redirect:/User/queryAll";
}
@RequestMapping("/teacher")
public String QueryAllTeacher(HttpServletRequest request,User user){
List<User> list = userService.QueryAllTeacher(user);
request.setAttribute("list", list);
if(null != user.getName()){
request.setAttribute("name", user.getName());
}
if(null != user.getMobile()){
request.setAttribute("mobile", user.getMobile());
}
return "teacher";
}
@ResponseBody
@RequestMapping("/jsonteacher")
public String QueryAllTeacherjson(HttpServletRequest request,User user){
List<User> list = userService.QueryAllTeacher(user);
JSONObject json = new JSONObject();
return json.toJSONString(list);
}
@RequestMapping("/student")
public String QueryAllStudent(HttpServletRequest request,User user){
List<User> list = userService.QueryAllStudent(user);
request.setAttribute("list", list);
if(null != user.getName()){
request.setAttribute("name", user.getName());
}
if(null != user.getMobile()){
request.setAttribute("mobile", user.getMobile());
}
return "student";
}
@RequestMapping("/addteacher")
public String addUser(User user){
String passWord = "123456";
user.setPassword(passWord);
user.setType(Constans.TEACHER);
userService.insert(user);
return "redirect:/User/teacher";
}
@RequestMapping("/addstudent")
public String addStudent(User user){
String passWord = "123456";
user.setPassword(passWord);
user.setType(Constans.STUDENT);
userService.insert(user);
return "redirect:/User/student";
}
@ResponseBody
@RequestMapping("/queryOne")
public String queryOne(String ID){
User user = new User();
user.setId(ID);
List<User> list = userService.QueryAll(user);
user = list.get(0);
JSONObject json = new JSONObject();
String data = json.toJSONString(user);
return data;
}
@RequestMapping("/quit")
public ModelAndView quit(HttpServletRequest request) throws Exception{
ModelAndView mav = new ModelAndView();
HttpSession session1 = request.getSession();
session1.invalidate();
request.getSession().setAttribute("info", "quit");
mav.setViewName("index");
return mav;
}
}
登录控制层:
@Controller
public class LoginController {
private static final Logger LOGGER = LoggerFactory.getLogger(LoginController.class);
@Autowired
AdminService adminService;
@GetMapping("/cs")
public String cs() {
return "cs";
}
@GetMapping("/login")
public String login() {
return "login";
}
@PostMapping("/login")
@ResponseBody
public Msg login(String name, String pwd, HttpSession httpSession) {
name = name.trim();
// LOGGER.info("{}--{}",name,pwd);
return adminService.login(name, pwd, httpSession);
}
}
管理员管理控制层:
@RestController
@RequestMapping("/admin")
@Slf4j
public class AdminController {
@Autowired
AdminService adminService;
/**
* 功能描述:管理员登录
*/
@RequestMapping(value = "/login.do",method = RequestMethod.GET)
public ResponseBo login(HttpServletRequest request){
log.info("admin/AdminController======>login 进入方法");
ResponseBo responseBo=new ResponseBo();
String name=request.getParameter("name");
String password=request.getParameter("password");
String token=request.getHeader("accessToken");
if (token!=null) {
if (TokenSign.verify(token)) {
ADMINS admins = new ADMINS();
admins.setName(TokenSign.getUsername(token));
admins.setId(Integer.parseInt(TokenSign.getUserId(token)));
admins.setPic(TokenSign.getUserPic(token));
responseBo.setResult(admins);
return responseBo;
} else {
responseBo.setResMsg("token失效");
return responseBo;
}
}
try {
log.info("admin/AdminController======>login 进入接口,入参:name=",name);
responseBo=adminService.login(name,password);
} catch (Exception e) {
log.error("admin/AdminController======>login 登录方法出错:{}",e);
responseBo.setResMsg("登录失败");
responseBo.setResult(e);
}
return responseBo;
}
/**
* 功能描述:获取所有用户信息
*/
@RequestMapping(value = "/getUsers.do",method = RequestMethod.GET)
public ResponseBo getUsers(HttpServletRequest request){
log.info("admin/AdminController======>getUsers 进入方法");
ResponseBo responseBo=new ResponseBo();
try {
log.info("admin/AdminController======>getUsers 进入接口,入参:无");
responseBo=adminService.getUsers();
} catch (Exception e) {
log.error("admin/AdminController======>getUsers 方法出错:{}",e);
responseBo.setResMsg("查询失败");
responseBo.setResult(e);
}
return responseBo;
}
/**
* 功能描述:通过id删除用户
*/
@RequestMapping(value = "/deleteUserById.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo deleteUserById(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String userid=request.getParameter("userid");
int userid2=Integer.parseInt(userid);
responseBo=adminService.deleteUserById(userid2);
} catch (Exception e) {
log.error("删除失败",e);
responseBo.setResMsg("删除失败");
}
return responseBo;
}
/**
* 功能描述:获取所有被封禁用户信息
*/
@RequestMapping(value = "/getBanUsers.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo getBanUsers(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
responseBo=adminService.getBanUsers();
} catch (Exception e) {
log.error("查询失败",e);
responseBo.setResMsg("查询失败");
}
return responseBo;
}
/**
* 功能描述:封禁用户
*/
@RequestMapping(value = "/banUser.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo banUser(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String userid=request.getParameter("userid");
int userid2=Integer.parseInt(userid);
responseBo=adminService.banUser(userid2);
} catch (Exception e) {
log.error("封禁失败",e);
responseBo.setResMsg("封禁失败");
}
return responseBo;
}
/**
* 功能描述:解封用户
*/
@RequestMapping(value = "/unbanUser.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo unbanUser(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String userid=request.getParameter("userid");
int userid2=Integer.parseInt(userid);
responseBo=adminService.unbanUser(userid2);
} catch (Exception e) {
log.error("解封失败",e);
responseBo.setResMsg("解封失败");
}
return responseBo;
}
/**
* 功能描述:修改管理员信息
*/
@RequestMapping(value = "/update.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo update(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String adminid=request.getParameter("adminid");
String name=request.getParameter("name");
int adminid2=Integer.parseInt(adminid);
StandardMultipartHttpServletRequest thisRequest = (StandardMultipartHttpServletRequest )request;
MultipartFile file = thisRequest.getFile("pic");
responseBo=adminService.update(request,file,name,adminid2);
} catch (Exception e) {
log.error("更新失败",e);
responseBo.setResMsg("更新失败");
}
log.info("AdminController===>update方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:根据id删除图片
*/
@RequestMapping(value = "/deleteImgById.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo deleteImgById(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String imgid=request.getParameter("imgid");
int imgid2=Integer.parseInt(imgid);
responseBo=adminService.deleteImgById(imgid2);
} catch (Exception e) {
log.error("删除失败",e);
responseBo.setResMsg("删除失败");
}
log.info("AdminController===>deleteImgById 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:添加新类型
*/
@RequestMapping(value = "/addType.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo addType(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String type=request.getParameter("type");
responseBo=adminService.addType(type);
} catch (Exception e) {
log.error("添加失败",e);
responseBo.setResMsg("添加失败");
}
log.info("AdminController===>addType 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:获取所有类型
*/
@RequestMapping(value = "/getTypes.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo getTypes(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
responseBo=adminService.getTypes();
} catch (Exception e) {
log.error("查询失败",e);
responseBo.setResMsg("查询失败");
}
log.info("AdminController===>getTypes 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:根据id获取类型
*/
@RequestMapping(value = "/getTypeById.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo getTypeById(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String type=request.getParameter("typeid");
int typeid=Integer.parseInt(type);
responseBo=adminService.getTypeByid(typeid);
} catch (Exception e) {
log.error("查询失败",e);
responseBo.setResMsg("查询失败");
}
log.info("AdminController===>getTypeById 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:修改类型
*/
@RequestMapping(value = "/updateType.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo updateType(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String type=request.getParameter("typeid");
String name=request.getParameter("name");
int typeid=Integer.parseInt(type);
responseBo=adminService.updateType(typeid,name);
} catch (Exception e) {
log.error("更新失败",e);
responseBo.setResMsg("更新失败");
}
log.info("AdminController===>updateType 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:根据id删除类型
*/
@RequestMapping(value = "/deleteType.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo deleteType(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String type=request.getParameter("typeid");
int typeid=Integer.parseInt(type);
responseBo=adminService.deleteType(typeid);
} catch (Exception e) {
log.error("删除失败",e);
responseBo.setResMsg("删除成功");
}
log.info("AdminController===>deleteType 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:获取待审核图片
*/
@RequestMapping(value = "/getAuditImgs.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo getAuditImgs(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
responseBo=adminService.getAuditImgs();
} catch (Exception e) {
log.error("查询失败",e);
responseBo.setResMsg("查询失败");
}
log.info("AdminController===>getAuditImgs 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:通过审核图片
*/
@RequestMapping(value = "/auditImg.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo auditImg(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String img=request.getParameter("imgid");
int imgid=Integer.parseInt(img);
responseBo=adminService.auditImg(imgid);
} catch (Exception e) {
log.error("审核失败",e);
responseBo.setResMsg("审核失败");
}
log.info("AdminController===>auditImg 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:不通过审核图片
*/
@RequestMapping(value = "/unauditImg.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo unauditImg(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String img=request.getParameter("imgid");
int imgid=Integer.parseInt(img);
responseBo=adminService.unauditImg(imgid);
} catch (Exception e) {
log.error("审核失败",e);
responseBo.setResMsg("审核失败");
}
log.info("AdminController===>unauditImg 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:获取充值表数据
*/
@RequestMapping("/getDeposits.do")
public ResponseBo getDeposits(){
ResponseBo responseBo=new ResponseBo();
log.info("进入 getDeposits 方法");
try {
responseBo=adminService.getDeposits();
} catch (Exception e) {
log.info("getDeposits 方法出现异常");
e.printStackTrace();
}
return responseBo;
}
/**
* 功能描述:给用户添加积分,删除充值表
*/
@Caching(evict={@CacheEvict(value="pointscache",allEntries=true)})
@RequestMapping("/addPoint.do")
public ResponseBo addPoint(POINTS points){
ResponseBo responseBo=new ResponseBo();
log.info("进入 addPoint 方法");
try {
responseBo=adminService.addPoint(points);
} catch (Exception e) {
log.info("addPoint 方法出现异常");
e.printStackTrace();
}
return responseBo;
}
/**
* 功能描述:获取评论
*/
@RequestMapping("/getComments.do")
public ResponseBo getComments(){
ResponseBo responseBo=new ResponseBo();
log.info("进入 getComments 方法");
try {
responseBo=adminService.getComments();
} catch (Exception e) {
log.info("getComments 方法出现异常");
e.printStackTrace();
}
return responseBo;
}
/**
* 功能描述:获取举报列表
*/
@RequestMapping("/getComplains.do")
public ResponseBo getComplains(){
ResponseBo responseBo=new ResponseBo();
log.info("进入 getComplains 方法");
try {
responseBo=adminService.getComplains();
} catch (Exception e) {
log.info("getComplains 方法出现异常");
e.printStackTrace();
}
return responseBo;
}
/**
* 功能描述:处理举报评论
*/
@RequestMapping("/delComplains.do")
public ResponseBo delComplains(int compid){
ResponseBo responseBo=new ResponseBo();
log.info("进入 delComplains 方法");
try {
responseBo=adminService.delComplains(compid);
} catch (Exception e) {
log.info("delComplains 方法出现异常");
e.printStackTrace();
}
return responseBo;
}
}
源码获取:博客首页 "资源" 里下载!