邢台企业网站制作建设,电子商务网站开发的,wordpress 报名系统,深圳科技公司排名10基于springboot地方美食分享网站源码和论文361 首先#xff0c;论文一开始便是清楚的论述了系统的研究内容。其次#xff0c;剖析系统需求分析#xff0c;弄明白“做什么”#xff0c;分析包括业务分析和业务流程的分析以及用例分析#xff0c;更进一步明确系统的需求。然…基于springboot地方美食分享网站源码和论文361 首先论文一开始便是清楚的论述了系统的研究内容。其次剖析系统需求分析弄明白“做什么”分析包括业务分析和业务流程的分析以及用例分析更进一步明确系统的需求。然后在明白了系统的需求基础上需要进一步地设计系统主要包罗软件架构模式、整体功能模块、数据库设计。本项目软件架构选择B/S模式和java技术总体功能模块运用自顶向下的分层思想。再然后就是实现系统并进行代码编写实现功能。论文的最后章节总结一下自己完成本论文和开发本项目的心得和总结。通过地方美食分享网站将会使地方美食分享各个方面的工作效率带来实质性的提升。 关键字B/S模式java技术地方美食分享软件架构 演示视频 基于springboot地方美食分享网站源码和论文 Abstract First of all, the paper clearly discusses the research content of the system at the beginning. Secondly, analyze the system requirements analysis, figure out what to do, the analysis includes business analysis and business process analysis and use case analysis, and further clarify the system requirements. Then on the basis of understanding the requirements of the system, it is necessary to further design the system, mainly including the software architecture mode, the overall function module, and the database design. The software architecture of this project selects B/S mode and java technology, and the overall functional module adopts the top-down layering idea. Then it is to implement the system and write the code to realize the function. The last chapter of the thesis summarizes the experience and summary of the completion of this thesis and the development of this project. Through the local food sharing website, the work efficiency of all aspects of local food sharing will be substantially improved. Keywords: B/S modeJava technologylocal food sharingsoftware architecture 1绪论
1.1项目研究的背景
困扰管理层的许多问题当中地方美食分享管理一定是美食界不敢忽视的一块。但是管理好地方美食又面临很多麻烦需要解决例如有几个方面第一美食种类比较多如何保证能够管理到每一种美食第二如何在工作琐碎记录繁多的情况下将地方美食的当前情况反应给相关部门决策等。在此情况下开发一款地方美食分享网站于是乎变得非常合乎时宜。
经过网上调查和搜集数据我们可以发现地方美食分享管理方面的系统在美食机构中并不是相当普及地方美食分享管理方面的可以有许多改进。实际上如今信息化成为一个未来的趋势或者可以说在当前现代化的城市典范中信息化已经成为主流,发一个地方美食分享网站一方面的可能会更合乎时宜另一方面来说也可以提高在地方美食分享管理方面的效率给相关部门人的工作带来一定的便利。
1.2开发意义
人类的进步带动信息化的发展使人们生活节奏越来越快所以人们越来越重视信息的时效性。以往的管理方式已经满足不了人们对获得信息的方式、方便快捷的需求。即地方美食分享网站慢慢的被人们关注。首先网上获取信息十分的实时、便捷只要系统在线状态无论在哪里都能第一时间查找到理想的信息。
计算机技术在管理中成为人们的重要工具。可以有效快捷的解决想要获取的信息提高工作效率。
1.3项目研究内容
地方美食分享管理方面的任务繁琐以至于美食机构每年都在地方美食分享管理这方面投入较多的精力却效果甚微地方美食分享网站的目标就是为了能够缓解地方美食分享管理方面面临的压力让地方美食分享管理方面的工作变得更加高效准确。
本项目在开发和设计过程中涉及到原理和技术有B/S、java技术和MySQL数据库等等。开发步骤如下
绪论剖析项目背景说明研究的内容。开发技术系统主要使用了java技术b/s模式和myspl数据库并对此做了介绍。系统分析包罗了系统总体结构、对系统的性能、功能、流程图进行了分析。系统设计对软件功能模块和数据库进行详细设计。系统总体设计对系统管理员和用户的功能进行描述。对系统进行测试。总结心得在论文最后结束章节总结了开发这个系统和撰写论文时候自己的总结和感想。 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.ZhongshimeishiEntity;
import com.entity.view.ZhongshimeishiView;import com.service.ZhongshimeishiService;
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-04-09 17:21:19*/
RestController
RequestMapping(/zhongshimeishi)
public class ZhongshimeishiController {Autowiredprivate ZhongshimeishiService zhongshimeishiService;Autowiredprivate StoreupService storeupService;/*** 后端列表*/RequestMapping(/page)public R page(RequestParam MapString, Object params,ZhongshimeishiEntity zhongshimeishi,HttpServletRequest request){String tableName request.getSession().getAttribute(tableName).toString();if(tableName.equals(yonghu)) {zhongshimeishi.setYonghuzhanghao((String)request.getSession().getAttribute(username));}EntityWrapperZhongshimeishiEntity ew new EntityWrapperZhongshimeishiEntity();PageUtils page zhongshimeishiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, zhongshimeishi), params), params));return R.ok().put(data, page);}/*** 前端列表*/IgnoreAuthRequestMapping(/list)public R list(RequestParam MapString, Object params,ZhongshimeishiEntity zhongshimeishi, HttpServletRequest request){EntityWrapperZhongshimeishiEntity ew new EntityWrapperZhongshimeishiEntity();PageUtils page zhongshimeishiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, zhongshimeishi), params), params));return R.ok().put(data, page);}/*** 列表*/RequestMapping(/lists)public R list( ZhongshimeishiEntity zhongshimeishi){EntityWrapperZhongshimeishiEntity ew new EntityWrapperZhongshimeishiEntity();ew.allEq(MPUtil.allEQMapPre( zhongshimeishi, zhongshimeishi)); return R.ok().put(data, zhongshimeishiService.selectListView(ew));}/*** 查询*/RequestMapping(/query)public R query(ZhongshimeishiEntity zhongshimeishi){EntityWrapper ZhongshimeishiEntity ew new EntityWrapper ZhongshimeishiEntity();ew.allEq(MPUtil.allEQMapPre( zhongshimeishi, zhongshimeishi)); ZhongshimeishiView zhongshimeishiView zhongshimeishiService.selectView(ew);return R.ok(查询中式美食成功).put(data, zhongshimeishiView);}/*** 后端详情*/RequestMapping(/info/{id})public R info(PathVariable(id) Long id){ZhongshimeishiEntity zhongshimeishi zhongshimeishiService.selectById(id);zhongshimeishi.setClicknum(zhongshimeishi.getClicknum()1);zhongshimeishiService.updateById(zhongshimeishi);return R.ok().put(data, zhongshimeishi);}/*** 前端详情*/IgnoreAuthRequestMapping(/detail/{id})public R detail(PathVariable(id) Long id){ZhongshimeishiEntity zhongshimeishi zhongshimeishiService.selectById(id);zhongshimeishi.setClicknum(zhongshimeishi.getClicknum()1);zhongshimeishiService.updateById(zhongshimeishi);return R.ok().put(data, zhongshimeishi);}/*** 赞或踩*/RequestMapping(/thumbsup/{id})public R vote(PathVariable(id) String id,String type){ZhongshimeishiEntity zhongshimeishi zhongshimeishiService.selectById(id);if(type.equals(1)) {zhongshimeishi.setThumbsupnum(zhongshimeishi.getThumbsupnum()1);} else {zhongshimeishi.setCrazilynum(zhongshimeishi.getCrazilynum()1);}zhongshimeishiService.updateById(zhongshimeishi);return R.ok(投票成功);}/*** 后端保存*/RequestMapping(/save)public R save(RequestBody ZhongshimeishiEntity zhongshimeishi, HttpServletRequest request){zhongshimeishi.setId(new Date().getTime()new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(zhongshimeishi);zhongshimeishiService.insert(zhongshimeishi);return R.ok();}/*** 前端保存*/IgnoreAuthRequestMapping(/add)public R add(RequestBody ZhongshimeishiEntity zhongshimeishi, HttpServletRequest request){zhongshimeishi.setId(new Date().getTime()new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(zhongshimeishi);zhongshimeishiService.insert(zhongshimeishi);return R.ok();}/*** 修改*/RequestMapping(/update)public R update(RequestBody ZhongshimeishiEntity zhongshimeishi, HttpServletRequest request){//ValidatorUtils.validateEntity(zhongshimeishi);zhongshimeishiService.updateById(zhongshimeishi);//全部更新return R.ok();}/*** 删除*/RequestMapping(/delete)public R delete(RequestBody Long[] ids){zhongshimeishiService.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 MapString, 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));}}WrapperZhongshimeishiEntity wrapper new EntityWrapperZhongshimeishiEntity();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(yonghu)) {wrapper.eq(yonghuzhanghao, (String)request.getSession().getAttribute(username));}int count zhongshimeishiService.selectCount(wrapper);return R.ok().put(count, count);}}package com.controller;import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;import javax.servlet.http.HttpServletRequest;import org.apache.commons.lang3.StringUtils;
import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
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 com.annotation.IgnoreAuth;
import com.baidu.aip.face.AipFace;
import com.baidu.aip.face.MatchRequest;
import com.baidu.aip.util.Base64Util;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.entity.ConfigEntity;
import com.service.CommonService;
import com.service.ConfigService;
import com.utils.BaiduUtil;
import com.utils.FileUtil;
import com.utils.R;
/*** 通用接口*/
RestController
public class CommonController{Autowiredprivate CommonService commonService;private static AipFace client null;Autowiredprivate ConfigService configService; /*** 获取table表中的column列表(联动接口)* param table* param column* return*/IgnoreAuthRequestMapping(/option/{tableName}/{columnName})public R getOption(PathVariable(tableName) String tableName, PathVariable(columnName) String columnName,String level,String parent) {MapString, Object params new HashMapString, Object();params.put(table, tableName);params.put(column, columnName);if(StringUtils.isNotBlank(level)) {params.put(level, level);}if(StringUtils.isNotBlank(parent)) {params.put(parent, parent);}ListString data commonService.getOption(params);return R.ok().put(data, data);}/*** 根据table中的column获取单条记录* param table* param column* return*/IgnoreAuthRequestMapping(/follow/{tableName}/{columnName})public R getFollowByOption(PathVariable(tableName) String tableName, PathVariable(columnName) String columnName, RequestParam String columnValue) {MapString, Object params new HashMapString, Object();params.put(table, tableName);params.put(column, columnName);params.put(columnValue, columnValue);MapString, Object result commonService.getFollowByOption(params);return R.ok().put(data, result);}/*** 修改table表的sfsh状态* param table* param map* return*/RequestMapping(/sh/{tableName})public R sh(PathVariable(tableName) String tableName, RequestBody MapString, Object map) {map.put(table, tableName);commonService.sh(map);return R.ok();}/*** 获取需要提醒的记录数* param tableName* param columnName* param type 1:数字 2:日期* param map* return*/IgnoreAuthRequestMapping(/remind/{tableName}/{columnName}/{type})public R remindCount(PathVariable(tableName) String tableName, PathVariable(columnName) String columnName, PathVariable(type) String type,RequestParam MapString, Object map) {map.put(table, tableName);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));}}int count commonService.remindCount(map);return R.ok().put(count, count);}/*** 单列求和*/IgnoreAuthRequestMapping(/cal/{tableName}/{columnName})public R cal(PathVariable(tableName) String tableName, PathVariable(columnName) String columnName) {MapString, Object params new HashMapString, Object();params.put(table, tableName);params.put(column, columnName);MapString, Object result commonService.selectCal(params);return R.ok().put(data, result);}/*** 分组统计*/IgnoreAuthRequestMapping(/group/{tableName}/{columnName})public R group(PathVariable(tableName) String tableName, PathVariable(columnName) String columnName) {MapString, Object params new HashMapString, Object();params.put(table, tableName);params.put(column, columnName);ListMapString, Object result commonService.selectGroup(params);SimpleDateFormat sdf new SimpleDateFormat(yyyy-MM-dd);for(MapString, 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);}/*** 按值统计*/IgnoreAuthRequestMapping(/value/{tableName}/{xColumnName}/{yColumnName})public R value(PathVariable(tableName) String tableName, PathVariable(yColumnName) String yColumnName, PathVariable(xColumnName) String xColumnName) {MapString, Object params new HashMapString, Object();params.put(table, tableName);params.put(xColumn, xColumnName);params.put(yColumn, yColumnName);ListMapString, Object result commonService.selectValue(params);SimpleDateFormat sdf new SimpleDateFormat(yyyy-MM-dd);for(MapString, 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);}/*** 按值统计时间统计类型*/IgnoreAuthRequestMapping(/value/{tableName}/{xColumnName}/{yColumnName}/{timeStatType})public R valueDay(PathVariable(tableName) String tableName, PathVariable(yColumnName) String yColumnName, PathVariable(xColumnName) String xColumnName, PathVariable(timeStatType) String timeStatType) {MapString, Object params new HashMapString, Object();params.put(table, tableName);params.put(xColumn, xColumnName);params.put(yColumn, yColumnName);params.put(timeStatType, timeStatType);ListMapString, Object result commonService.selectTimeStatValue(params);SimpleDateFormat sdf new SimpleDateFormat(yyyy-MM-dd);for(MapString, 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);}/*** 人脸比对* * param face1 人脸1* param face2 人脸2* return*/RequestMapping(/matchFace)IgnoreAuthpublic R matchFace(String face1, String face2,HttpServletRequest request) {if(clientnull) {/*String AppID configService.selectOne(new EntityWrapperConfigEntity().eq(name, AppID)).getValue();*/String APIKey configService.selectOne(new EntityWrapperConfigEntity().eq(name, APIKey)).getValue();String SecretKey configService.selectOne(new EntityWrapperConfigEntity().eq(name, SecretKey)).getValue();String token BaiduUtil.getAuth(APIKey, SecretKey);if(tokennull) {return R.error(请在配置管理中正确配置APIKey和SecretKey);}client new AipFace(null, APIKey, SecretKey);client.setConnectionTimeoutInMillis(2000);client.setSocketTimeoutInMillis(60000);}JSONObject res null;try {File path new File(ResourceUtils.getURL(classpath:static).getPath());if(!path.exists()) {path new File();}File upload new File(path.getAbsolutePath(),/upload/);File file1 new File(upload.getAbsolutePath()/face1);File file2 new File(upload.getAbsolutePath()/face2);String img1 Base64Util.encode(FileUtil.FileToByte(file1));String img2 Base64Util.encode(FileUtil.FileToByte(file2));MatchRequest req1 new MatchRequest(img1, BASE64);MatchRequest req2 new MatchRequest(img2, BASE64);ArrayListMatchRequest requests new ArrayListMatchRequest();requests.add(req1);requests.add(req2);res client.match(requests);System.out.println(res.get(result));} catch (FileNotFoundException e) {e.printStackTrace();return R.error(文件不存在);} catch (IOException e) {e.printStackTrace();} return R.ok().put(score, com.alibaba.fastjson.JSONObject.parse(res.getJSONObject(result).get(score).toString()));}
}