package com.demo2;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
@Service
@Transactional
class DingdanServiceImpl implements DingdanService {
@Autowired
private StringRedisTemplate redisT;
public String miaosha(Integer id) {
/* if (!redisT.hasKey("miaosha"+id)) {
throw new RuntimeException("很遗憾,秒杀活动结束了!");
}*/
//校验库存是否足够
Shangpin shangpin = checkShangpin(id);
gengxinShangpin(shangpin);
return createDingdan(shangpin);
}
private Shangpin checkShangpin(Integer sid){
//查询商品信息代码省略...
Shangpin shangpin = new Shangpin();
shangpin.setShuliang(2);
shangpin.setXiaoliang(2);
shangpin.setMingcheng("苹果");
shangpin.setId("1");
if(shangpin.getXiaoliang().equals(shangpin.getShuliang())) {
throw new RuntimeException("库存没有了。。。");
}
return shangpin;
}
private void gengxinShangpin(Shangpin Shangpin){
//mock数据
int gengxinRows = 1;
if(gengxinRows == 0){
throw new RuntimeException("秒杀失败了,请再次重试!!!");
}
}
private String createDingdan(Shangpin Shangpin){
ShangpinDingdan shangpinDingdan = new ShangpinDingdan();
shangpinDingdan.setSid(Shangpin.getId());
shangpinDingdan.setMingcheng(Shangpin.getMingcheng());
shangpinDingdan.setCreateTime(new Date());
//插入数据库代码省略...
return shangpinDingdan.getSid();
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
简介: “秒杀”是什么?简单来说即使在同时间有大量请求抢购买同一商品并交易,因此会涉及大量并发写和并发读。 所以说“秒杀”对程序开发者有很大的的挑战。 怎么防止系统在应对百万级请求时候而不出故障? 怎样保障高并发状态下数据的一致性? 怎样在节约服务器成本情况下,应对短时间极大的的并发请求? 怎样针对大流量读写请求进行定制化优化? 对于这些问题,都能在这个课程中找到解决方案。 此外你学完这套课程可以利用“秒杀”这个系统,了解怎样打造一个高并发、高可用、高性能的系统架构。 你将收获: 常见业务场景当中的必备架构知识要点 高并发、高可用、高性能的系统架构技巧与方法 彻底理解“秒杀”系统的各个关键点 可以搭建一套适合自己业务场景的高可用、高并发、高性能系统 适用人群: 刚学完Java的学员; 有工作经验的程序员; 需要进一步提升自己的潜力股; 面试找工作者; 需要解决工作学习中遇到问题的工作者
资源推荐
资源详情
资源评论
收起资源包目录
使用JAVA开发的秒杀系统源码 (130个子文件)
DingdanController.class 2KB
DingdanServiceImpl.class 2KB
Shangpin.class 1KB
ShangpinDingdan.class 917B
App.class 683B
DingdanService.class 117B
mvnw.cmd 7KB
.gitignore 395B
.gitignore 229B
miaosha-demo.iml 12KB
miaosha-demo-0.0.1-SNAPSHOT.jar 35.17MB
maven-wrapper.jar 57KB
OrderServiceImpl.java 2KB
OrderController.java 1KB
Shangpin.java 791B
ShangpinDingdan.java 489B
App.java 293B
OrderService.java 53B
inputFiles.lst 532B
createdFiles.lst 228B
inputFiles.lst 76B
createdFiles.lst 38B
HELP.md 2KB
mvnw 10KB
miaosha-demo-0.0.1-SNAPSHOT.jar.original 8KB
maven-wrapper.properties 233B
pom.properties 70B
application.properties 1B
application.properties 1B
uiDesigner.xml 9KB
workspace.xml 6KB
pom.xml 4KB
compiler.xml 891B
jarRepositories.xml 870B
Maven__org_springframework_boot_spring_boot_starter_data_redis_2_2_7_RELEASE.xml 769B
Maven__org_springframework_boot_spring_boot_test_autoconfigure_2_2_7_RELEASE.xml 769B
Maven__org_springframework_boot_spring_boot_starter_validation_2_2_7_RELEASE.xml 769B
Maven__org_springframework_boot_spring_boot_starter_logging_2_2_7_RELEASE.xml 748B
Maven__org_springframework_boot_spring_boot_starter_tomcat_2_2_7_RELEASE.xml 741B
Maven__com_fasterxml_jackson_module_jackson_module_parameter_names_2_10_4.xml 736B
Maven__org_springframework_boot_spring_boot_autoconfigure_2_2_7_RELEASE.xml 734B
Maven__org_springframework_boot_spring_boot_starter_json_2_2_7_RELEASE.xml 727B
Maven__org_springframework_boot_spring_boot_starter_test_2_2_7_RELEASE.xml 727B
Maven__org_springframework_boot_spring_boot_starter_web_2_2_7_RELEASE.xml 720B
Maven__org_springframework_boot_spring_boot_starter_aop_2_2_7_RELEASE.xml 720B
Maven__org_springframework_session_spring_session_core_2_2_2_RELEASE.xml 704B
Maven__com_vaadin_external_google_android_json_0_0_20131108_vaadin1.xml 700B
Maven__org_springframework_data_spring_data_keyvalue_2_2_7_RELEASE.xml 699B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jsr310_2_10_4.xml 695B
Maven__org_springframework_spring_context_support_5_2_6_RELEASE.xml 693B
Maven__org_springframework_boot_spring_boot_starter_2_2_7_RELEASE.xml 692B
Maven__org_springframework_data_spring_data_commons_2_2_7_RELEASE.xml 692B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jdk8_2_10_4.xml 681B
Maven__org_hibernate_validator_hibernate_validator_6_0_19_Final.xml 681B
Maven__org_springframework_data_spring_data_redis_2_2_7_RELEASE.xml 678B
Maven__org_springframework_boot_spring_boot_test_2_2_7_RELEASE.xml 671B
Maven__org_apache_tomcat_embed_tomcat_embed_websocket_9_0_34.xml 660B
Maven__org_springframework_spring_expression_5_2_6_RELEASE.xml 658B
Maven__com_fasterxml_jackson_core_jackson_annotations_2_10_4.xml 651B
Maven__org_springframework_spring_context_5_2_12_RELEASE.xml 644B
Maven__org_springframework_boot_spring_boot_2_2_7_RELEASE.xml 636B
Maven__jakarta_validation_jakarta_validation_api_2_0_2.xml 633B
Maven__jakarta_activation_jakarta_activation_api_1_2_2.xml 633B
Maven__jakarta_annotation_jakarta_annotation_api_1_3_5.xml 633B
Maven__org_junit_platform_junit_platform_commons_1_5_2.xml 633B
Maven__org_springframework_spring_webmvc_5_2_6_RELEASE.xml 630B
Maven__com_fasterxml_jackson_core_jackson_databind_2_10_4.xml 630B
Maven__org_springframework_spring_beans_5_2_12_RELEASE.xml 630B
Maven__org_junit_platform_junit_platform_engine_1_5_2.xml 626B
Maven__org_apache_tomcat_embed_tomcat_embed_core_9_0_34.xml 625B
Maven__org_springframework_spring_core_5_2_6_RELEASE.xml 616B
Maven__org_springframework_spring_test_5_2_6_RELEASE.xml 616B
Maven__org_springframework_spring_aop_5_2_12_RELEASE.xml 616B
Maven__io_projectreactor_reactor_core_3_3_5_RELEASE.xml 615B
Maven__org_junit_jupiter_junit_jupiter_params_5_5_2.xml 615B
Maven__org_junit_vintage_junit_vintage_engine_5_5_2.xml 615B
Maven__org_junit_jupiter_junit_jupiter_engine_5_5_2.xml 615B
Maven__jakarta_xml_bind_jakarta_xml_bind_api_2_3_3.xml 611B
Maven__org_apache_tomcat_embed_tomcat_embed_el_9_0_34.xml 611B
Maven__org_springframework_spring_web_5_2_6_RELEASE.xml 609B
Maven__org_springframework_spring_jcl_5_2_6_RELEASE.xml 609B
Maven__org_springframework_spring_oxm_5_2_6_RELEASE.xml 609B
Maven__org_jboss_logging_jboss_logging_3_4_1_Final.xml 608B
Maven__org_apache_logging_log4j_log4j_to_slf4j_2_12_1.xml 608B
Maven__org_springframework_spring_tx_5_2_6_RELEASE.xml 602B
Maven__com_fasterxml_jackson_core_jackson_core_2_10_4.xml 602B
Maven__org_mockito_mockito_junit_jupiter_3_1_0.xml 598B
Maven__org_reactivestreams_reactive_streams_1_0_3.xml 595B
Maven__org_junit_jupiter_junit_jupiter_api_5_5_2.xml 594B
Maven__io_netty_netty_transport_4_1_49_Final.xml 593B
Maven__io_lettuce_lettuce_core_5_2_2_RELEASE.xml 587B
Maven__io_netty_netty_resolver_4_1_49_Final.xml 586B
Maven__net_bytebuddy_byte_buddy_agent_1_10_10.xml 585B
Maven__org_apache_logging_log4j_log4j_core_2_14_1.xml 580B
Maven__io_netty_netty_handler_4_1_49_Final.xml 579B
Maven__org_apache_logging_log4j_log4j_api_2_14_1.xml 573B
Maven__org_apiguardian_apiguardian_api_1_1_0.xml 572B
Maven__io_netty_netty_common_4_1_49_Final.xml 572B
Maven__io_netty_netty_buffer_4_1_49_Final.xml 572B
Maven__ch_qos_logback_logback_classic_1_2_3.xml 568B
共 130 条
- 1
- 2
资源评论
卓凡学院
- 粉丝: 1043
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 聊天系统(java+applet).zip
- 毕业设计:基于SSM的mysql-高校学生请假管理系统(源码 + 数据库 + 说明文档)
- 博客系统(struts+hibernate+spring).rar
- c语言学生成绩管理系统源码.zip
- 毕业设计:基于SSM的mysql-网约车用户服务平台(源码 + 数据库 + 说明文档)
- 内容管理系统(hibernate3+struts2+spring2)130224.rar
- 基于Java的班级管理系统课程设计源码
- 内容管理系统(hibernate3+struts2+spring2).rar
- 路由器刷breed Web控制台助手v5.8版本.rar
- Java 在 JEP 12 提供的特性预览
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功