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

电子商务网站建设与规划案例做网站送推广

电子商务网站建设与规划案例,做网站送推广,野花香视频在线观看免费高清版,设计案例网站1.Spring Quartz(1)简介核心组件scheduler 接口#xff1a;核心调度工具#xff0c;所有任务由这一接口调用job#xff1a;定义任务#xff0c;重写execute方法JobDetail接口#xff1a;配置描述Trigger接口#xff1a;什么时候运行#xff0c;以什么样的频率运行(2)Spr…1.Spring Quartz(1)简介核心组件scheduler 接口核心调度工具所有任务由这一接口调用job定义任务重写execute方法JobDetail接口配置描述Trigger接口什么时候运行以什么样的频率运行(2)Spring 整合引入依赖将配置表导入数据库qrtz_job_detailsjob详情配置描述表qrtz_simple_triggers触发器相关配置简述qrtz_jtriggers触发器相关完整配置qrtz_scheduler定时器状态qrtz_locks定时器锁QuartzPropertiespring.quartz.job-store-typejdbc spring.quartz.scheduler-namecommunityScheduler spring.quartz.properties.org.quartz.scheduler.instanceIdAUTO #spring.quartz.properties.org.quartz.jobStore.classorg.quartz.impl.jdbcjobstore.JobStoreTX spring.quartz.properties.org.quartz.jobStore.classorg.springframework.scheduling.quartz.LocalDataSourceJobStore spring.quartz.properties.org.quartz.jobStore.driverDelegateClassorg.quartz.impl.jdbcjobstore.StdJDBCDelegate spring.quartz.properties.org.quartz.jobStore.isClusteredtrue spring.quartz.properties.org.quartz.threadPool.classorg.quartz.simpl.SimpleThreadPool spring.quartz.properties.org.quartz.threadPool.threadCount5 BUG从spring5.3.6使用org.quartz.impl.jdbcjobstore.JobStoreTX定义quartz的默认数据源支持如下org.quartz.jobStore.classorg.quartz.impl.jdbcjobstore.JobStoreTX实现我们自己的job,重写execute方法在QuartzConfig里配置 JobDetail// 配置JobDetail Bean public JobDetailFactoryBean alphaJobDetail() {JobDetailFactoryBean factoryBean new JobDetailFactoryBean();factoryBean.setJobClass(AlphaJob.class);factoryBean.setName(alphaJob);factoryBean.setGroup(alphaJobGroup);factoryBean.setDurability(true);factoryBean.setRequestsRecovery(true);return factoryBean; } 实例化JobDetailFactoryBean 声明管理的管理的是谁.setJobClass 声明job任务的名字.setName 声明任务属于的组.setGroup 声明任务是否长久保存.setDurability 声明任务是否可恢复.setRequestsRecovery配置Trigger// 配置Trigger(SimpleTriggerFactoryBean, CronTriggerFactoryBean) Bean public SimpleTriggerFactoryBean alphaTrigger(JobDetail alphaJobDetail) {SimpleTriggerFactoryBean factoryBean new SimpleTriggerFactoryBean();factoryBean.setJobDetail(alphaJobDetail);factoryBean.setName(alphaTrigger);factoryBean.setGroup(alphaTriggerGroup);factoryBean.setRepeatInterval(3000);factoryBean.setJobDataMap(new JobDataMap());return factoryBean; } 实例化SimpleTriggerFactoryBean 声明管理的管理的是谁.setJobClass 声明job任务的名字.setName 声明任务属于的组.setGroup 声明任务执行的频率.setRepeatInterval 声明Trigger的存储状态类型.setJobDataMap热帖排行用一个set将分数变化的帖子的id装起来定时从中取出 更新1统计发生分数变化的帖子点赞 评论 精华 发布时间会影响分数RedisKeyUtil添加方法统计帖子分数// 帖子分数 public static String getPostScoreKey() {return PREFIX_POST SPLIT score; }DiscussPostController发布帖子 设置精华 的方法里补充// 计算帖子分数 String redisKey RedisKeyUtil.getPostScoreKey(); redisTemplate.opsForSet().add(redisKey, post.getId());CommentControlleraddComment添加评论时做处理LikeControllerlike 点赞时 做处理2写定时任务Jobpublic class PostScoreRefreshJob implements Job, CommunityConstant {private static final Logger logger LoggerFactory.getLogger(PostScoreRefreshJob.class);Autowiredprivate RedisTemplate redisTemplate;Autowiredprivate DiscussPostService discussPostService;Autowiredprivate LikeService likeService;Autowiredprivate ElasticsearchService elasticsearchService;// 牛客纪元private static final Date epoch;static {try {epoch new SimpleDateFormat(yyyy-MM-dd HH:mm:ss).parse(2014-08-01 00:00:00);} catch (ParseException e) {throw new RuntimeException(初始化牛客纪元失败!, e);}}Overridepublic void execute(JobExecutionContext context) throws JobExecutionException {String redisKey RedisKeyUtil.getPostScoreKey();BoundSetOperations operations redisTemplate.boundSetOps(redisKey);if (operations.size() 0) {logger.info([任务取消] 没有需要刷新的帖子!);return;}logger.info([任务开始] 正在刷新帖子分数: operations.size());while (operations.size() 0) {this.refresh((Integer) operations.pop());}logger.info([任务结束] 帖子分数刷新完毕!);}private void refresh(int postId) {DiscussPost post discussPostService.findDiscussPostById(postId);if (post null) {logger.error(该帖子不存在: id postId);return;}// 是否精华boolean wonderful post.getStatus() 1;// 评论数量int commentCount post.getCommentCount();// 点赞数量long likeCount likeService.findEntityLikeCount(ENTITY_TYPE_POST, postId);// 计算权重double w (wonderful ? 75 : 0) commentCount * 10 likeCount * 2;// 分数 帖子权重 距离天数double score Math.log10(Math.max(w, 1)) (post.getCreateTime().getTime() - epoch.getTime()) / (1000 * 3600 * 24);// 更新帖子分数discussPostService.updateScore(postId, score);// 同步搜索数据post.setScore(score);elasticsearchService.saveDiscussPost(post);}}3配置 JobDetails TriggerConfiguration public class QuartzConfig {Beanpublic JobDetailFactoryBean postScoreRefreshJobDetail() {JobDetailFactoryBean factoryBean new JobDetailFactoryBean();factoryBean.setJobClass(PostScoreRefreshJob.class);factoryBean.setName(postScoreRefreshJob);factoryBean.setGroup(communityJobGroup);factoryBean.setDurability(true);factoryBean.setRequestsRecovery(true);return factoryBean;}Beanpublic SimpleTriggerFactoryBean postScoreRefreshTrigger(JobDetail postScoreRefreshJobDetail) {SimpleTriggerFactoryBean factoryBean new SimpleTriggerFactoryBean();factoryBean.setJobDetail(postScoreRefreshJobDetail);factoryBean.setName(postScoreRefreshTrigger);factoryBean.setGroup(communityTriggerGroup);factoryBean.setRepeatInterval(1000 * 60 * 5);factoryBean.setJobDataMap(new JobDataMap());return factoryBean;} }
http://www.hkea.cn/news/14589299/

相关文章:

  • wordpress代码高亮主题淄博网站制作定制优化
  • wordpress站点使用期限插件网站外链可以在哪些平台上做外链
  • 校园门户网站系统建设关键技术天津建设网站安管人员成绩查询
  • 洛阳网站设计公司如何做国外销售网站
  • 郑州网站建设中国建设建设银行wordpress 内存溢出
  • 音乐类网站模板培训课程网站
  • 厦门市建设局网站首页阿里云 企业网站选哪种
  • 潍坊网站关键词推广展示类网站开发费用
  • 北京建设数字网站wordpress rest 授权
  • 礼叮当 一家做创意礼品定制的网站网站分类导航代码
  • 中小企业网站制作模板企业市场营销
  • 漳州市龙文区建设局网站网站做优化好还是推广好
  • 局域网如何做视频网站建设外贸流程及详细步骤
  • 微商城网站建设市场图书馆网站建设工作
  • 口碑好的扬中网站建设沈阳沈河区网站建设
  • 如何用服务器搭建自己的网站怎么查网站备案域名备案
  • 网站建设岗位职责怎么写百度识图网页版 在线
  • 网站搭建app制作网站参考
  • 珲春建设局网站怎么做福利视频网站
  • 做网站一定要有服务器吗仿团购网站模板
  • 沧州企业网站建设05网学霸
  • 许昌网站制作公司闵行网络推广
  • 网站建设收获互联网公司排名完整
  • 手把手教你学网站建设做网站不懂行情 怎么收费
  • 哪类公司做网站的最多濮阳房产网
  • 用net语言做网站平台好不好中铁建设集团有限公司总部在哪
  • 网站建设必须经历的过程汕头自助建站模板
  • iis网站配置教程政务内网网站建设方案
  • 西安有哪些网站建设公司wordpress网页慢
  • 东莞网站建设网站建设做养生的网站多吗