果冻眼企鹅
码龄4年
关注
提问 私信
  • 博客:13,125
    13,125
    总访问量
  • 35
    原创
  • 48,158
    排名
  • 118
    粉丝
  • 0
    铁粉
  • 学习成就

个人简介:编程小能手

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2020-05-22
博客简介:

ll2695015910的博客

查看详细资料
  • 原力等级
    成就
    当前等级
    3
    当前总分
    202
    当月
    26
个人成就
  • 获得232次点赞
  • 内容获得0次评论
  • 获得181次收藏
创作历程
  • 28篇
    2024年
  • 8篇
    2020年
成就勋章
TA的专栏
  • 项目实战
    3篇
  • Spring框架
    3篇
  • 中间件
    2篇
  • MySQL必知必会
    14篇
兴趣领域 设置
  • Java
    javakafkaspring bootspring cloud
创作活动更多

AI大模型如何赋能电商行业,引领变革?

如何使用AI技术实现购物推荐、会员分类、商品定价等方面的创新应用?如何运用AI技术提高电商平台的销售效率和用户体验呢?欢迎分享您的看法

175人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Exception-try/catch/finally的return顺序

会被执行,输出Finally block。这种在finally块中使用return的做法一般不推荐,因为它会使程序的流程变得难以理解,并且可能会隐藏try和catch块中的错误。当在try - catch - finally语句块中有return语句时,finally块中的代码总是会被执行,并且其执行顺序在try或者catch中的return语句之后,但在方法真正返回之前。在 Java 中,如果finally块中也有return语句,那么这个return语句会覆盖try或者catch中的return语句。
原创
发布博客 2024.11.06 ·
179 阅读 ·
5 点赞 ·
0 评论 ·
1 收藏

统计机器运行时间,Sql及代码重构优化

要做的就是用每台机器每个线程的end减去start,然后求和并除以线程数,得到每台机器的平均时间。将四个字段都查出来用List封装好后,交给业务层去处理。取代两层for循环后能够将数据处理耗时降低到2ms。使用stream流和map来处理同机器多线程的问题。需求:统计每台机器各个线程的平均运行时间。将结果封装进List,直接返回。直接用Sql语句去做。
原创
发布博客 2024.11.05 ·
296 阅读 ·
4 点赞 ·
0 评论 ·
4 收藏

Spring框架的AOP理解及添加日志案例

1。
原创
发布博客 2024.11.05 ·
312 阅读 ·
4 点赞 ·
0 评论 ·
10 收藏

常见用于从 HTTP 请求中提取数据的注解

RequestParam:用于从查询参数或表单数据中提取数据。@PathVariable:用于从 URL 路径中提取数据。@RequestBody:用于从请求体中提取数据(如 JSON 或 XML 格式)。@RequestHeader:用于从请求头中提取数据。@CookieValue:用于从请求的 Cookie 中提取数据。@ModelAttribute:用于将多个请求参数绑定到一个 Java 对象。
原创
发布博客 2024.11.05 ·
903 阅读 ·
20 点赞 ·
0 评论 ·
5 收藏

网页请求到加载的过程

整个过程涉及多种技术和协议,包括 DNS 解析、TCP/IP 通信、HTTP 请求和响应、浏览器渲染等。每一步都是确保最终用户能够快速且正确地访问所请求页面的重要环节。
原创
发布博客 2024.10.31 ·
460 阅读 ·
5 点赞 ·
0 评论 ·
3 收藏

@Configuration+@Bean 和 @Component 的区别

Bean创建时机在第一次调用 @Bean 方法时创建并注册 bean控制程度显式定义创建和配置逻辑使用场景适合复杂的初始化逻辑、依赖其他 bean@Component创建时机应用启动时自动扫描并注册类为 bean控制程度由 Spring 自动管理,较少的控制使用场景适合简单的业务逻辑组件、服务类、数据访问类等。
原创
发布博客 2024.10.30 ·
398 阅读 ·
3 点赞 ·
0 评论 ·
7 收藏

Nacos启动报错中含有No DataSource set

今天在云服务器上用Docker部署Nacos时遇到一个坑,折腾了好久,现在把几个要注意的点记下,提醒自己也是分享给同样踩坑的朋友1.报错:2024-10-29 01:52:32,574 INFO Bean ‘org.springframework.security.access.expression.method.DefaultMethodSecurityExpressionHandler@6650813a’ of type [org.springframework.security.access.ex
原创
发布博客 2024.10.29 ·
517 阅读 ·
12 点赞 ·
0 评论 ·
10 收藏

接口中的静态常量在项目中的使用,以及固长列表和变长列表

因为这是接口内的定义,而我们并没有主动去加上权限修饰,出于接口出现的意义,那在 Java 接口内定义的字段默认会有:默认静态,默认常量,默认公共权限。但是,ALL 是一个可变的 ArrayList,它本身的引用不能变,但这个 ArrayList 可以修改其内容,因此你可以对它调用 add() 等修改操作。当使用 Arrays.asList() 方法时,返回的是一个固定大小的列表,这个列表不能改变大小,但它的内容(元素)是可以修改的。这种列表的大小是不可变的,意味着你不能对它进行修改,如添加或删除元素。
原创
发布博客 2024.10.14 ·
971 阅读 ·
12 点赞 ·
0 评论 ·
20 收藏

RabbitMQ消息接收类Receiver

会使用 @RabbitListener 注解,来表示该类是一个消息接收器,用于处理来自 RabbitMQ 队列的消息。
原创
发布博客 2024.10.10 ·
823 阅读 ·
18 点赞 ·
0 评论 ·
16 收藏

调用RabbitMQ工具类Sender在Controller中完成消息发送

hi() 和 hello1() 方法 使用第一个 send(),通过默认交换器发送消息,直接使用路由键进行简单路由。hello2() 方法 使用第二个 send(),通过自定义交换器和路由键发送消息,支持更加灵活的消息路由。由此我们可以知道,
原创
发布博客 2024.10.09 ·
1093 阅读 ·
22 点赞 ·
0 评论 ·
11 收藏

队列,交换器,路由键之间的联系

在 RabbitMQ 中,队列(Queue)、交换器(Exchange)和路由键(Routing Key)之间的联系构成了消息的路由机制。绑定是交换器和队列之间的关联关系,它定义了消息如何通过路由键从交换器发送到特定的队列。首部交换器(Headers Exchange):基于消息的头部信息路由消息,路由键不在这类交换器中使用。扇出交换器(Fanout Exchange):将消息广播到所有与该交换器绑定的队列,不考虑路由键。交换器 → 队列:交换器根据绑定的路由键,将消息路由到匹配的队列中。
原创
发布博客 2024.10.09 ·
308 阅读 ·
4 点赞 ·
0 评论 ·
5 收藏

Mybatis-Plus的lambdaQuery()方法

除了 lambdaQuery(),MyBatis-Plus 还提供了很多类似的方法,比如 lambdaUpdate()、lambdaChainQuery() 用于更新操作或链式查询。:由于使用了 Lambda 表达式,字段名称是通过实体类的方法引用,避免了手动输入字段名时的拼写错误。使用 lambdaQuery() 方法时,可以基于实体类生成一个查询条件构造器,编写查询条件。该示例查询所有邮件地址包含 gmail 且年龄大于等于 25 岁的用户,并按照名字升序排序。创建 Lambda 查询。
原创
发布博客 2024.10.08 ·
306 阅读 ·
8 点赞 ·
0 评论 ·
4 收藏

MySQL更新和删除数据

在这个例子中我们看到,首先 UPDATE后紧跟的就是你要更新的表名,然后用SET 设置你要修改的列名和它的新值,最后就是用WHERE确定要更新的行的过滤条件。因为没加WHERE子句的,就会更新表中所有的行。DELETE不需要列名或通配符,DELETE删除整行而不是删除列,为了删除指定的列,可以使用上文提到的UPDATE。,使得在更新多行数据时,即使某一行或某几行出错,也会继续更新其他的行,而不是默认的取消UPDATE操作。在使用DELETE语句时,也要注意不要省略WHERE子句,否则就是删除表中的所有行。
原创
发布博客 2024.09.22 ·
353 阅读 ·
5 点赞 ·
0 评论 ·
4 收藏

MySQL插入数据

此例子插入一个新客户到customers表。要存储到每个列中的值在VALUES子句中给出,对每个列必须给出一个值,如果数据源给某列没有值,也要使用NULL值。在第二种方式中,如果某列没给出值,可以直接在VALUES子句前面不提供列名,也就不用手动填入NULL值了(省略的列必须满足其中一个条件 : 1.该列定义为允许NULL值 2.在表定义中对该列给出了默认值)类似于合并两张所有列属性(列名可不同,只要每一对列的位置相互对应就行)相同的表。如果SELECT语句FROM的表为空,则没有行会插入,合并空表。
原创
发布博客 2024.09.19 ·
191 阅读 ·
10 点赞 ·
0 评论 ·
3 收藏

全文本搜索

MySQL创建指定列中各词的一个索引,搜索可以针对这些词进行。8、邻近搜索是许多全文本搜索支持的一个特定,它能搜索相邻的词(在相同的句子中,相同段落中或者在特定数目的词的部分中等等),但是MySQL全文本搜索现在不支持邻近操作符。在建立索引后,可以使用两个函数Match()和Against()执行全文本搜索,其中Match()指定被搜索的列,Against()指定要使用的搜索表达式。例如,它返回的结果表,在第一行或前几行会返回直接包含有索引的行,之后就会按顺序返回不包含索引但是包含有第一行的词的行。
原创
发布博客 2024.09.17 ·
466 阅读 ·
25 点赞 ·
0 评论 ·
12 收藏

MySQL组合查询

在用UNION组合查询时,只能使用一条ORDER BY子句,而且它必须出现在最后一条SELECT语句之后。但当遇到要过滤更加多样条件的数据时,或者从多个表中检索数据,使用UNION可能会使处理更简单。(WHERE只能完成像UNION一样的功能,如果确定需要每个条件的匹配行全部出现,则必须使用UNION ALL)UNION是使用很简单,就是先给出每条SELECT语句,在每条语句之间放上关键字UNION。以上的例子都是比较简单的组合查询,组合的均是相同的表,其实。1.在单个查询中从不同的表返回类似结构的数据。
原创
发布博客 2024.09.17 ·
385 阅读 ·
5 点赞 ·
0 评论 ·
10 收藏

创建高级联结

别名除了用于列名和计算字段外,SQL还允许该表名起别名。这样做主要有两个理由:1.缩短SQL语句2.允许在单条SELECT语句中多次使用相同的表表的别名不仅可以用于WHERE子句,它还可以用于SELECT的列表、ORDER BY子句以及语句的其他部分。
原创
发布博客 2024.09.16 ·
322 阅读 ·
5 点赞 ·
0 评论 ·
4 收藏

MySQL联结表

在联结两个表时,你实际上做的是将第一个表中的每一行与第二个表中的每一行配对。没有WHERE子句,第一个表中的每行将与第二个表中的每行配对,得到的就是两张表的笛卡尔积(检索出的行的数目将是第一个表中的行数乘以第二给表中的行数)。要注意的是,WHERE子句中的两个匹配列使用了完全限定名。所以我们在进行联表查询时要保证所有联结都有WHERE子句,并且同时保证WHERE子句的正确性。,外键是某个表中的一列,它包含另一个表的主键值,定义了两个表之间的关系。联结的创建很简单,规定要联结的所有表以及它们如何关联即可。
原创
发布博客 2024.09.16 ·
311 阅读 ·
9 点赞 ·
0 评论 ·
5 收藏

使用子查询

涉及外部查询的子查询时一定要注意,使用完全限定名,如在对orders表进行子查询的子句里用到了customers表中的cust_id字段就是orders涉及外部查询。上述步骤都可以作为一个单独的SQL查询来执行,当然我们也可以把一条SELECT语句返回的结果用于另一条SELECT语句的WHERE子句。为了执行该操作,应如下操作。子查询即嵌套在其他查询中的查询。2.对于检索出的每个客户,统计其在orders表中的订单数目。2.检索具有1检索出的商品编号的所有客户ID。3.检索2返回的所有客户ID的客户信息。
原创
发布博客 2024.09.15 ·
147 阅读 ·
3 点赞 ·
0 评论 ·
2 收藏

MySQL分组与排序

分组是在SELECT语句的GROUP BY子句中创建的。上面的SELECT语句创建了两个列,vend_id表示供应商的编号,num_prods表示供应商对此订单供应了几件商品。GROUP BY子句的几个重要规定:1.GROUP BY子句可以包含任意数目的列。这使得对分组能进行嵌套。2.使用了嵌套分组后,所有分组的列将在一起进行计算。3.GROUP BY子句中的每个列都必须是检索列或有效的表达式(不能是聚集函数)。如果在SELECT语句中使用表达式,则必须GROUP BY子句中也要指定相同的表达式,
原创
发布博客 2024.09.12 ·
414 阅读 ·
3 点赞 ·
0 评论 ·
4 收藏
加载更多