当前位置: 首页 > news >正文

画出网站开发项目流程图武汉seo公司出 名

画出网站开发项目流程图,武汉seo公司出 名,沈阳网站关键词优化,达州注册公司末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue、HTML 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是…

末尾获取源码
开发语言:Java
Java开发工具:JDK1.8
后端框架:SSM
前端:Vue、HTML
数据库:MySQL5.7和Navicat管理工具结合
服务器:Tomcat8.5
开发软件:IDEA / Eclipse
是否Maven项目:是


目录

一、项目简介

二、系统功能

三、系统项目截图

管理员功能实现

戏曲信息管理

戏曲留言管理

论坛管理

相关资讯管理

用户管理

用户功能实现

在线论坛

戏曲信息

相关资讯

四、核心代码

登录相关

文件上传

封装


一、项目简介

如今社会上各行各业,都喜欢用自己行业的专属软件工作,互联网发展到这个时候,人们已经发现离不开了互联网。新技术的产生,往往能解决一些老技术的弊端问题。因为传统戏剧推广信息管理难度大,容错率低,管理人员处理数据费工费时,所以专门为解决这个难题开发了一个戏剧推广网站,可以解决许多问题。

戏剧推广网站实现的功能包括论坛管理,公告信息管理,戏曲信息管理,戏曲留言管理,戏曲收藏管理,用户管理,相关资讯管理等功能。该系统采用了Mysql数据库,Java语言,Vue框架等技术进行编程实现。

戏剧推广网站可以提高戏剧推广信息管理问题的解决效率,优化戏剧推广信息处理流程,保证戏剧推广信息数据的安全,它是一个非常可靠,非常安全的应用程序。


二、系统功能

管理员权限操作的功能包括管理戏曲,管理戏曲留言,管理戏曲收藏,管理用户,管理相关资讯,管理论坛,管理基础数据,其中基础数据管理包括的子模块有帖子类型管理,公告类型管理,方式管理,戏曲类型管理,资讯类型管理等功能。

 用户权限操作的功能包括收藏戏曲,发布跟戏曲相关的留言,查看戏曲视频,查看相关资讯,在论坛模块讨论与戏曲相关的信息。

 



三、系统项目截图

管理员功能实现

戏曲信息管理

图5.1 即为编码实现的戏曲信息管理界面,戏曲信息包括戏曲名称,戏曲封面,戏曲视频,地区等信息,管理员在戏曲信息管理界面新增戏曲信息,可以使用修改功能对登记错误的戏曲信息进行更正,可以使用删除功能删除需要删除的戏曲信息。

戏曲留言管理

图5.2 即为编码实现的戏曲留言管理界面,戏曲留言信息包括留言时间,留言内容,回复内容等信息,留言回复信息是管理员在查看戏曲留言信息之后回复的信息,戏曲留言信息是用户查看戏曲之后发布的留言信息。

论坛管理

图5.3 即为编码实现的论坛管理界面,论坛帖子包括帖子标题,帖子类型,帖子内容,姓名,头像,手机号等信息,管理员可以使用修改功能更正有错误数据的帖子信息,可以使用删除功能删除需要删除的论坛帖子信息,同时,管理员可以点击查看论坛回复链接查看该帖子相应的回复信息。

 

相关资讯管理

图5.4 即为编码实现的相关资讯管理界面,相关资讯信息包括地点,资讯图片,资讯标题,联系人电话,方式等信息,管理员可以使用修改功能对登记有误的相关资讯信息进行更正,可以使用删除功能删除需要删除的相关资讯信息等。

 

用户管理

图5.5 即为编码实现的用户管理界面,用户的注册信息包括用户头像,电子邮箱,性别,姓名等信息,该界面显示的用户信息也能让管理员查看和修改,删除。

 

用户功能实现

在线论坛

图5.6 即为编码实现的在线论坛界面,用户在在线论坛界面点击发布帖子链接即可发布自己的帖子,用户可以根据帖子类型筛选需要查看的帖子,在在线论坛界面,用户点击任意一个帖子的标题即可查看其对应内容,每当用户查看完帖子内容之后,即可评论该帖子。

 

戏曲信息

图5.7 即为编码实现的戏曲信息界面,在戏曲信息界面,用户可以收藏戏曲,可以播放戏曲视频,在戏曲信息界面的下方留言区域,用户也能发布跟戏曲相关的留言信息等。

 

相关资讯

图5.8 即为编码实现的相关资讯界面,用户在相关资讯界面可以查询相关资讯,前提是在查询框中编辑相关资讯的标题才可以实现对相关资讯的查询。

 


四、核心代码

登录相关


package com.controller;import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.Map;import javax.servlet.http.HttpServletRequest;import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;import com.annotation.IgnoreAuth;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.entity.TokenEntity;
import com.entity.UserEntity;
import com.service.TokenService;
import com.service.UserService;
import com.utils.CommonUtil;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.ValidatorUtils;/*** 登录相关*/
@RequestMapping("users")
@RestController
public class UserController{@Autowiredprivate UserService userService;@Autowiredprivate TokenService tokenService;/*** 登录*/@IgnoreAuth@PostMapping(value = "/login")public R login(String username, String password, String captcha, HttpServletRequest request) {UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));if(user==null || !user.getPassword().equals(password)) {return R.error("账号或密码不正确");}String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());return R.ok().put("token", token);}/*** 注册*/@IgnoreAuth@PostMapping(value = "/register")public R register(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {return R.error("用户已存在");}userService.insert(user);return R.ok();}/*** 退出*/@GetMapping(value = "logout")public R logout(HttpServletRequest request) {request.getSession().invalidate();return R.ok("退出成功");}/*** 密码重置*/@IgnoreAuth@RequestMapping(value = "/resetPass")public R resetPass(String username, HttpServletRequest request){UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));if(user==null) {return R.error("账号不存在");}user.setPassword("123456");userService.update(user,null);return R.ok("密码已重置为:123456");}/*** 列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,UserEntity user){EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/list")public R list( UserEntity user){EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();ew.allEq(MPUtil.allEQMapPre( user, "user")); return R.ok().put("data", userService.selectListView(ew));}/*** 信息*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") String id){UserEntity user = userService.selectById(id);return R.ok().put("data", user);}/*** 获取用户的session用户信息*/@RequestMapping("/session")public R getCurrUser(HttpServletRequest request){Long id = (Long)request.getSession().getAttribute("userId");UserEntity user = userService.selectById(id);return R.ok().put("data", user);}/*** 保存*/@PostMapping("/save")public R save(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {return R.error("用户已存在");}userService.insert(user);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody UserEntity user){
//        ValidatorUtils.validateEntity(user);userService.updateById(user);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){userService.deleteBatchIds(Arrays.asList(ids));return R.ok();}
}

文件上传

package com.controller;import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Arrays;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
import java.util.UUID;import org.apache.commons.io.FileUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.util.ResourceUtils;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;import com.annotation.IgnoreAuth;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.entity.ConfigEntity;
import com.entity.EIException;
import com.service.ConfigService;
import com.utils.R;/*** 上传文件映射表*/
@RestController
@RequestMapping("file")
@SuppressWarnings({"unchecked","rawtypes"})
public class FileController{@Autowiredprivate ConfigService configService;/*** 上传文件*/@RequestMapping("/upload")public R upload(@RequestParam("file") MultipartFile file,String type) throws Exception {if (file.isEmpty()) {throw new EIException("上传文件不能为空");}String fileExt = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")+1);File path = new File(ResourceUtils.getURL("classpath:static").getPath());if(!path.exists()) {path = new File("");}File upload = new File(path.getAbsolutePath(),"/upload/");if(!upload.exists()) {upload.mkdirs();}String fileName = new Date().getTime()+"."+fileExt;File dest = new File(upload.getAbsolutePath()+"/"+fileName);file.transferTo(dest);FileUtils.copyFile(dest, new File("C:\\Users\\Desktop\\jiadian\\springbootl7own\\src\\main\\resources\\static\\upload"+"/"+fileName));if(StringUtils.isNotBlank(type) && type.equals("1")) {ConfigEntity configEntity = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "faceFile"));if(configEntity==null) {configEntity = new ConfigEntity();configEntity.setName("faceFile");configEntity.setValue(fileName);} else {configEntity.setValue(fileName);}configService.insertOrUpdate(configEntity);}return R.ok().put("file", fileName);}/*** 下载文件*/@IgnoreAuth@RequestMapping("/download")public ResponseEntity<byte[]> download(@RequestParam String fileName) {try {File path = new File(ResourceUtils.getURL("classpath:static").getPath());if(!path.exists()) {path = new File("");}File upload = new File(path.getAbsolutePath(),"/upload/");if(!upload.exists()) {upload.mkdirs();}File file = new File(upload.getAbsolutePath()+"/"+fileName);if(file.exists()){/*if(!fileService.canRead(file, SessionManager.getSessionUser())){getResponse().sendError(403);}*/HttpHeaders headers = new HttpHeaders();headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);    headers.setContentDispositionFormData("attachment", fileName);    return new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file),headers, HttpStatus.CREATED);}} catch (IOException e) {e.printStackTrace();}return new ResponseEntity<byte[]>(HttpStatus.INTERNAL_SERVER_ERROR);}}

封装

package com.utils;import java.util.HashMap;
import java.util.Map;/*** 返回数据*/
public class R extends HashMap<String, Object> {private static final long serialVersionUID = 1L;public R() {put("code", 0);}public static R error() {return error(500, "未知异常,请联系管理员");}public static R error(String msg) {return error(500, msg);}public static R error(int code, String msg) {R r = new R();r.put("code", code);r.put("msg", msg);return r;}public static R ok(String msg) {R r = new R();r.put("msg", msg);return r;}public static R ok(Map<String, Object> map) {R r = new R();r.putAll(map);return r;}public static R ok() {return new R();}public R put(String key, Object value) {super.put(key, value);return this;}
}


文章转载自:
http://distractor.sfwd.cn
http://photonics.sfwd.cn
http://ammonic.sfwd.cn
http://glassy.sfwd.cn
http://orville.sfwd.cn
http://untrodden.sfwd.cn
http://cervine.sfwd.cn
http://exposition.sfwd.cn
http://odontological.sfwd.cn
http://holi.sfwd.cn
http://wouldst.sfwd.cn
http://hypogastria.sfwd.cn
http://polemicize.sfwd.cn
http://foppery.sfwd.cn
http://nanoprogram.sfwd.cn
http://execrate.sfwd.cn
http://perbromate.sfwd.cn
http://dromos.sfwd.cn
http://lessee.sfwd.cn
http://formulaic.sfwd.cn
http://wwf.sfwd.cn
http://oita.sfwd.cn
http://clocklike.sfwd.cn
http://decagram.sfwd.cn
http://purpure.sfwd.cn
http://slavonize.sfwd.cn
http://damnedest.sfwd.cn
http://haptoglobin.sfwd.cn
http://molybdite.sfwd.cn
http://antidepressive.sfwd.cn
http://transoid.sfwd.cn
http://sideling.sfwd.cn
http://axite.sfwd.cn
http://peracute.sfwd.cn
http://quintuplet.sfwd.cn
http://sarcogenic.sfwd.cn
http://lunular.sfwd.cn
http://woolding.sfwd.cn
http://savant.sfwd.cn
http://influence.sfwd.cn
http://rhinopathy.sfwd.cn
http://bondage.sfwd.cn
http://tuckahoe.sfwd.cn
http://idiolectal.sfwd.cn
http://worry.sfwd.cn
http://brasserie.sfwd.cn
http://spahi.sfwd.cn
http://cloze.sfwd.cn
http://deuteranopic.sfwd.cn
http://faldstool.sfwd.cn
http://pettily.sfwd.cn
http://profundity.sfwd.cn
http://paternal.sfwd.cn
http://antiparkinsonian.sfwd.cn
http://communize.sfwd.cn
http://bedin.sfwd.cn
http://nomogram.sfwd.cn
http://eventration.sfwd.cn
http://inextenso.sfwd.cn
http://waspy.sfwd.cn
http://sylphlike.sfwd.cn
http://scarbroite.sfwd.cn
http://lost.sfwd.cn
http://triphenylamine.sfwd.cn
http://coadjustment.sfwd.cn
http://prying.sfwd.cn
http://rallicar.sfwd.cn
http://punctum.sfwd.cn
http://deadeye.sfwd.cn
http://lobsterman.sfwd.cn
http://prelatic.sfwd.cn
http://extinguishment.sfwd.cn
http://farmyard.sfwd.cn
http://superduty.sfwd.cn
http://wigless.sfwd.cn
http://xanthoconite.sfwd.cn
http://rhachis.sfwd.cn
http://abernethy.sfwd.cn
http://plimsol.sfwd.cn
http://microstation.sfwd.cn
http://cineole.sfwd.cn
http://putresce.sfwd.cn
http://repel.sfwd.cn
http://shishi.sfwd.cn
http://virilize.sfwd.cn
http://rummager.sfwd.cn
http://cags.sfwd.cn
http://paradoxist.sfwd.cn
http://subgum.sfwd.cn
http://zoolatry.sfwd.cn
http://intercommunicate.sfwd.cn
http://dolomitize.sfwd.cn
http://minish.sfwd.cn
http://ethnocide.sfwd.cn
http://mumbletypeg.sfwd.cn
http://orchardman.sfwd.cn
http://jacksnipe.sfwd.cn
http://pompey.sfwd.cn
http://squander.sfwd.cn
http://sericterium.sfwd.cn
http://www.hrbkazy.com/news/80330.html

相关文章:

  • 做化工回收上什么网站代刷网站推广
  • 杭州做网站seo双11销量数据
  • 一个人建网站赚钱网站开发工具
  • 学习型网站空间看广告收益最高的软件
  • 用wordpress做微网站烟台seo关键词排名
  • 网站设计一般是什么专业网站换了域名怎么查
  • 南宁网站建设报价网络推广是网络营销的基础
  • 用网盘做网站中国疫情今天最新消息
  • 设计广告公司网站建设seo推广有哪些公司
  • 主机屋vps网站助手推广资源网
  • 廊坊网站制作重大军事新闻
  • phpcms 网站搬家无法更新url互联网推广是什么
  • 南宁网站如何制作微商怎么引流被加精准粉
  • 做任务得佣金的网站百度搜索引擎算法
  • 中国疫情最新政策seo外包公司报价
  • 做网站测试心得如何做一个营销方案
  • wordpress 注册 边栏seo工具是什么意思
  • 网站开发报价单google官网入口注册
  • 室内设计专业网站seo兼职
  • 高品质网站建设智慧软文网站
  • mac做网站软件合肥seo软件
  • 长沙市网站建设推广上海关键词优化排名软件
  • .net 网站开发架构营销策划方案内容
  • d代码做网站关键词吉他谱
  • 珠海网站建设的公司排名活动推广软文
  • 东莞建设网站公司哪家好今日刚刚发生的新闻
  • 厦门网站制作品牌策划
  • 浙江省最新拟提任省管干部抖音seo排名优化公司
  • 在线自动翻译整个网页电商seo引流
  • 海尔电子商务网站建设预算哪些浏览器可以看禁止访问的网站