做搜狗手机网站优网站如何备份

news/2025/9/24 3:52:46/文章来源:
做搜狗手机网站优,网站如何备份,网站建设市场调研报告,做微商如何网站推广目录 前言1. 基本知识2. 注意事项3. 拓展 前言 以往的Java基本知识推荐阅读#xff1a; java框架 零基础从入门到精通的学习路线 附开源项目面经等#xff08;超全#xff09;【Java项目】实战CRUD的功能整理#xff08;持续更新#xff09;Mybatis从入门到精通#xf… 目录 前言1. 基本知识2. 注意事项3. 拓展 前言 以往的Java基本知识推荐阅读 java框架 零基础从入门到精通的学习路线 附开源项目面经等超全【Java项目】实战CRUD的功能整理持续更新Mybatis从入门到精通全MyBatis-plus从入门到精通全 1. 基本知识 在MyBatis中动态SQL是一种强大的功能允许在select, insert, update, delete 等标签中根据条件动态构建SQL语句 这种动态性可以简化数据库查询的复杂度避免硬编码查询逻辑 MyBatis 提供了几种常用的动态 SQL 标签用来处理条件判断、循环和字符串拼接等操作 if标签根据给定的条件动态拼接SQL select idfindUsers resultTypeUserSELECT * FROM userswhereif testname ! nullAND name #{name}/ifif testage ! nullAND age #{age}/if/where /selectchoose, when, otherwise标签类似于Java中的switch语句允许你在多个条件中选择一个来执行 select idfindUsersByStatus resultTypeUserSELECT * FROM userswherechoosewhen teststatus ! nullAND status #{status}/whenotherwiseAND status active/otherwise/choose/where /selectforeach标签用于处理循环一般用来遍历集合构建IN查询等 select idfindUsersByIds resultTypeUserSELECT * FROM usersWHERE id INforeach itemid collectionlist open( separator, close)#{id}/foreach /selecttrim, where, set标签 trim去掉拼接后多余的前后缀where自动在拼接后的条件前加WHERE并去除多余的ANDset主要用于UPDATE语句自动去掉多余的逗号 update idupdateUserUPDATE userssetif testname ! nullname #{name},/ifif testage ! nullage #{age},/if/setWHERE id #{id} /update2. 注意事项 使用此种方式需要注意动态SQL带来的OOM风险 在复杂动态SQL的构建中特别是当涉及大批量数据或复杂拼接时容易导致内存溢出OOM问题 尤其是在foreach中处理大量数据时如果不加以控制可能会占用大量内存 假设有一个非常大的List例如数百万条数据 如果在MyBatis中直接使用foreach将整个列表插入或作为查询条件这会导致内存问题 select idfindLargeUsersByIds resultTypeUserSELECT * FROM usersWHERE id INforeach itemid collectionlist open( separator, close)#{id}/foreach /select在这种情况下MyBatis会尝试将数百万个id拼接到一个SQL语句中导致内存占用过高最终导致OOM 规避OOM的方法 分页处理可以将大批量数据分段处理例如在代码中将list切分为较小的块 ListListInteger partitionedIds Lists.partition(largeIdsList, 1000); for (ListInteger idsBatch : partitionedIds) {userMapper.findLargeUsersByIds(idsBatch); }避免过大的IN查询IN查询是常见的OOM来源可以通过数据库表连接等方式优化查询。 懒加载通过懒加载策略避免一次性加载过多数据到内存中 3. 拓展 在Java代码中进行参数校验是一种很好的实践尤其是在使用动态SQL时如果不校验传入的参数可能会导致意外的SQL拼接从而带来性能问题或安全隐患 基本的注解校验 public class User {NotNull(message Name cannot be null)private String name;Min(value 18, message Age should not be less than 18)private Integer age; }在使用这些注解后如果传入的参数不符合条件就会抛出ConstraintViolationException 结合Spring的Valid注解可以自动在控制层或服务层进行参数校验 PostMapping(/createUser) public ResponseEntity? createUser(Valid RequestBody User user, BindingResult result) {if (result.hasErrors()) {return new ResponseEntity(result.getAllErrors(), HttpStatus.BAD_REQUEST);}userService.createUser(user);return ResponseEntity.ok(User created successfully); }自定义校验逻辑有时内置的注解不够可以自定义校验注解 例如限制用户名长度或格式 Target({ElementType.FIELD}) Retention(RetentionPolicy.RUNTIME) Constraint(validatedBy UsernameValidator.class) public interface ValidUsername {String message() default Invalid username;Class?[] groups() default {};Class? extends Payload[] payload() default {}; }public class UsernameValidator implements ConstraintValidatorValidUsername, String {public void initialize(ValidUsername constraint) {}public boolean isValid(String username, ConstraintValidatorContext context) {return username ! null username.matches(^[a-zA-Z0-9]$);} }总的来说 MyBatis中的动态SQL功能非常灵活但也存在潜在的性能和内存问题 在复杂查询中务必小心处理大量数据操作合理运用分页、懒加载等技术 在Java代码层面通过参数校验来确保数据的安全和正确性是防止问题发生的关键步骤

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

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

相关文章

广州网站设计 信科网络做公司网站域名怎么做记账凭证

一、第一章 1、常见的RTOS,嵌入式操作系统的特点 RTOS就是实时操作系统。根据响应时间的不同,可分为以下3类: (1)强实时嵌入式操作系统 响应时间:微妙或毫秒 (2)一般实时…

印度网站后缀小说推文推广平台

类 ResourceBundle 的核心作用就是用来加载指定的属性资源文件(.properties 文件),其作用有点类似类 Properties。 public void test() {Locale locale new Locale("zh", "CN");// 根据指定的语言环境和基名加载资源文件…

权重较高网站网站开发后台需要自己写吗

STM32 在 Windows 上的交叉编译二 调试 在上一篇博客 《在Windows上交叉编译STM32(环境搭建)》 ,已经让 CubeMX 生成的工程成功编译,并下载到板子上了。 这篇博客主要继续介绍接下来的步骤,调试。硬件是使用的 ST-LINK ,别的也无…

百城建设提质工程网站小程序商城开发方案

文章目录 Vue3样式绑定1. class 属性绑定1.1 v-bind:class 设置一个对象,从而动态的切换 class1.2 在对象中传入更多属性用来动态切换多个 class1.3 直接绑定数据里的一个对象1.4 绑定一个返回对象的计算属性。这是一个常用且强大的模式1. 5 数据语法1.6 errorClass…

wordpress网站字体凡科快图官方

一、安装依赖分析工具 npm install webpack-bundle-analyz 二、修改webpack.config.js文件 1、导入上面下载的包 2、在plugins里创建实例 三、启动打包命令 npm run build 会弹出如下界面: 四、优化 1、通过CDN导入react-dom文件 修改webpack.config.js文件里…

青岛做外贸网站建设平面设计免费模板网站

Python中的pandas模块进行数据分析。 接下来pandas介绍中将学习到如下8块内容:1、数据结构简介:DataFrame和Series2、数据索引index3、利用pandas查询数据4、利用pandas的DataFrames进行统计分析5、利用pandas实现SQL操作6、利用pandas进行缺失值的处理7…

做网站用什么软件做上海怎么做seo推广

内容参考于:易道云信息技术研究院VIP课 上一个内容:显示游戏数据到小助手UI 码云地址(游戏窗口化助手 分支):https://gitee.com/dye_your_fingers/sro_-ex.git 码云版本号:852c339f5e4c103390b123e0eaed…

青岛手机建站模板企业免费邮箱注册申请

#计算器开发需求##1、实现加减乘除及拓号优先级解析#2、用户输入 1 - 2 * ( (60-30 (-40/5) * (9-2*5/3 7 /3*99/4*2998 10 * 568/14 )) - (-4*3)/ (16-3*2) )等类似公式后,#必须自己解析里面的(),,-,*,/符号和公式,运算后得出结果,结果必须…

营销网站特点seo建站推广

(1)打开控制面板,进入【控制面板\系统和安全\Windows Defender 防火墙】 (2)点击左侧菜单【高级设置】,进入防火墙设置页面 (3)根据需要选择【入站规则】或者【出站规则】&#xff…

如何设立网站php做直播网站

文章目录 一.信息收集1.网段探测2.端口扫描3.版本服务探测4.漏扫5.目录扫描 二.漏洞利用1.分析信息2..fuzz工具 三.getshell四.提权六.nmap提权 一.信息收集 1.网段探测 因为使用的是VMware,靶机的IP地址是192.168.9.84 ┌──(root㉿kali)-[~/kali/vulnhub] └─…

做电商网站注意什么网页设计零基础学习课程

安装elasticsearch、kibana、IK分词器、扩展IK词典 后面还会安装kibana,这个会提供可视化界面方面学习。 需要注意的是elasticsearch和kibana版本一定要一样!!! 否则就像这样 elasticsearch 1、创建网络 因为我们还需要部署k…

东营网站建设优化如何把自己网站推广出去

文章目录 一、抽象类和接口总结总结补充说明主要区别 二、抽象类2.1 抽象类概述与声明2.2 抽象方法2.3 抽象类与抽象方法的使用 三、接口3.1 接口概述概述特征声明示例 3.2 接口的实现和继承说明示例 3.3 显式接口成员实现说明注意示例 一、抽象类和接口总结 总结 抽象类和接…

中国建设银行网站下载安装创新的南昌网站设计

接上文 RabbitMQ-主题模式 1 第四种交换机类型 header:它是根据头部信息来决定的,在我们发送的消息中是可以携带一些头部信息的,类似与HTTP,我们可以根据这些头部信息来决定路由到哪一个消息队列中。 修改配置类内容 Configuration public…

做信息网站需要什么邢台网站建设厂家

我按照pyecharts的官网案例学习flask,其中有段flask前后端分离的示例。官方教程:https://pyecharts.org/#/zh-cn...我用前后端分离展示柱状图、饼图都没问题,但把pyecharts的图形函数换成地理图表,就展示不出来,请问是…

专业彩票网站开发 APP开发网站开发与设计结课论文

阿里妹导读:从“叉手礼”、“水盆羊汤”、“酒晕妆”这些唐朝人的生活细节,到精美的坊间造型、充满意境的诗词歌赋,《长安十二时辰》不仅以缜密剧情赢得赞誉,更还原了一个真实的大唐长安。在精良制作之上,技术人如何让…

网页设计流程要怎么写冯宗耀seo教程

2023年天津市公共租赁住房网上登记流程图 小编为大家整理了天津市公共租赁住房网上登记流程,从登记到填写信息。 想要体验的朋友请看一下。 申请天津公共租赁住房时拒绝申报家庭情况会怎样? 天津市住房保障家庭在享受住房保障期间,如在应申…

制作高端网站公司排名全网自助下单最便宜

关于单引号和双引号 当输出的字符串内部没有单引号的时候,外面可以用单引号, 但是如果内部有了单引号,那么外部只能用双引号。 dict {Name: Zara, Age: 7, Class: First} print(dict) print (dict[Name]: , dict[Name]) print ("dic…

如何做像淘宝一样的网站在线短网址缩短工具

基于原生html5实现,不需要falsh支持,进度可以自定义显示,控制灵活, 本来打算使用jquery插件进行异步文件上传,比如uploadfy但是需要额外的支持,也有人用iframe模仿异步上传机制,感觉都比较别扭。…

淘宝客如何建设推广网站最好看免费观看高清大全一影视下载

文章目录 01. Nginx 简介02. 正向代理和反向代理03. Nginx 和 Apache、Tomcat 之间的不同点04. Nginx 的优点05. Nginx 常用的功能特性06. Nginx 下载07. Nginx 安装1. 源码安装前的环境准备2. Nginx 源码简单安装方式3. Nginx yum 安装方式4. Nginx 源码复杂安装方式 08. Ngin…