- 博客(57)
- 收藏
- 关注
原创 【WPF】 自定义控件的自定义属性
在一个页面,重复用到同一个自定义控件时,该如何对控件分别进行数据绑定呢?这时候可以赋予控件一个自定义的属性,来完成此操作。为自定以控件设置 DataTag和SelectedI属性。<GroupBox Grid.Column="0" Header="数据列表"><DataGridTextColumn Binding="{Binding NUM}" Header="一" Width="1*" IsReadOnly="True"/>
2025-04-17 17:04:44
544
原创 【C#网络编程】Socket,TCP,UDP
上一章节让我们对于套接字的概念有了一些了解,对于如何使用还是有所疑惑。下面让我们去学习一下这一章节,相信学习完这一章,你的疑惑一定能解开不少,让我们开始吧。TCP 旨在检测 IP 提供的主机到主机通道中可能发生的丢失、重复和其他错误,并从中恢复。TCP 提供了一个可靠的字节流通道,因此应用程序不必处理这些问题。它是一个面向连接的协议:在使用它进行通信之前,两个程序必须首先建立 TCP 连接,这涉及在两台通信计算机上的 TCP 实现之间完成握手消息的交换。使用 TCP 类似于文件输入/输出 (I/O)。
2024-10-16 15:26:12
1805
原创 【C#网络编程】基础概念2
数据报套接字使用 UDP(同样,端到端,底层为 IP),因此提供尽力而为的数据报服务,应用程序可以使用该服务发送长度高达 65,500 字节的单个消息。实现一个有用的网络需要解决大量问题,为了保持可管理和模块化,设计了不同的协议来解决不同的问题集。每个 IP 都建立在 IP 提供的服务之上,但它们以不同的方式提供不同类型的通道,这些通道由具有不同需求的应用程序协议使用。图1显示了主机和路由器中的协议、应用程序和套接字 API 之间的关系,以及从一个应用程序(使用 TCP)到另一个应用程序的数据流。
2024-10-14 16:56:45
913
原创 【C# 网络编程】基本概念
套接字就是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象。一个套接字就是网络上进程通信的一端,提供了应用层进程利用网络协议交换数据的机制。从所处的地位来讲,套接字上联应用进程,下联网络协议栈,是应用程序通过网络协议进行通信的接口,是应用程序与网络协议栈进行交互的接口。
2024-10-11 08:00:00
1209
3
原创 【Vue3教程】路由
缺点:后期项目上线,需要服务端配合处理路径问题,否则刷新会有。通过点击导航,视觉效果上“消失” 了的路由组件,默认是被。作用:让路由组件更方便的收到参数(可以将路由参数作为。优点:兼容性更好,因为不需要服务器端处理路径。作用:控制路由跳转时操作浏览器历史记录的模式。作用:可以简化路由跳转及传参(后面就讲)。作用:将特定的路径,重新定向到已有路由。浏览器的历史记录有两种写入方式:分别为。参数时,需要提前在规则中占位。文件夹,一般组件通常存放在。掉的,需要的时候再去。的对象写法,必须使用。
2024-08-11 21:33:22
867
原创 【TypeScript 一点点教程】
可以在项目目录下创建一个tsconfig.json,然后在该目录下运行tsc命令,会发现所有文件皆完成了编译。当然也可以在目录下使用tsc -w。关于tsconfig.json文件,不但可以自己创建,还可以使用在tsc -init 命令自动生成。使用 tsc -w命令可以使ts文件监测到变化时,自动编译。使用tsc命令可以将ts文件编译成js文件。该选项用于设置哪些目录下的文件需要编译。指定哪些文件需要编译,一般只用于小项目。但是每个文件都这样做就会十分麻烦。Ts也可以自动类型判断。
2024-07-23 20:39:30
1365
原创 axios在vue中的使用
Axios 是一个基于 promise 网络请求库,作用于node.js 和浏览器中。它是 isomorphic 的(即同一套代码可以运行在浏览器和node.js中)。在服务端它使用原生 node.js http 模块, 而在客户端 (浏览端) 则使用 XMLHttpRequests。在src下创建utils目录,在该目录下创建文件 request.js。在utils下创建api目录,接着创建文件 course.js。将HTML Form 转换JSON进行请求。
2024-07-23 16:53:45
1177
原创 【Spring Security + OAuth2】OAuth2
Auth”表示“授权”Authorization"O"是Open的简称,表示“开放”连在一起就表示“开发授权”,OAuth2是一种开放授权协议在实际流程中,颁发Token前先要征询用户同意。
2024-05-22 16:44:30
1807
1
原创 【Spring Security + OAuth2】授权
RBAC(Role-Based Access Control,基于角色的访问控制)是一种常用的数据设计方案,它将用户的权限分配和管理与角色相关联。通过对用户角色关联和角色权限关联表进行操作,可以实现灵活的权限管理和访问控制。1、用户表(User table):包含用户的基本信息,例如用户名、密码和其他身份验证信息。5、角色权限关联表(Role-Permission table):将角色与权限关联起来。4、用户角色关联表(User-Role table):将用户与角色关联起来。
2024-05-20 15:58:33
896
原创 【Spring Security + OAuth2】身份认证
在WebSecurityConfig中的SecurityFilterChain加入如下配置。实现接口SessionInformationExpiredStrategy。后登录的账号会使先登录的账号失效。
2024-05-17 14:57:15
572
2
原创 【Spring Security + OAuth2】前后端分离
跨域全称是跨域资源共享(Cross-Origin Resources Sharing,CORS),它是浏览器的保护机制,只允许网页请求统一域名下的服务,同一域名指=>协议,域名,端口号都要保持一致,如果有一项不同,那么就是跨域请求,在前后端分离的项目中,需要解决跨域的问题。当访问一个需要认证之后才能访问的接口的时候,Spring Security会使用 AuthenticationEntryPoint 将用户请求跳转到登录页面,要求用户提供登录凭证。在WebSecurityConfig,加入注销配置。
2024-05-16 15:43:07
1743
原创 【Spring Security+ OAuth2】Spring Security 自定义配置
实际开发的过程中,我们需要应用程序更加灵活,可以在SpringSecurity中创建自定义配置文件。
2024-04-28 16:56:45
1238
2
原创 【Spring Security + OAuth2】Spring Security快速入门
Spring Security 之所以默认帮助我们做了那么多事情,它的底层原理是传统的Servlet过滤器。DelegatingFilterProxy作为过滤器的代理,帮助我们调用spring容器中所有注册的过滤器FilterChainProxy帮助我们管理多个不同的过滤器链(SecurityFilterChain)。SecurityFilterChain帮助我们处理复杂的业务逻辑,通过匹配不同的url,由不同的过滤器链的组合来接收,从而由不同的过滤器来完成相应的功能。
2024-03-28 15:30:50
1111
1
原创 WPF 实现Popup不在最上层显示、随窗口移动
由于WPF 默认的Popup总是显示在所有窗口的前面,如何让popup 层只显示在该父级之上,并随着父级而动呢?下面来看实现。/// 是否窗口随动,默认为随动(true)/// 加载窗口随动事件/// 加载窗口随动事件while (win!= null)/// 刷新位置trycatchreturn;//是否最前默认为非最前(false)/// 重写拉开方法,置于非最前/// 刷新Popup层级RECT rect;#region P。
2024-01-10 09:55:28
1964
原创 【环境准备】NodeJs(压缩包版本)安装与配置
在Node路径中新建node_cache(缓存目录)和node_global(全局安装)目录。在编辑环境变量界面,点击新建,然后键入Node的所在路径,点击确定。调出CMD命令窗口,输入node -v,验证是否配置成功。配置环境变量,找到系统变量下的path并选中,点击编辑。在cmd窗口中,输入如下两个命令,完成路径设置。
2023-11-16 16:21:11
5348
原创 【服务调用】OpenFeign
Feign是一个声明式的Web服务客户端,让编写Web服务客户端变得非常容易,只需创建一个接口并在接口上添加注解即可
2023-11-15 17:02:38
110
原创 【服务调用】Ribbon
将用户的请求平均分配到多个服务上,从而达到系统的HA(高可用)。常见的负载均衡有软件Nginx,LVS,硬件F5等。Ribbon本地负载均衡客户端 vs Nginx 服务端负载均衡区别Nginx 是服务端负载均衡,客户端所有请求都会交给nginx,然后由nginx实现转发请求。即负载均衡是由服务端实现的。Ribbon 本地负载均衡,在调用微服务接口时候,会在注册中心获取注册信息服务列表之后缓存到JVM本地,从而在本地实现RPC远程服务调用技术。
2023-05-17 16:09:36
156
原创 【服务注册】Consul
Consul 是一套开源的分布式服务发现和配置管理系统,由HashiCorp公司用Go语言。提供了微服务系统中的服务治理、配置中心、控制总线等功能。这些功能中的每一个都可以根据需要单独使用,也可以一起使用以构建全方位的服务网格,总之Consul提供了一种完整的服务网格解决方案。
2023-04-25 16:53:52
129
原创 【服务注册】Eureka
对于注册进eureka里面的微服务,可以通过服务发现来获得该服务的信息。保护模式主要用于一组客户端和Eureka Server之间存在网络分区场景下的保护。一旦进入保护模式,Eureka Server 将会尝试保护其他服务注册表中的信息,不再删除服务注册表中的数据,也就是不会注销任何微服务。如果出现下图情况,则说明Eureka进入了保护模式。默认情况下,如果EurekaServer在一定时间内没有接收到接收到某个微服务实例的心跳,EurekaServer将会注销该实例(默认90秒)。
2023-04-19 17:02:14
287
原创 WPF GMap使用高德地图
文章目录前言一、Nuget下载Gmap二、代码1.添加类2.加载高德地图总结前言近日在项目中用到了GMap,并且Gmap中使用了高德地图,特此记录一下。一、Nuget下载Gmap在Nuget中搜索GMap,选择GMap.NET.Presentatiom进行下载安装。(请注意版本)二、代码1.添加类添加一个类,让其GMapControl类。代码如下:using GMap.NET;using GMap.NET.MapProviders;using GMap.NET.Projectio
2022-03-25 14:51:12
2521
5
原创 WPF窗口设置无边框,并清除上部白边
目录一、设置窗口无边框二、去上部白边1.引入库2.在xaml中使用总结一、设置窗口无边框只需在xaml的window标签中,添加WindowStyle="None"属性,即可去掉上部标题栏<Window x:Class="WpfRiUi.module.CheckoutBox" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.micr
2022-03-25 08:58:27
5682
4
原创 WPF 单击双击互斥事件
前言近日有个需求,单击加0.1(减0.1),双击加1,(减1)实现1、xaml部分<Grid> <Grid.ColumnDefinitions> <ColumnDefinition/> <ColumnDefinition/> </Grid.ColumnDefinitions> <DockPanel Grid.Column="0" HorizontalAlignment="Center">
2022-03-21 16:37:20
906
原创 Mysql配置文件
[mysqld]pid-file = /var/run/mysqld/mysqld.pidsocket = /var/run/mysqld/mysqld.sockdatadir = /var/lib/mysql#log-error = /var/log/mysql/error.log# By default we only accept connections from localhost#bind-address = 127.0.0.1# Disabling symbolic-links
2022-03-09 16:36:00
551
原创 九、TCP粘包和拆包及解决方案
9.1、TCP粘包和拆包基本介绍TCP是面向连接的,面向流的,提供高可靠性服务。收发两端(客户端和服务器端)都要有一一成对的Socket,因此,发送端为了将多个发给接收端的包,更有效的发给对方,使用了优化方法(Nagle算法),将多次间隔较小且数据量小的数据,合并成一个大的数据块,然后进行封包。这样做虽然提高了效率,但是接收端就难于分辩出完整的数据包了,因为面向流的通信是无消息保护边界的。由于TCP无消息保护边界,需要在接收端处理消息边界问题,也就是我们所说的粘包、拆包问题、TCP粘包、拆
2022-01-26 16:35:50
2052
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人