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

个人博客网站模板wordpress成都seo达人

个人博客网站模板wordpress,成都seo达人,中国建筑企业网,企业网站的宣传功能体现在哪里#x1f34a;作者#xff1a;计算机编程-吉哥 #x1f34a;简介#xff1a;专业从事JavaWeb程序开发#xff0c;微信小程序开发#xff0c;定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事#xff0c;生活就是快乐的。 #x1f34a;心愿#xff1a;点… 作者计算机编程-吉哥 简介专业从事JavaWeb程序开发微信小程序开发定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事生活就是快乐的。 心愿点赞 收藏 ⭐评论 文末获取源码联系 精彩专栏推荐订阅 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能 3.1【角色】 3.2【农民功能模块】 3.3【管理员功能模块】 3.4【农资企业功能模块】 4.项目演示截图 4.1 农资企业注册 4.2 农民管理 4.3 农资企业管理 4.4 首页统计农资企业 4.5 生资商品管理 4.6 前台首页 4.7 生资商品 4.8 商品详情 4.9 个人中心 5.核心代码 5.1拦截器 5.2分页工具类 5.3文件上传下载 5.4前端请求 6.LW文档大纲参考 背景意义介绍  农场投入品运营管理系统是一款基于Java、SpringBoot和Vue技术栈开发的综合性信息管理平台。在当前农业现代化快速发展的背景下该系统的设计与实现具有重要的现实意义。 首先系统针对不同的角色管理员、农民、农资企业提供了定制化的功能模块满足了各方在农业生产、销售、管理等方面的需求。特别是对于农民系统提供的农资企业信息、生资商品、农业资讯等功能有助于他们及时了解市场动态提高农业生产效益。 其次系统通过集成购物车、个人中心等模块为农民提供了便捷的在线购物体验进一步拓宽了农资销售渠道促进了农资企业的发展。同时管理员功能模块中的轮播图管理、农民管理、农业资讯管理等有助于提高农场管理效率实现农业资源的优化配置。 此外该系统采用Java、SpringBoot和Vue技术实现具有跨平台、易维护、高性能等优点为农场投入品运营管理提供了稳定的技术支持。通过此系统有助于推动我国农业信息化建设促进农业产业升级实现农业可持续发展。总之农场投入品运营管理系统的开发与应用对于提升我国农业管理水平、促进农业现代化具有重要意义。 1.技术选型 springboot、mybatisplus、vue、elementui、html、css、js、mysql、jdk1.8 2.开发工具 idea、navicat 3.功能 3.1【角色】 管理员、农民、农资企业 3.2【农民功能模块】 登录首页农资企业生资商品农业资讯留言板购物车个人中心个人中心、修改密码、发票信息、用户反馈、订单管理、我的收藏、地址 3.3【管理员功能模块】 登录首页轮播图管理管理员管理农民管理农资企业农业资讯管理留言板管理用户反馈管理 3.4【农资企业功能模块】 登录首页农资企业分类管理生资商品管理发票信息管理商品订单 4.项目演示截图 4.1 农资企业注册 4.2 农民管理 4.3 农资企业管理 4.4 首页统计农资企业 4.5 生资商品管理 4.6 前台首页 4.7 生资商品 4.8 商品详情 4.9 个人中心 5.核心代码 5.1拦截器 package com.interceptor;import com.alibaba.fastjson.JSONObject; import com.annotation.IgnoreAuth; import com.entity.TokenEntity; import com.service.TokenService; import com.utils.R; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.stereotype.Component; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.method.HandlerMethod; import org.springframework.web.servlet.HandlerInterceptor;import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.PrintWriter;/*** 权限(Token)验证*/ Component public class AuthorizationInterceptor implements HandlerInterceptor {public static final String LOGIN_TOKEN_KEY Token;Autowiredprivate TokenService tokenService;Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {//支持跨域请求response.setHeader(Access-Control-Allow-Methods, POST, GET, OPTIONS, DELETE);response.setHeader(Access-Control-Max-Age, 3600);response.setHeader(Access-Control-Allow-Credentials, true);response.setHeader(Access-Control-Allow-Headers, x-requested-with,request-source,Token, Origin,imgType, Content-Type, cache-control,postman-token,Cookie, Accept,authorization);response.setHeader(Access-Control-Allow-Origin, request.getHeader(Origin));// 跨域时会首先发送一个OPTIONS请求这里我们给OPTIONS请求直接返回正常状态if (request.getMethod().equals(RequestMethod.OPTIONS.name())) {response.setStatus(HttpStatus.OK.value());return false;}IgnoreAuth annotation;if (handler instanceof HandlerMethod) {annotation ((HandlerMethod) handler).getMethodAnnotation(IgnoreAuth.class);} else {return true;}//从header中获取tokenString token request.getHeader(LOGIN_TOKEN_KEY);/*** 不需要验证权限的方法直接放过*/if(annotation!null) {return true;}TokenEntity tokenEntity null;if(StringUtils.isNotBlank(token)) {tokenEntity tokenService.getTokenEntity(token);}if(tokenEntity ! null) {request.getSession().setAttribute(userId, tokenEntity.getUserid());request.getSession().setAttribute(role, tokenEntity.getRole());request.getSession().setAttribute(tableName, tokenEntity.getTablename());request.getSession().setAttribute(username, tokenEntity.getUsername());return true;}PrintWriter writer null;response.setCharacterEncoding(UTF-8);response.setContentType(application/json; charsetutf-8);try {writer response.getWriter();writer.print(JSONObject.toJSONString(R.error(401, 请先登录)));} finally {if(writer ! null){writer.close();}}return false;} } 5.2分页工具类 package com.utils;import java.io.Serializable; import java.util.List; import java.util.Map;import com.baomidou.mybatisplus.plugins.Page;/*** 分页工具类*/ public class PageUtils implements Serializable {private static final long serialVersionUID 1L;//总记录数private long total;//每页记录数private int pageSize;//总页数private long totalPage;//当前页数private int currPage;//列表数据private List? list;/*** 分页* param list 列表数据* param totalCount 总记录数* param pageSize 每页记录数* param currPage 当前页数*/public PageUtils(List? list, int totalCount, int pageSize, int currPage) {this.list list;this.total totalCount;this.pageSize pageSize;this.currPage currPage;this.totalPage (int)Math.ceil((double)totalCount/pageSize);}/*** 分页*/public PageUtils(Page? page) {this.list page.getRecords();this.total page.getTotal();this.pageSize page.getSize();this.currPage page.getCurrent();this.totalPage page.getPages();}/** 空数据的分页*/public PageUtils(MapString, Object params) {Page page new Query(params).getPage();new PageUtils(page);}public int getPageSize() {return pageSize;}public void setPageSize(int pageSize) {this.pageSize pageSize;}public int getCurrPage() {return currPage;}public void setCurrPage(int currPage) {this.currPage currPage;}public List? getList() {return list;}public void setList(List? list) {this.list list;}public long getTotalPage() {return totalPage;}public void setTotalPage(long totalPage) {this.totalPage totalPage;}public long getTotal() {return total;}public void setTotal(long total) {this.total total;}} 5.3文件上传下载 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)IgnoreAuthpublic 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);if(StringUtils.isNotBlank(type) type.equals(1)) {ConfigEntity configEntity configService.selectOne(new EntityWrapperConfigEntity().eq(name, faceFile));if(configEntitynull) {configEntity new ConfigEntity();configEntity.setName(faceFile);configEntity.setValue(fileName);} else {configEntity.setValue(fileName);}configService.insertOrUpdate(configEntity);}return R.ok().put(file, fileName);}/*** 下载文件*/IgnoreAuthRequestMapping(/download)public ResponseEntitybyte[] 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()){HttpHeaders headers new HttpHeaders();headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); headers.setContentDispositionFormData(attachment, fileName); return new ResponseEntitybyte[](FileUtils.readFileToByteArray(file),headers, HttpStatus.CREATED);}} catch (IOException e) {e.printStackTrace();}return new ResponseEntitybyte[](HttpStatus.INTERNAL_SERVER_ERROR);}} 5.4前端请求 import axios from axios import router from /router/router-static import storage from /utils/storageconst http axios.create({timeout: 1000 * 86400,withCredentials: true,baseURL: /furniture,headers: {Content-Type: application/json; charsetutf-8} }) // 请求拦截 http.interceptors.request.use(config {config.headers[Token] storage.get(Token) // 请求头带上tokenreturn config }, error {return Promise.reject(error) }) // 响应拦截 http.interceptors.response.use(response {if (response.data response.data.code 401) { // 401, token失效router.push({ name: login })}return response }, error {return Promise.reject(error) }) export default http 6.LW文档大纲参考 具体LW如何写法可以咨询博主耐心分享 你可能还有感兴趣的项目 更多项目推荐:计算机毕业设计项目 如果大家有任何疑虑请在下方咨询或评论
http://www.dnsts.com.cn/news/220427.html

相关文章:

  • 做js题目的网站河源东莞网站建设
  • 中山做百度网站的公司名称找人做辅助的网站
  • 自助建站系网站建设设计哪个济南兴田德润简介
  • 网站的建站程序百度鞍钢贴吧
  • 做网咖的网站UE做的比较好的网站
  • 蚌埠公司做网站最新域名查询访问
  • 网站开发 浏览器兼容性网站备案修改域名
  • 网站建立公司 优帮云typecho 转 wordpress
  • 太原做网站需要多少钱明天网页游戏开服表
  • wordpress 两个网站吗个人网站开发意义
  • 新网站如何做免费推广网络公司名字大全简单好听
  • 网站备案地区名php wordpress教程 pdf
  • 网站基本常识东莞网站推广策划活动
  • 网站建设公司.如何创建自己网站
  • 驾校网站模版百度一键优化
  • 泰安网站开发推广cms网站怎么建
  • 郑州网站优化渠道毕业设计网站选题
  • 做网站不推广管用吗郑州网站排名哪家好
  • 做网站合肥学校部门网站建设总结
  • 是用cms还是直接用语言写网站网站名称怎么填写
  • 和小男生做的网站东莞互联网招聘
  • 网站开发创意想法中企动力网站策划
  • 建设外贸购物网站临淄招聘信息最新招聘信息
  • 如何海外网站建设广州致格广告有限公司网站
  • 地方类门户网站如何让百度收录自己的网站信息
  • 可信赖的坪山网站建设千库网官网首页登录
  • 烟台企业网站制作公司浙江建设厅网站
  • 长沙网站技术专家做网站开封
  • 哪里有营销型网站最新报价建站软件有哪些功能
  • 生鲜网站建设规划书网页小游戏插件不支持