学习笔记

DotNetCore 3.0 助力 WPF本地化

概览# 随着我们的应用程序越来越受欢迎,我们的下一步将要开发多语言功能。方便越来越多的国家使用我们中国的应用程序, 基于 WPF 本地化,我们很多时候使用的是系统资源文件,可是动态切换本地化,就比较麻烦了。 有没有一种方法既可以适用系统的资源文件,又能方便快捷的切换本地化呢? 实现思路# 现在我们将要实现的是基于 DotNetCore 3.0 以上版本 and WPF 桌面应用程序模块化的多语言功能。 动态切换多语言思路: 把所有模块的资源文件添加到字典集合。 将资源文件里的key,绑定到前台。 ...

Mybatis mapper动态代理的原理详解

 在开始动态代理的原理讲解以前,我们先看一下集成mybatis以后dao层不使用动态代理以及使用动态代理的两种实现方式,通过对比我们自己实现dao层接口以及mybatis动态代理可以更加直观的展现出mybatis动态代理替我们所做的工作,有利于我们理解动态代理的过程,讲解完以后我们再进行动态代理的原理解析,此讲解基于mybatis的环境已经搭建完成,并且已经实现了基本的用户类编写以及用户类的Dao接口的声明,下面是Dao层的接口代码...

(三)(1)线程间通信---wait和notify的使用

这篇博客记录线程间通信相关api使用以及理解。 首先第一点,我之前的博客里的线程之间也是通信的,但是他们的通信是建立在访问的是同一个变量上的,相当于是变量、数据层面上的通信,而下面要讲的是线程层面上的通信,这种比前者更加可控。 Wait和notify机制 首先明白为什么会出现这个机制。 目的:举个例子,现在有A,B两个线程,A线程可以不停的改变i的值,B线程再i的值为5时终止。 方法:为了实现这种效果,我们需要在B线程的run方法之中添加while循环,不停的进行检测i值是否为5,为5则抛出异常停止或者使用stop,interrupt等。 ...

自然语言处理(NLP)的一般处理流程!

 1. 什么是NLP自然语言处理 (Natural Language Processing) 是人工智能(AI)的一个子领域。自然语言处理是研究在人与人交互中以及在人与计算机交互中的语言问题的一门学科。为了建设和完善语言模型,自然语言处理建立计算框架,提出相应的方法来不断的完善设计各种实用系统,并探讨这些实用系统的评测方法。...

ElasticSearch实战系列一: ElasticSearch集群+Kinaba安装教程

前言 本文主要介绍的是ElasticSearch集群和kinaba的安装教程。 ElasticSearch介绍 ElasticSearch是一个基于Lucene的搜索服务器,其实就是对Lucene进行封装,提供了 REST API 的操作接口. ElasticSearch作为一个高度可拓展的开源全文搜索和分析引擎,可用于快速地对大数据进行存储,搜索和分析。 ElasticSearch主要特点:分布式、高可用、异步写入、多API、面向文档 。 ElasticSearch核心概念:近实时,集群,节点(保存数据),索引,分片(将索引分片),副本(分片可设置多个副本) 。它可以快速地储存、搜索和分析海量数据。 ElasticSearch使用案例:维基百科、Stack Overflow、Github 等等。 ...

JVM(十一):内存分配

 在前面的章节中,我们花了大量的篇幅去介绍 JVM 内的内存布局、对象在内存中的状态、垃圾回收的算法和具体实现等。今天让我们探讨一下对象是如何分配内存的。堆内存划分...

Caddy源码阅读(一)Run详解

前言 本次系列会讲解 caddy 整个生命周期涉及到的源码。 平时我们使用 caddy 都是使用 它的 二进制 分发文件,现在来分析 caddy 的 Run 函数。 从最外层逻辑看它都做了些什么。 Caddy Run 我们来看看 Caddy Run 中引入了哪些包和操作,对 Caddy 的总体行为做一个概览 caddy/caddymain/run.go 首先看 init 函数 func init() { caddy.TrapSignals() flag.BoolVar(&certmagic.Default.Agreed, "agree", false, "Agree to the CA's Subscriber Agreement") ...

Elasticsearch 7.x 最详细安装及配置

Elasticsearch 7.x 最详细安装及配置 一、Elasticsearch 7.x 小马哥说过,学习技术栈得看版本,那么 Elasticsearch 7.x 有什么好的特性呢? ES 7.0 是 2019 年 4 月份发布的,底层是 Lucene 8.0。其他还有需要了解的是: 废除单个索引下多 Type 的支持 ES Security 免费使用 ECK - ES Operator on K8s 新功能:New Cluster coordination 新功能:完整的 High Level REST Client ...

编程杂谈——Platform target x64

在Visual Studio中选择.NET Framework框架并选用任意模板创建一个普通的Web应用工程,毫无疑问,此时应该是能够正常运行此工程的。 但是将工程属性->编译->Platform target一项中从Any CPU改成x64。 再运行工程后,页面会出现服务器错误的提示。 这是因为默认情况下Visual Studio调试时所用的IIS Express是32位的,只能运行同是32位的程序。 修正的方法是在工具->选项->工程与解决方案->Web工程中,将使用64位IIS Expres选项勾上。 ...

重学计算机网络(二) - 曾记否,查IP地址

先献上几个梗 1.1.1.1 不是测试用的,原来一直没分配,现在被用来做一个DNS了,宣传是比谷歌等公司的dns服务 更保护用户隐私。 IP地址255.255.255.255,代表有限广播,它的目标是网络中的所有主机。 IP地址0.0.0.0,通常代表未知的源主机。当主机采用DHCP动态获取IP地址而无法获得合法IP地址时,会用IP地址0.0.0.0来表示源主机IP地址未知。 NID不能以数字127开头。NID 127被保留给内部回送函数,作为本机循环测试使用。 例如,使用命令ping 127.0.0.1测试TCP/IP协议栈是否正确安装。在路由器中,同样支持循环测试地址的使用。1 查ip ...
青岛软件培训

可能你正在寻找一家靠谱的IT培训机构,学习一些专业的软件开发技术,找一份得体的工作。恰巧我们就是一家踏踏实实做教育的IT人才培养机构,我们咨询电话是 0532-85025005,如果你确实对IT感兴趣,我们不妨交流一下。

申请免费试听课程