在Internet高速发展的今天,我们生活的各个领域都涉及到计算机的应用,其中包括网络作者与美工交流平台的网络应用,在外国网络作者与美工交流平台已经是很普遍的方式,不过国内的网络作者与美工交流平台可能还处于起步阶段。网络作者与美工交流平台具有交流信息管理的功能。网络作者与美工交流平台采用技术,基于mysql开发,实现了对主页,个人中心,用户管理,版主管理,版块管理,热门帖子管理,系统管理等内容进行管理,本系统具有良好的兼容性和适应性,为用户提供更多的网络作者与美工交流信息,也提供了良好的平台,从而提高系统的核心竞争力。
本文首先介绍了设计的背景与研究目的,其次介绍系统相关技术,重点叙述了系统功能分析以及详细设计,最后总结了系统的开发心得。
关键词:网络作者与美工交流平台;java技术;mysql
基于ssm+jsp网络作者与美工交流平台源码和论文871
演示视频:
基于ssm+jsp网络作者与美工交流平台源码和论文
Abstract
In the Internet rapid development today, we all spheres of life involves the application of computer, the authors and artists including network communication platform of network applications, authors and artists in foreign network communication platform is a common way, but the domestic network of the authors and artists exchange platform may also in its infancy. The network writer and artist exchange platform has the function of exchange information management. Network the authors use technology, and graphic communication platform based on mysql development, the implementation of the home page, personal center, user management, the moderator management, sector management, popular management, system management, and other content management, this system has good compatibility and adaptability, to provide users with more web authors and artists to exchange information, also provide a good platform, Thus improve the core competitiveness of the system.
This paper first introduces the design background and research purpose, then introduces the system related technology, focuses on the system function analysis and detailed design, and finally summarizes the development experience of the system.
Key words: Network writer and artist exchange platform; Java technology; mysql
package com.controller;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
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 com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;
import com.entity.RementieziEntity;
import com.entity.view.RementieziView;
import com.service.RementieziService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;
import java.io.IOException;
import com.service.StoreupService;
import com.entity.StoreupEntity;
/**
* 热门帖子
* 后端接口
* @author
* @email
* @date 2022-03-06 15:43:09
*/
@RestController
@RequestMapping("/rementiezi")
public class RementieziController {
@Autowired
private RementieziService rementieziService;
@Autowired
private StoreupService storeupService;
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,RementieziEntity rementiezi,
HttpServletRequest request){
String tableName = request.getSession().getAttribute("tableName").toString();
if(tableName.equals("banzhu")) {
rementiezi.setBanzhuzhanghao((String)request.getSession().getAttribute("username"));
}
if(tableName.equals("yonghu")) {
rementiezi.setYonghuzhanghao((String)request.getSession().getAttribute("username"));
}
EntityWrapper<RementieziEntity> ew = new EntityWrapper<RementieziEntity>();
PageUtils page = rementieziService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, rementiezi), params), params));
request.setAttribute("data", page);
return R.ok().put("data", page);
}
/**
* 前端列表
*/
@IgnoreAuth
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params,RementieziEntity rementiezi,
HttpServletRequest request){
EntityWrapper<RementieziEntity> ew = new EntityWrapper<RementieziEntity>();
PageUtils page = rementieziService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, rementiezi), params), params));
request.setAttribute("data", page);
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/lists")
public R list( RementieziEntity rementiezi){
EntityWrapper<RementieziEntity> ew = new EntityWrapper<RementieziEntity>();
ew.allEq(MPUtil.allEQMapPre( rementiezi, "rementiezi"));
return R.ok().put("data", rementieziService.selectListView(ew));
}
/**
* 查询
*/
@RequestMapping("/query")
public R query(RementieziEntity rementiezi){
EntityWrapper< RementieziEntity> ew = new EntityWrapper< RementieziEntity>();
ew.allEq(MPUtil.allEQMapPre( rementiezi, "rementiezi"));
RementieziView rementieziView = rementieziService.selectView(ew);
return R.ok("查询热门帖子成功").put("data", rementieziView);
}
/**
* 后端详情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id){
RementieziEntity rementiezi = rementieziService.selectById(id);
rementiezi.setClicknum(rementiezi.getClicknum()+1);
rementiezi.setClicktime(new Date());
rementieziService.updateById(rementiezi);
return R.ok().put("data", rementiezi);
}
/**
* 前端详情
*/
@IgnoreAuth
@RequestMapping("/detail/{id}")
public R detail(@PathVariable("id") Long id){
RementieziEntity rementiezi = rementieziService.selectById(id);
rementiezi.setClicknum(rementiezi.getClicknum()+1);
rementiezi.setClicktime(new Date());
rementieziService.updateById(rementiezi);
return R.ok().put("data", rementiezi);
}
/**
* 赞或踩
*/
@RequestMapping("/thumbsup/{id}")
public R vote(@PathVariable("id") String id,String type){
RementieziEntity rementiezi = rementieziService.selectById(id);
if(type.equals("1")) {
rementiezi.setThumbsupnum(rementiezi.getThumbsupnum()+1);
} else {
rementiezi.setCrazilynum(rementiezi.getCrazilynum()+1);
}
rementieziService.updateById(rementiezi);
return R.ok("投票成功");
}
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody RementieziEntity rementiezi, HttpServletRequest request){
rementiezi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(rementiezi);
rementieziService.insert(rementiezi);
return R.ok();
}
/**
* 前端保存
*/
@RequestMapping("/add")
public R add(@RequestBody RementieziEntity rementiezi, HttpServletRequest request){
rementiezi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(rementiezi);
rementieziService.insert(rementiezi);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
public R update(@RequestBody RementieziEntity rementiezi, HttpServletRequest request){
//ValidatorUtils.validateEntity(rementiezi);
rementieziService.updateById(rementiezi);//全部更新
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
rementieziService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
/**
* 提醒接口
*/
@RequestMapping("/remind/{columnName}/{type}")
public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request,
@PathVariable("type") String type,@RequestParam Map<String, Object> map) {
map.put("column", columnName);
map.put("type", type);
if(type.equals("2")) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
Date remindStartDate = null;
Date remindEndDate = null;
if(map.get("remindstart")!=null) {
Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindStart);
remindStartDate = c.getTime();
map.put("remindstart", sdf.format(remindStartDate));
}
if(map.get("remindend")!=null) {
Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindEnd);
remindEndDate = c.getTime();
map.put("remindend", sdf.format(remindEndDate));
}
}
Wrapper<RementieziEntity> wrapper = new EntityWrapper<RementieziEntity>();
if(map.get("remindstart")!=null) {
wrapper.ge(columnName, map.get("remindstart"));
}
if(map.get("remindend")!=null) {
wrapper.le(columnName, map.get("remindend"));
}
String tableName = request.getSession().getAttribute("tableName").toString();
if(tableName.equals("banzhu")) {
wrapper.eq("banzhuzhanghao", (String)request.getSession().getAttribute("username"));
}
if(tableName.equals("yonghu")) {
wrapper.eq("yonghuzhanghao", (String)request.getSession().getAttribute("username"));
}
int count = rementieziService.selectCount(wrapper);
return R.ok().put("count", count);
}
/**
* 前端智能排序
*/
@IgnoreAuth
@RequestMapping("/autoSort")
public R autoSort(@RequestParam Map<String, Object> params,RementieziEntity rementiezi, HttpServletRequest request,String pre){
EntityWrapper<RementieziEntity> ew = new EntityWrapper<RementieziEntity>();
Map<String, Object> newMap = new HashMap<String, Object>();
Map<String, Object> param = new HashMap<String, Object>();
Iterator<Map.Entry<String, Object>> it = param.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<String, Object> entry = it.next();
String key = entry.getKey();
String newKey = entry.getKey();
if (pre.endsWith(".")) {
newMap.put(pre + newKey, entry.getValue());
} else if (StringUtils.isEmpty(pre)) {
newMap.put(newKey, entry.getValue());
} else {
newMap.put(pre + "." + newKey, entry.getValue());
}
}
params.put("sort", "clicknum");
params.put("order", "desc");
PageUtils page = rementieziService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, rementiezi), params), params));
return R.ok().put("data", page);
}
/**
* 协同算法(按收藏推荐)
*/
@RequestMapping("/autoSort2")
public R autoSort2(@RequestParam Map<String, Object> params,RementieziEntity rementiezi, HttpServletRequest request){
String userId = request.getSession().getAttribute("userId").toString();
String inteltypeColumn = "bankuaimingcheng";
List<StoreupEntity> storeups = storeupService.selectList(new EntityWrapper<StoreupEntity>().eq("type", 1).eq("userid", userId).eq("tablename", "rementiezi").orderBy("addtime", false));
List<String> inteltypes = new ArrayList<String>();
Integer limit = params.get("limit")==null?10:Integer.parseInt(params.get("limit").toString());
List<RementieziEntity> rementieziList = new ArrayList<RementieziEntity>();
//去重
if(storeups!=null && storeups.size()>0) {
for(StoreupEntity s : storeups) {
rementieziList.addAll(rementieziService.selectList(new EntityWrapper<RementieziEntity>().eq(inteltypeColumn, s.getInteltype())));
}
}
EntityWrapper<RementieziEntity> ew = new EntityWrapper<RementieziEntity>();
params.put("sort", "id");
params.put("order", "desc");
PageUtils page = rementieziService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, rementiezi), params), params));
List<RementieziEntity> pageList = (List<RementieziEntity>)page.getList();
if(rementieziList.size()<limit) {
int toAddNum = (limit-rementieziList.size())<=pageList.size()?(limit-rementieziList.size()):pageList.size();
for(RementieziEntity o1 : pageList) {
boolean addFlag = true;
for(RementieziEntity o2 : rementieziList) {
if(o1.getId().intValue()==o2.getId().intValue()) {
addFlag = false;
break;
}
}
if(addFlag) {
rementieziList.add(o1);
if(--toAddNum==0) break;
}
}
}
page.setList(rementieziList);
return R.ok().put("data", page);
}
/**
* (按值统计)
*/
@RequestMapping("/value/{xColumnName}/{yColumnName}")
public R value(@PathVariable("yColumnName") String yColumnName, @PathVariable("xColumnName") String xColumnName,HttpServletRequest request) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("xColumn", xColumnName);
params.put("yColumn", yColumnName);
EntityWrapper<RementieziEntity> ew = new EntityWrapper<RementieziEntity>();
String tableName = request.getSession().getAttribute("tableName").toString();
if(tableName.equals("banzhu")) {
ew.eq("banzhuzhanghao", (String)request.getSession().getAttribute("username"));
}
if(tableName.equals("yonghu")) {
ew.eq("yonghuzhanghao", (String)request.getSession().getAttribute("username"));
}
List<Map<String, Object>> result = rementieziService.selectValue(params, ew);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
for(Map<String, Object> m : result) {
for(String k : m.keySet()) {
if(m.get(k) instanceof Date) {
m.put(k, sdf.format((Date)m.get(k)));
}
}
}
return R.ok().put("data", result);
}
/**
* (按值统计)时间统计类型
*/
@RequestMapping("/value/{xColumnName}/{yColumnName}/{timeStatType}")
public R valueDay(@PathVariable("yColumnName") String yColumnName, @PathVariable("xColumnName") String xColumnName, @PathVariable("timeStatType") String timeStatType,HttpServletRequest request) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("xColumn", xColumnName);
params.put("yColumn", yColumnName);
params.put("timeStatType", timeStatType);
EntityWrapper<RementieziEntity> ew = new EntityWrapper<RementieziEntity>();
String tableName = request.getSession().getAttribute("tableName").toString();
if(tableName.equals("banzhu")) {
ew.eq("banzhuzhanghao", (String)request.getSession().getAttribute("username"));
}
if(tableName.equals("yonghu")) {
ew.eq("yonghuzhanghao", (String)request.getSession().getAttribute("username"));
}
List<Map<String, Object>> result = rementieziService.selectTimeStatValue(params, ew);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
for(Map<String, Object> m : result) {
for(String k : m.keySet()) {
if(m.get(k) instanceof Date) {
m.put(k, sdf.format((Date)m.get(k)));
}
}
}
return R.ok().put("data", result);
}
/**
* 分组统计
*/
@RequestMapping("/group/{columnName}")
public R group(@PathVariable("columnName") String columnName,HttpServletRequest request) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("column", columnName);
EntityWrapper<RementieziEntity> ew = new EntityWrapper<RementieziEntity>();
String tableName = request.getSession().getAttribute("tableName").toString();
if(tableName.equals("banzhu")) {
ew.eq("banzhuzhanghao", (String)request.getSession().getAttribute("username"));
}
if(tableName.equals("yonghu")) {
ew.eq("yonghuzhanghao", (String)request.getSession().getAttribute("username"));
}
List<Map<String, Object>> result = rementieziService.selectGroup(params, ew);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
for(Map<String, Object> m : result) {
for(String k : m.keySet()) {
if(m.get(k) instanceof Date) {
m.put(k, sdf.format((Date)m.get(k)));
}
}
}
return R.ok().put("data", result);
}
}