基于springboot游戏分享网站源码和论文

网络的广泛应用给生活带来了十分的便利。所以把游戏分享管理与现在网络相结合,利用java技术建设游戏分享网站,实现游戏分享的信息化。则对于进一步提高游戏分享管理发展,丰富游戏分享管理经验能起到不少的促进作用。

游戏分享网站能够通过互联网得到广泛的、全面的宣传,让尽可能多的用户了解和熟知游戏分享网站的便捷高效,不仅为群众提供了服务,而且也推广了自己,让更多的群众了解自己。对于游戏分享而言,若拥有自己的系统,通过系统得到更好的管理,同时提升了形象。

系统设计的现状和趋势,从需求、结构、数据库等方面的设计到系统的实现,分别为管理员和用户实现。论文的内容从系统的设计、描述、实现、分析、测试方面来表明开发的过程。本系统根据现实情况来选择一种可行的开发方案,借助java编程语言和MySQL数据库等实现系统的全部功能,接下来对系统进行测试,测试系统是否有漏洞和测试用户权限来完善系统最终系统完成达到相关标准。

关键字:游戏分享网站 java  MySQL数据库

基于springboot游戏分享网站源码和论文346 

演示视频:

基于springboot游戏分享网站源码和论文

Abstract

The wide application of network has brought great convenience to life. Therefore, the game sharing management is combined with the current network, using Java technology to build a game sharing website, to achieve the information sharing of the game. It can further improve the development of game sharing management and enrich the experience of game sharing management.

Game sharing websites can be widely and comprehensively publicized through the Internet, so that as many users as possible understand and be familiar with the convenience and efficiency of game sharing websites, not only provide services for the masses, but also promote themselves, so that more people understand themselves. For game sharing, if you have your own system, you can get better management through the system and improve your image.

The present situation and trend of the system design, from the requirements, structure, database and other aspects of the design to the realization of the system, respectively for the realization of administrators and users. The content of the paper shows the development process from the aspects of system design, description, implementation, analysis and testing. The system according to the reality to choose a feasible development plan, with the help of Java programming language and MySQL database to achieve all the functions of the system, then the system is tested, test whether the system has vulnerabilities and test user permissions to improve the system, the final system to achieve relevant standards.

Keywords: game sharing website Java MySQL database

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.YouxiwenzhangEntity;
import com.entity.view.YouxiwenzhangView;import com.service.YouxiwenzhangService;
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-14 15:56:29*/
@RestController
@RequestMapping("/youxiwenzhang")
public class YouxiwenzhangController {@Autowiredprivate YouxiwenzhangService youxiwenzhangService;@Autowiredprivate StoreupService storeupService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,YouxiwenzhangEntity youxiwenzhang,HttpServletRequest request){String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("yonghu")) {youxiwenzhang.setYonghuming((String)request.getSession().getAttribute("username"));}EntityWrapper<YouxiwenzhangEntity> ew = new EntityWrapper<YouxiwenzhangEntity>();PageUtils page = youxiwenzhangService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, youxiwenzhang), params), params));return R.ok().put("data", page);}/*** 前端列表*/@IgnoreAuth@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,YouxiwenzhangEntity youxiwenzhang, HttpServletRequest request){EntityWrapper<YouxiwenzhangEntity> ew = new EntityWrapper<YouxiwenzhangEntity>();PageUtils page = youxiwenzhangService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, youxiwenzhang), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( YouxiwenzhangEntity youxiwenzhang){EntityWrapper<YouxiwenzhangEntity> ew = new EntityWrapper<YouxiwenzhangEntity>();ew.allEq(MPUtil.allEQMapPre( youxiwenzhang, "youxiwenzhang")); return R.ok().put("data", youxiwenzhangService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(YouxiwenzhangEntity youxiwenzhang){EntityWrapper< YouxiwenzhangEntity> ew = new EntityWrapper< YouxiwenzhangEntity>();ew.allEq(MPUtil.allEQMapPre( youxiwenzhang, "youxiwenzhang")); YouxiwenzhangView youxiwenzhangView =  youxiwenzhangService.selectView(ew);return R.ok("查询游戏文章成功").put("data", youxiwenzhangView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){YouxiwenzhangEntity youxiwenzhang = youxiwenzhangService.selectById(id);youxiwenzhang.setClicktime(new Date());youxiwenzhangService.updateById(youxiwenzhang);return R.ok().put("data", youxiwenzhang);}/*** 前端详情*/@IgnoreAuth@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){YouxiwenzhangEntity youxiwenzhang = youxiwenzhangService.selectById(id);youxiwenzhang.setClicktime(new Date());youxiwenzhangService.updateById(youxiwenzhang);return R.ok().put("data", youxiwenzhang);}/*** 赞或踩*/@RequestMapping("/thumbsup/{id}")public R vote(@PathVariable("id") String id,String type){YouxiwenzhangEntity youxiwenzhang = youxiwenzhangService.selectById(id);if(type.equals("1")) {youxiwenzhang.setThumbsupnum(youxiwenzhang.getThumbsupnum()+1);} else {youxiwenzhang.setCrazilynum(youxiwenzhang.getCrazilynum()+1);}youxiwenzhangService.updateById(youxiwenzhang);return R.ok("投票成功");}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody YouxiwenzhangEntity youxiwenzhang, HttpServletRequest request){youxiwenzhang.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(youxiwenzhang);youxiwenzhangService.insert(youxiwenzhang);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody YouxiwenzhangEntity youxiwenzhang, HttpServletRequest request){youxiwenzhang.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(youxiwenzhang);youxiwenzhangService.insert(youxiwenzhang);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody YouxiwenzhangEntity youxiwenzhang, HttpServletRequest request){//ValidatorUtils.validateEntity(youxiwenzhang);youxiwenzhangService.updateById(youxiwenzhang);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){youxiwenzhangService.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<YouxiwenzhangEntity> wrapper = new EntityWrapper<YouxiwenzhangEntity>();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("yonghuming", (String)request.getSession().getAttribute("username"));}int count = youxiwenzhangService.selectCount(wrapper);return R.ok().put("count", count);}/*** 前端智能排序*/@IgnoreAuth@RequestMapping("/autoSort")public R autoSort(@RequestParam Map<String, Object> params,YouxiwenzhangEntity youxiwenzhang, HttpServletRequest request,String pre){EntityWrapper<YouxiwenzhangEntity> ew = new EntityWrapper<YouxiwenzhangEntity>();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", "clicktime");params.put("order", "desc");PageUtils page = youxiwenzhangService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, youxiwenzhang), params), params));return R.ok().put("data", page);}/*** 协同算法(按收藏推荐)*/@RequestMapping("/autoSort2")public R autoSort2(@RequestParam Map<String, Object> params,YouxiwenzhangEntity youxiwenzhang, HttpServletRequest request){String userId = request.getSession().getAttribute("userId").toString();String inteltypeColumn = "youxileixing";List<StoreupEntity> storeups = storeupService.selectList(new EntityWrapper<StoreupEntity>().eq("type", 1).eq("userid", userId).eq("tablename", "youxiwenzhang").orderBy("addtime", false));List<String> inteltypes = new ArrayList<String>();Integer limit = params.get("limit")==null?10:Integer.parseInt(params.get("limit").toString());List<YouxiwenzhangEntity> youxiwenzhangList = new ArrayList<YouxiwenzhangEntity>();//去重if(storeups!=null && storeups.size()>0) {for(StoreupEntity s : storeups) {youxiwenzhangList.addAll(youxiwenzhangService.selectList(new EntityWrapper<YouxiwenzhangEntity>().eq(inteltypeColumn, s.getInteltype())));}}EntityWrapper<YouxiwenzhangEntity> ew = new EntityWrapper<YouxiwenzhangEntity>();params.put("sort", "id");params.put("order", "desc");PageUtils page = youxiwenzhangService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, youxiwenzhang), params), params));List<YouxiwenzhangEntity> pageList = (List<YouxiwenzhangEntity>)page.getList();if(youxiwenzhangList.size()<limit) {int toAddNum = (limit-youxiwenzhangList.size())<=pageList.size()?(limit-youxiwenzhangList.size()):pageList.size();for(YouxiwenzhangEntity o1 : pageList) {boolean addFlag = true;for(YouxiwenzhangEntity o2 : youxiwenzhangList) {if(o1.getId().intValue()==o2.getId().intValue()) {addFlag = false;break;}}if(addFlag) {youxiwenzhangList.add(o1);if(--toAddNum==0) break;}}} else if(youxiwenzhangList.size()>limit) {youxiwenzhangList = youxiwenzhangList.subList(0, limit);}page.setList(youxiwenzhangList);return R.ok().put("data", page);}}
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*/@IgnoreAuth@RequestMapping("/option/{tableName}/{columnName}")public R getOption(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName,String level,String parent) {Map<String, Object> params = new HashMap<String, 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);}List<String> data = commonService.getOption(params);return R.ok().put("data", data);}/*** 根据table中的column获取单条记录* @param table* @param column* @return*/@IgnoreAuth@RequestMapping("/follow/{tableName}/{columnName}")public R getFollowByOption(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName, @RequestParam String columnValue) {Map<String, Object> params = new HashMap<String, Object>();params.put("table", tableName);params.put("column", columnName);params.put("columnValue", columnValue);Map<String, 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 Map<String, Object> map) {map.put("table", tableName);commonService.sh(map);return R.ok();}/*** 获取需要提醒的记录数* @param tableName* @param columnName* @param type 1:数字 2:日期* @param map* @return*/@IgnoreAuth@RequestMapping("/remind/{tableName}/{columnName}/{type}")public R remindCount(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName, @PathVariable("type") String type,@RequestParam Map<String, 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);}/*** 单列求和*/@IgnoreAuth@RequestMapping("/cal/{tableName}/{columnName}")public R cal(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName) {Map<String, Object> params = new HashMap<String, Object>();params.put("table", tableName);params.put("column", columnName);Map<String, Object> result = commonService.selectCal(params);return R.ok().put("data", result);}/*** 分组统计*/@IgnoreAuth@RequestMapping("/group/{tableName}/{columnName}")public R group(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName) {Map<String, Object> params = new HashMap<String, Object>();params.put("table", tableName);params.put("column", columnName);List<Map<String, Object>> result = commonService.selectGroup(params);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);}/*** (按值统计)*/@IgnoreAuth@RequestMapping("/value/{tableName}/{xColumnName}/{yColumnName}")public R value(@PathVariable("tableName") String tableName, @PathVariable("yColumnName") String yColumnName, @PathVariable("xColumnName") String xColumnName) {Map<String, Object> params = new HashMap<String, Object>();params.put("table", tableName);params.put("xColumn", xColumnName);params.put("yColumn", yColumnName);List<Map<String, Object>> result = commonService.selectValue(params);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);}/*** (按值统计)时间统计类型*/@IgnoreAuth@RequestMapping("/value/{tableName}/{xColumnName}/{yColumnName}/{timeStatType}")public R valueDay(@PathVariable("tableName") String tableName, @PathVariable("yColumnName") String yColumnName, @PathVariable("xColumnName") String xColumnName, @PathVariable("timeStatType") String timeStatType) {Map<String, Object> params = new HashMap<String, Object>();params.put("table", tableName);params.put("xColumn", xColumnName);params.put("yColumn", yColumnName);params.put("timeStatType", timeStatType);List<Map<String, Object>> result = commonService.selectTimeStatValue(params);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);}/*** 人脸比对* * @param face1 人脸1* @param face2 人脸2* @return*/@RequestMapping("/matchFace")@IgnoreAuthpublic R matchFace(String face1, String face2,HttpServletRequest request) {if(client==null) {/*String AppID = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "AppID")).getValue();*/String APIKey = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "APIKey")).getValue();String SecretKey = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "SecretKey")).getValue();String token = BaiduUtil.getAuth(APIKey, SecretKey);if(token==null) {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");ArrayList<MatchRequest> requests = new ArrayList<MatchRequest>();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()));}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/247431.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++笔记之RTTI、RAII、MVC、MVVM、SOLID在C++中的表现

C++笔记之RTTI、RAII、MVC、MVVM、SOLID在C++中的表现 —— 杭州 2024-01-28 code review! 文章目录 C++笔记之RTTI、RAII、MVC、MVVM、SOLID在C++中的表现1.RTTI、RAII、MVC、MVVM、SOLID简述2.RAII (Resource Acquisition Is Initialization)3.RTTI (Run-Time Type Informat…

2023-2024年重庆职业院校技能大赛“信息安全管理与评估”比赛样题

2023 年重庆职业院校技能大赛&#xff08;高等职业教育&#xff09; “信息安全管理与评估”样题任务书 第一阶段&#xff1a;任务 1 网络平台搭建&#xff08;50 分&#xff09;任务 2 网络安全设备配置与防护&#xff08;250 分&#xff09; 第二阶段&#xff1a;第一部分 网…

基于springboo校园社团信息管理系统

摘要 随着高校规模的扩大和学生社团活动的日益丰富多彩&#xff0c;校园社团信息管理成为一个备受关注的问题。为了更有效地组织、管理和推动校园社团的发展&#xff0c;本文设计并实现了一套基于Spring Boot的校园社团信息管理系统。本系统以实现社团信息的集中管理和高效运营…

HTML+CSS:全景轮播

效果演示 实现了一个简单的网页布局&#xff0c;其中包含了五个不同的盒子&#xff0c;每个盒子都有一个不同的背景图片&#xff0c;并且它们之间有一些间距。当鼠标悬停在某个盒子上时&#xff0c;它的背景图片会变暗&#xff0c;并且文字会变成白色。这些盒子和按钮都被放在一…

Nginx实现反向代理负载均衡实验

实验环境&#xff1a; VM REdhat虚拟机&#xff08;192.168.87.5&#xff09;一台、VM Redhat虚拟机&#xff08;192.168.87.3&#xff09;一台、阿里云服务器&#xff08;47.93.79.92&#xff09;一台 实验要求&#xff1a;通过windows浏览器访问192.168.87.5&#xff08;虚…

使用npm安装插件时报权限问题解决方法

使用npm安装插件时报权限问题解决方法 使用npm安装yarn时总报这个错误&#xff0c;显示权限问题&#xff0c;之前安装其它插件包的时候也有遇到过&#xff0c;总是潦草解决&#xff0c;今天仔细查了一下&#xff0c;是我没有管理端权限&#xff0c;应该是之前安装npm的时候没有…

从零学习Linux操作系统 第二十部分 mariadb数据库的管理

一、对于数据库的基本介绍 1.什么是数据库 数据库就是个高级的表格软件 2.常见数据库 Mysql Oracle mongodb db2 sqlite sqlserver … 3.Mysql (SUN -----> Oracle) 4.mariadb (Mysql的一种&#xff09; 数据库中的常用名词 1.字段 &#xff1a;表格中的表头 2.表 &…

企业为何对数据可视化越发看重?

数据可视化&#xff0c;作为信息时代的一项重要技术&#xff0c;正在企业中崭露头角&#xff0c;逐渐成为业务决策和运营管理的得力助手。企业之所以对数据可视化如此重视&#xff0c;是因为它为企业带来了诸多实际利益和战略优势。 首先&#xff0c;数据可视化为企业提供了更…

HiveSQL题——排序函数(row_number/rank/dense_rank)

一、窗口函数的知识点 1.1 窗户函数的定义 窗口函数可以拆分为【窗口函数】。窗口函数官网指路&#xff1a; LanguageManual WindowingAndAnalytics - Apache Hive - Apache Software Foundationhttps://cwiki.apache.org/confluence/display/Hive/LanguageManual%20Windowin…

盛最多水的容器[中等]

一、题目 给定一个长度为n的整数数组height。有n条垂线&#xff0c;第i条线的两个端点是(i, 0)和(i, height[i])。找出其中的两条线&#xff0c;使得它们与x轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。也就是求x轴与y轴的面积。 说明&#xff1a;你不能倾…

HCIE之BGP正则表达式(四)

BGP 一、AS-Path正则表达式数字| 等同于或的关系[]和.$ 一个字符串的结束_代表任意^一个字符串的开始()括号包围的是一个组合\ 转义字符* 零个或多个&#xff1f;零个或一个一个或多个 二、BGP对等体组三、BGP安全性 一、AS-Path正则表达式 正则表达式是按照一定模版匹配字符串…

解决 Required Integer parameter ‘uid‘ is not present

1.原因分析 后端没接收到uid可能是前端没传递uid也可能是前端传递了uid&#xff0c;但是传递方式与后端接收方式不匹配&#xff0c;导致没接收到更大的可能是因为后端请求方式错了。比如&#xff1a; 2.解决方案 先确定前端传参方式与后端请求方式是匹配的后端get请求的话…

SpringMvc切换Json转换工具

SpringBoot切换使用goolge的Gson作为SpringMvc的Json转换工具 <!-- gson依赖 --> <dependency><groupId>com.google.code.gson</groupId><artifactId>gson</artifactId> </dependency>Configuration public class JsonWebConfig {B…

Docker 和 Kubernetes:容器化时代的崛起与演变

在过去的十年间&#xff0c;容器化技术彻底改变了软件开发和部署的面貌。 Docker 的登场无疑是这场变革的催化剂&#xff0c;它将应用和服务的打包、分发、部署流程标准化&#xff0c;让开发者的生活变得更加简单。 紧随其后&#xff0c;Kubernetes 作为容器编排的领军者&#…

【通讯录案例-一些细节的补充 Objective-C语言】

一、好,这个里边儿啊,我们在示例程序里边儿,我们当前做的程序,左边,这个屏幕左边,和这个tableView的Cell这一块儿, 1.左边,是有一个小的间距,是吧, 我现在想把这个间距,取消掉, 怎么着来做, 1)首先:tableView,是吧,我们这个控制器是什么,是“联系人列表”…

【网络】WireShark过滤 | WireShark实现TCP三次握手和四次挥手

目录 一、开启WireShark的大门 1.1 WireShark简介 1.2 常用的Wireshark过滤方式 二、如何抓包搜索关键字 2.1 协议过滤 2.2 IP过滤 ​编辑 2.3 过滤端口 2.4 过滤MAC地址 2.5 过滤包长度 2.6 HTTP模式过滤 三、ARP协议分析 四、WireShark之ICMP协议 五、TCP三次握…

MySQL 学习记录

基本常识 row-size-limitsblob&#xff1a; BLOB and TEXT columns cannot have DEFAULT values.Instances of BLOB or TEXT columns in the result of a query that is processed using a temporary table causes the server to use a table on disk rather than in memory b…

SQL注入:二次注入

SQL注入系列文章&#xff1a; 初识SQL注入-CSDN博客 SQL注入&#xff1a;联合查询的三个绕过技巧-CSDN博客 SQL注入&#xff1a;报错注入-CSDN博客 SQL注入&#xff1a;盲注-CSDN博客 目录 什么是二次注入&#xff1f; 二次注入演示 1、可以注册新用户 2、可以登录->…

防御保护--NAT策略

目录 NAT策略 NAT类型 server-map表 P2P --- peer to peer 网络类型 ​编辑 目标NAT--服务器映射 双向NAT ​编辑 多出口NAT NAT策略 静态NAT --- 一对一 动态NAT --- 多对多 NAPT --- 一对多的NAPT --- easy ip --- 多对多NAPT 服务器映射 源NAT--基于源IP地址进行转…

IDEA插件(MyBatis Log Free)

引言 在Java开发中&#xff0c;MyBatis 是一款广泛使用的持久层框架&#xff0c;它简化了SQL映射并提供了强大的数据访问能力。为了更好地调试和优化MyBatis应用中的SQL语句执行&#xff0c;一款名为 MyBatis Log Free 的 IntelliJ IDEA 插件应运而生。这款插件旨在帮助开发者…