
C#
C#学习记录
ywb201314
兵法有言,知己知彼,百战不殆
展开
-
using写在命名空间外面和里面,有什么区别与讲究?
作用域不同,写在某一个namespace里面,是在该namespace中起作用,写在外面,则是全局作用域了,测试一下就知道了。在 namespace 声明的顶部:在该命名空间内有效(不建议采用)在文件的顶部:在整个文件内有效(该文件可以包含多个命名空间)使用 using 命令的位置?转载 2024-05-10 13:57:20 · 158 阅读 · 0 评论 -
C#入门(2): namespace、类
例如,两个开发团队可能都创建了名为File的类,但如果这两个类位于不同的名称空间中,那么就不会出现冲突。在这个例子中,我们看到Dog类的实例可以调用Eat方法(从Animal类继承)和Bark方法(在Dog类中定义)。继承是面向对象编程的一个重要特性,它可以让你创建一个新的类,继承另一个类的属性和方法。protected internal:受保护的内部成员可以在同一程序集的任何类中或者在同一个类的派生类中访问。protected:受保护的成员可以在其声明的类中或者在同一个类的派生类中访问。转载 2024-05-10 13:47:01 · 87 阅读 · 0 评论 -
Google的CacheBuilder缓存
1:refreshAfterWriteGuava Cache特性:对于同一个key,只让一个请求回源load数据,其他线程阻塞等待结果这种情况:如果缓存过期,恰好有多个线程读取同一个key的值,那么guava只允许一个线程去加载数据,其余线程阻塞。这虽然可以防止大量请求穿透缓存,但是效率低下。使用refreshAfterWrite可以做到:只阻塞加载数据的线程,其余线程返回旧数据。2:之前常用ConcurrentMap来做缓存,那它们有什么区别呢?Guava Cache与Concurre.转载 2020-12-16 15:33:27 · 840 阅读 · 0 评论 -
【译】Spring的@EnableCaching注解
Spring的@EnableCaching注解@EnableCaching注解是spring framework中的注解驱动的缓存管理功能。自spring版本3.1起加入了该注解。如果你使用了这个注解,那么你就不需要在XML文件中配置cache manager了。当你在配置类(@Configuration)上使用@EnableCaching注解时,会触发一个post processor,这会扫描每一个spring bean,查看是否已经存在注解对应的缓存。如果找到了,就会自动创建一个代理拦截方法调用转载 2020-09-01 09:58:00 · 11756 阅读 · 0 评论 -
springboot使用@EnableCaching实现缓存
项目中我们对于不易改动的信息没必要每次都去数据库查询,可以将查询结果放入缓存中,第二次调用时,直接在缓存中获取,不再经过数据库1:配置cacheManager类@EnableCaching@Configurationpublic class CacheConfig { @Bean public ConcurrentMapCacheManager cacheManager() { ConcurrentMapCacheManager cacheManage转载 2020-09-01 09:56:58 · 292 阅读 · 0 评论