13 用户认证 13.2 中间件的概念 每个中间件都负责执行一些特定的功能.在路由以及视图被调用前后做一些额外的操作. 在项目中我们的中间件只是一个类. 中间件中的方法 中间件中有5个方法可以定义: process_request(self,request) process_view(self, request, callback, callback_args, callback_kwargs) process_template_response(self,request,respo
2024-12-02封装 封装给对象提供了隐藏内部特性和行为的能力。对象提供一些能被其他对象访问的方法来改变它内部的数据。在Java当中,有3种修饰符:public,private和protected。每一种修饰符给其他的位于同一个包或者不同包下面对象赋予了不同的访问权限。 下面列出了使用封装的一些好处: 通过隐藏对象的属性来保护对象内部的状态。提高了代码的可用性和可维护性,因为对象的行为可以被单独的改变或者是扩展。禁止对象之间的不良交互提高模块化。 参考这个文档获取更多关于封装的细节和示例。 多态 多态是编程语言
2024-12-02前言 ThreadPoolExecutor类是JDK提供给开发者的一个比较常用的多线程任务执行器。也因为比较常用,所以笔者将用本文一文去结合源码梳理掌握ThreadPoolExecutor类的几个核心知识点,相信看过本文之后,你将会更好地掌握ThreadPoolExecutor类。 ThreadPoolExecutor类是什么? 首先要明确地是ThreadPoolExecutor不是线程池(ThreadPool),而是一个基于线程池的任务执行器服务(Executor Service),主要作
2024-12-02在Spring中,使用工厂模式创建Bean对象有多种方式。以下是Spring中使用工厂模式创建Bean对象的几个核心概念: 使用工厂模式创建Bean对象的步骤如下: 定义Bean类:创建一个Java类,作为要创建的Bean对象。 创建Bean工厂:在Spring配置文件中配置Bean工厂,或者使用注解等方式创建Bean工厂实例。 配置Bean定义:在配置文件或者通过注解等方式中定义Bean的配置元数据,包括Bean的类名、属性值、依赖关系等。 注册Bean定义:将Bean定义注册到Be
2024-12-02《后端技术面试 38 讲》学习笔记 Day 08 23 | 异步架构:如何避免互相依赖的系统间耦合? 原文摘抄 心得体会 工作体验 工作中早年接触过IBM MQ、RocketMQ、ActiveMQ,作为一个初级开发者来看的确没有什么大差别,唯一就是IBM MQ部署,创建队列都很麻烦,甚至不能代码创建。MQ是有多种协议的,也会影响性能。kafka这样的,作为日志发送的场景似乎都是很好的选型,至少多家都是这样的。 24 | 负载均衡架构:如何用10行代码实现一个负载均衡服务? 原文摘抄 HTT
2024-12-02学习笔记 1 Linux 常用命令 1.1 文件处理命令 1.1.1 命令格式与目录处理命令(ls) # 命令格式: 命令 [-选项] [参数] 例: ls -la /etc # 说明: (1)个别命令使用不遵循这种格式。 (2)当有多个选项时,可以写在一起。 (3)简化选项与完整选项。 如: -a 等同于 -all # 基本描述 (1)名称: ls (2)原意: list (即 列表) (3)所在路径: /bin/ls # 执行权限:所有用户 # 功能描述:
2024-12-021、概述 在Go语言中,函数可以有命名返回值和普通(匿名)返回值。命名返回值会被视为定义在函数顶部的变量,并且在使用 return 语句返回时,不再必须在其后面指定参数名,也就是支持“裸”返回;而使用普通返回值时,使用 return 语句返回时,需要在其后面指定与普通返回值相同类型的参数名。 实际上,命名返回值和普通返回值都有其适用的场景,本文我们介绍 Golang 语言函数或方法使用命名返回值和普通返回值各自的“好处”与“坏处”。 2、命名返回值 使用命名返回值的“好处”是可以提升代码可读性,
2024-12-02前期准备工作 需要了解基本的python语法知识,可以参考我的另一篇文章,对python基础知识的总结,或者参考缪雪峰老师的python课程,是免费的。 我们先来了解一下爬虫 网络爬虫与浏览器的区别 浏览器是展示数据的,而网络爬虫是采集数据的 什么是网络爬虫 模拟客户端发送网络请求,获取响应数据,一种按照一定的规则,自动地抓取万维网信息的程序和脚本 网络爬虫的作用 从互联网上采集我们所需要的数据 本程序需要使用到的几个库: 1.Requests请求库 作用:Python HTTP请求库,发送请求
2024-12-02强大的路由:Gin提供了灵活的路由功能,可以轻松地定义各种路由规则。中间件支持:Gin支持各种中间件,如日志记录、JWT认证、CORS等。渲染引擎:Gin支持多种渲染引擎,可以方便地生成HTML、JSON等内容。 示例代码 package main import ( “github.com/gin-gonic/gin” “net/http” ) func main() { r := gin.Default() r.GET(“/”, func(c *gin.Context) { c.JSON(ht
2024-12-02前言 go-zero 是一个基于 Go 语言的微服务框架,它提供了一套简洁的编程模型来构建和部署微服务应用。在 go-zero 框架中,API 和 RPC 是两种主要的服务交互方式,分别用于构建 HTTP RESTful API 服务和基于 gRPC 的服务。 本文旨在会使用Go Zero框架后,重新回顾Go Zero里这两员重要大将。 正文 API(Application Programming Interface) 本质:API 是应用编程接口的缩写,是一种服务接口,用于定义软件应用程序之间
2024-12-02