当前位置: 首页 > news >正文

如何用visual做网站网站建设辶首先金手指十五

如何用visual做网站,网站建设辶首先金手指十五,南宁网站建设 超薄网络,wordpress主页设置Java 缓存中间件 关键词#xff1a;Spring Cache、J2Cache、JetCache 一 、JSR 107 JSR107 中制订了 Java 缓存的规范。 因此#xff0c;在很多缓存框架、缓存库中#xff0c;其 API 都参考了 JSR 107 规范。 img Java Caching 定义了 5 个核心接口 CachingProvider - 定义… Java 缓存中间件 关键词Spring Cache、J2Cache、JetCache 一 、JSR 107 JSR107 中制订了 Java 缓存的规范。 因此在很多缓存框架、缓存库中其 API 都参考了 JSR 107 规范。 img Java Caching 定义了 5 个核心接口 CachingProvider - 定义了创建、配置、获取、管理和控制多个 CacheManager。一个应用可以在运行期访问多个 CachingProvider。 CacheManager - 定义了创建、配置、获取、管理和控制多个唯一命名的 Cache这些 Cache 存在于 CacheManager 的上下文中。一个 CacheManager 仅被一个 CachingProvider 所拥有。 Cache - 是一个类似 Map 的数据结构并临时存储以 Key 为索引的值。一个 Cache 仅被一个 CacheManager 所拥有。 Entry - 是一个存储在 Cache 中的 key-value 对。 Expiry - 每一个存储在 Cache 中的条目有一个定义的有效期即 Expiry Duration。一旦超过这个时间条目为过期的状态。一旦过期条目将不可访问、更新和删除。缓存有效期可以通过 ExpiryPolicy 设置。 二、Spring Cache 详见Spring Cache 官方文档 Spring 作为 Java 开发最著名的框架也提供了缓存功能的框架—— Spring Cache。 Spring 支持基于注释annotation的缓存cache技术它本质上不是一个具体的缓存实现方案例如EHCache 或 OSCache而是一个对缓存使用的抽象通过在既有代码中添加少量它定义的各种 annotation即能够达到缓存方法的返回对象的效果。 Spring Cache 的特点 通过缓存注解即可支持缓存功能 支持 Spring EL 表达式 支持 AspectJ 支持自定义 key 和缓存管理 开启缓存注解 Spring 为缓存功能提供了注解功能但是你必须启动注解。 有两种方式 一使用标记注解 EnableCaching 这种方式对于 Spring 或 Spring Boot 项目都适用。 ConfigurationEnableCachingpublic class AppConfig {} 二在 xml 中声明 cache:annotation-driven cache-managercacheManager/ spring 缓存注解 API Spring 对缓存的支持类似于对事务的支持。 首先使用注解标记方法相当于定义了切点然后使用 Aop 技术在这个方法的调用前、调用后获取方法的入参和返回值进而实现了缓存的逻辑。 Cacheable Cacheable 用于触发缓存。 表明所修饰的方法是可以缓存的当第一次调用这个方法时它的结果会被缓存下来在缓存的有效时间内以后访问这个方法都直接返回缓存结果不再执行方法中的代码段。 这个注解可以用condition属性来设置条件如果不满足条件就不使用缓存能力直接执行方法。 可以使用key属性来指定 key 的生成规则。 CachePut CachePut 用于更新缓存。 与Cacheable不同CachePut不仅会缓存方法的结果还会执行方法的代码段。 它支持的属性和用法都与Cacheable一致。 CacheEvict CacheEvict 用于清除缓存。 与Cacheable功能相反CacheEvict表明所修饰的方法是用来删除失效或无用的缓存数据。 下面是Cacheable、CacheEvict和CachePut基本使用方法的一个集中展示 Servicepublic class UserService {    // Cacheable可以设置多个缓存形式如Cacheable({books, isbns})    Cacheable(value{users}, key#user.id)    public User findUser(User user) {        return findUserInDB(user.getId());    }    Cacheable(value  users, condition  #user.getId()  2)    public User findUserInLimit(User user) {        return findUserInDB(user.getId());    }    CachePut(value  users, key  #user.getId())    public void updateUser(User user) {        updateUserInDB(user);    }    CacheEvict(value  users)    public void removeUser(User user) {        removeUserInDB(user.getId());    }    CacheEvict(value  users, allEntries  true)    public void clear() {        removeAllInDB();    }} Caching Caching 用于组合定义多种缓存功能。 如果需要使用同一个缓存注解Cacheable、CacheEvict或CachePut多次修饰一个方法就需要用到Caching。 Caching(evict  { CacheEvict(primary), CacheEvict(cacheNamessecondary, key#p0) })public Book importBooks(String deposit, Date date) CacheConfig CacheConfig 用于定义公共缓存配置。 与前面的缓存注解不同这是一个类级别的注解。 如果类的所有操作都是缓存操作你可以使用CacheConfig来指定类省去一些配置。 CacheConfig(books)public class BookRepositoryImpl implements BookRepository { Cacheable public Book findBook(ISBN isbn) {...}} 三、Spring Boot Cache 详见Spring Boot Cache 特性官方文档 Spring Boot Cache 是在 Spring Cache 的基础上做了封装使得使用更为便捷。 Spring Boot Cache 快速入门 1引入依赖 dependency  groupIdorg.springframework.boot/groupId  artifactIdspring-boot-starter-cache/artifactId/dependency!-- 按序引入需要的缓存库 --dependency  groupIdorg.springframework.boot/groupId  artifactIdspring-boot-starter-data-redis/artifactId/dependency 2缓存配置 例如选用缓存为 redis则需要配置 redis 相关的配置项如数据源、连接池等配置信息 # 缓存类型支持类型GENERIC、JCACHE、EHCACHE、HAZELCAST、INFINISPAN、COUCHBASE、REDIS、CAFFEINE、SIMPLE spring.cache.type redis # 全局缓存时间 spring.cache.redis.time-to-live 60s# Redis 配置 spring.redis.database 0 spring.redis.host localhost spring.redis.port 6379 spring.redis.password 3使用 EnableCaching 开启缓存 EnableCachingSpringBootApplicationpublic class Application {    // ...} 4缓存注解Cacheable、CachePut、CacheEvit 等使用方式与 Spring Cache 完全一样 四、JetCache JetCache 是一个基于 Java 的缓存系统封装提供统一的 API 和注解来简化缓存的使用。 JetCache 提供了比 SpringCache 更加强大的注解可以原生的支持 TTL、两级缓存、分布式自动刷新还提供了Cache接口用于手工缓存操作。 当前有四个实现RedisCache、TairCache此部分未在 github 开源、CaffeineCache(in memory)和一个简易的LinkedHashMapCache(in memory)要添加新的实现也是非常简单的。 详见jetcache Github jetcache 快速入门 如果使用 Spring Boot可以按如下的方式配置这里使用了 jedis 客户端连接 redis如果需要集群、读写分离、异步等特性支持请使用lettuce客户端。 1引入 POM dependency    groupIdcom.alicp.jetcache/groupId    artifactIdjetcache-starter-redis/artifactId    version2.5.14/version/dependency 2配置 配置一个 spring boot 风格的 application.yml 文件把他放到资源目录中 jetcache:  statIntervalMinutes: 15  areaInCacheName: false  local:    default:      type: linkedhashmap      keyConvertor: fastjson  remote:    default:      type: redis      keyConvertor: fastjson      valueEncoder: java      valueDecoder: java      poolConfig:        minIdle: 5        maxIdle: 20        maxTotal: 50      host: 127.0.0.1      port: 6379 3开启缓存 然后创建一个 App 类放在业务包的根下EnableMethodCacheEnableCreateCacheAnnotation 这两个注解分别激活 Cached 和 CreateCache 注解其他和标准的 Spring Boot 程序是一样的。这个类可以直接 main 方法运行。 package com.company.mypackage;import com.alicp.jetcache.anno.config.EnableCreateCacheAnnotation;import com.alicp.jetcache.anno.config.EnableMethodCache;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;SpringBootApplicationEnableMethodCache(basePackages  com.company.mypackage)EnableCreateCacheAnnotationpublic class MySpringBootApp {    public static void main(String[] args) {        SpringApplication.run(MySpringBootApp.class);    }} 4API 基本使用 创建缓存实例 通过 CreateCache 注解创建一个缓存实例默认超时时间是 100 秒 CreateCache(expire  100)private CacheLong, UserDO userCache; 用起来就像 map 一样 UserDO user  userCache.get(123L);userCache.put(123L, user);userCache.remove(123L); 创建一个两级内存远程的缓存内存中的元素个数限制在 50 个。 CreateCache(name  UserService.userCache, expire  100, cacheType  CacheType.BOTH, localLimit  50)private CacheLong, UserDO userCache; name 属性不是必须的但是起个名字是个好习惯展示统计数据的使用会使用这个名字。如果同一个 area 两个 CreateCache 的 name 配置一样它们生成的 Cache 将指向同一个实例。 创建方法缓存 使用 Cached 方法可以为一个方法添加上缓存。JetCache 通过 Spring AOP 生成代理来支持缓存功能。注解可以加在接口方法上也可以加在类方法上但需要保证是个 Spring bean。 public interface UserService {    Cached(nameUserService.getUserById, expire  3600)    User getUserById(long userId);} 五、j2cache 六、总结 使用缓存框架使得开发缓存功能非常便捷。 如果你的系统只需要使用一种缓存那么推荐使用 Spring Boot Cache。Spring Boot Cache 在 Spring Cache 基础上做了封装使用更简单、方便。 如果你的系统需要使用多级缓存那么推荐使用 jetcache。 参考资料 JSR107 Spring Cache 官方文档 Spring Boot Cache 特性官方文档 J2Cache Gitee jetcache Github jetcache wiki 选择下载器: 下载此0条链接 当前处于选择模式 点击/拖拽 鼠标左键 选择链接 点击/拖拽 鼠标右键 取消选择链接 按住 ALT键 点击/拖拽 鼠标左键 取消选择链接 本文由 mdnice 多平台发布
http://www.tj-hxxt.cn/news/233916.html

相关文章:

  • 网站全屏图片怎么做的网站设计开发项目书
  • php网站开发实战开发最好的网站建设价格
  • 网站开发与客户沟通wordpress 作者调用
  • 电话销售做网站打官司分销系统怎么做
  • 做网站运营怎么样手机中国官网报价
  • 快速达建网站五金网站建设制作
  • 一流的微商城网站建设证件照片制作软件免费下载
  • 网站首页如何设计青浦网站建设
  • 如何接做网站编程的生意爱站网反链查询
  • -1网站建设深圳网站建设选哪家好
  • 购物网站后台管理系统企业邮箱怎么认证
  • 网站设计一般用什么软件企业在线查询系统平台
  • 网站正在建设中免费服务器主机
  • 怎么确定电商网站建设的目标网站做内嵌
  • 网站建设课程大纲开发小程序哪家好
  • 建设工程竣工规划局网站欧盟理事会
  • 青梦建站什么是ui界面
  • 网站源代码购买河南省建设工程信息网查询
  • 曲阜网站建设多少钱unity可以做网站吗
  • 番禺本地网站网站开发需求说明书
  • 网站建设步骤详解视频wordpress卖东西主题
  • h5手机制作网站开发温州手机网站建设wmwl
  • 诚信经营网站的建设广州工程承包总公司
  • 平面设计类的网站北京手机网站制作公司
  • 青岛团购网站建设网络营销策略有哪些方法
  • 做网站业务的怎么寻找客户wordpress 3d
  • 莞城区小程序app网站开发建工论坛网
  • 西宁哪家公司做网站王野天 葛优
  • 建设银行网站怎么查自己账号吗泰安服装网站建设
  • 免费自助建站工具曲阜网站建设百度开户