# seckill
一个整合SSM框架的高并发和商品秒杀项目,学习目前较流行的Java框架组合实现高并发秒杀API
## 项目环境的搭建
- **操作系统** : Ubuntu 16.04
- **IDE** :IntelliJ IDEA 2019.2.5 x64 用Eclipse也一样的,工具时靠人用的
- **JDK** : JDK1.8 建议使用JDK1.7以上版本,有许多语法糖用着挺舒服的
- **Web容器** : Tomcat 8.5
- **数据库** :Mysql-5.6.17-WinX64 实验性的项目用Mysql就足够啦
- **依赖管理工具** : Maven 管理jar包真的很方便
这里列出的环境不是必须的,你喜欢用什么就用什么,这里只是给出参考,不过不同的版本可能会引起各种不同的问题就需要我们自己去发现以及排查,在这里使用Maven的话时方便我们管理JAR包,我们不用跑去各种开源框架的官网去下载一个又一个的JAR包,配置好了Maven后添加pom文件坐标就会从中央仓库下载JAR包,如果哪天替换版本也很方便
------
## 项目效果图
- 秒杀商品列表
![在这里插入图片描述](https://raw.githubusercontent.com/DiCaprio17/DiCaprio17.github.io/master/img/2019-08-19-SSM框架高并发和商品秒杀项目(IDEA)-result_1.jpg)
- 秒杀结束提示界面
![在这里插入图片描述](https://raw.githubusercontent.com/DiCaprio17/DiCaprio17.github.io/master/img/2019-08-19-SSM框架高并发和商品秒杀项目(IDEA)-result_2.jpg)
- 开始秒杀提示界面
![在这里插入图片描述](https://raw.githubusercontent.com/DiCaprio17/DiCaprio17.github.io/master/img/2019-08-19-SSM框架高并发和商品秒杀项目(IDEA)-result_3.jpg)
- 重复秒杀提示界面
![在这里插入图片描述](https://raw.githubusercontent.com/DiCaprio17/DiCaprio17.github.io/master/img/2019-08-19-SSM框架高并发和商品秒杀项目(IDEA)-result_4.jpg)
- 秒杀秒杀成功提示界面
![在这里插入图片描述](https://raw.githubusercontent.com/DiCaprio17/DiCaprio17.github.io/master/img/2019-08-19-SSM框架高并发和商品秒杀项目(IDEA)-result_5.jpg)
------
## 项目的运行
### 下载
`Download Zip`或者 `git clone`
```shell
git clone https://github.com/DiCaprio17/seckill.git
```
### 导入到IDE
这里因为是使用`IDEA`创建的项目,所以使用`IDEA`直接打开是很方便的,提前是你要配置好`maven`的相关配置,以及项目`JDK`版本,
`JDK`版本必须在`1.8`以上,因为在项目中使用了`Java8`的`LocalDateTime`以及`LocalDate`,所以低于这个版本编译会失败的
- IDEA
直接在主界面选择`Open`,然后找到项目所在路径,点击`pom.xml`打开就可以了
- Eclipse
这个项目是基于`IDEA`创建,我这里把项目转成了`Eclipse`的项目,如果你使用Eclipse的话也可以直接导入,只是步骤更繁琐一点,[Eclipse导入步骤](/note/EclipseImport.md)
## 项目编码
项目总结可能比较的长,**密集恐惧症**者请按小节进行阅读
- [(一)Java高并发秒杀API之业务分析与DAO层](/note/note1.md)
- [(二)Java高并发秒杀API之Service层](/note/note2.md)
- [(三)Java高并发秒杀API之web层](/note/note3.md)
- [(四)Java高并发秒杀API之高并发优化](/note/note4.md)
这里按照上面几个流程走下去,你要有基本的Maven认识以及Java语法的一些概念,要不然可能不太理解
---
### (一)Java高并发秒杀APi之业务分析与DAO层代码编写
#### 构建项目的基本骨架
- 首先我们要搭建出一个符合Maven约定的目录来,这里大致有两种方式,第一种:
1. 第一种使用命令行手动构建一个maven结构的目录,当然我基本不会这样构建
```
mvn archetype:generate -DgroupId=com.hnz.seckill -DartifactId=seckill -Dpackage=com.hnz.seckill -Dversion=1.0-SNAPSHOT -DarchetypeArtifactId=maven-archetype-webapp
```
这里要注意的是使用`archetype:generate`进行创建,在Maven老版本中是使用`archetype:create`,现在这种方法已经被弃用了,所以使用命令行创建的话注意了,稍微解释下这段语句的意思,就是构建一个一个`maven-archetype-webapp`骨架的Webapp项目,然后`groupId`为`com.hnz.seckill `,`artifactId`为`seckill`,这里是Maven相关知识,可以按照自己的情况进行修改
2. 第二种直接在IDE中进行创建,这里以IDEA为例
- 点击左上角`File>New>Project>Maven`
- 然后在里面勾选`Create from archetype`,然后再往下拉找到`org.apache.cocoon:cocoon-22-archetype-webapp`,选中它,注意要先勾选那个选项,否则选择不了,然后点击`Next`继续
![在这里插入图片描述](https://raw.githubusercontent.com/DiCaprio17/DiCaprio17.github.io/master/img/2019-08-19-SSM框架高并发和商品秒杀项目(IDEA)-001.png)
- 然后就填写你的Maven的那几个重要的坐标了,自己看着填吧
![在这里插入图片描述](https://raw.githubusercontent.com/DiCaprio17/DiCaprio17.github.io/master/img/2019-08-19-SSM框架高并发和商品秒杀项目(IDEA)-002.png)
- 再就配置你的Maven的相关信息,默认应该是配置好的
![在这里插入图片描述](https://raw.githubusercontent.com/DiCaprio17/DiCaprio17.github.io/master/img/2019-08-19-SSM框架高并发和商品秒杀项目(IDEA)-003.png)
- 之后就是点`Finsh`,到此不出意外的话就应该创建成功了
#### 构建pom文件
项目基本的骨架我们就创建出来了,接下来我们要添加一些基本的JAR包的依赖,也就是在`pom.xml`中添加各种开源组件的三坐标了
```xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.hnz.ssm</groupId>
<artifactId>ssm</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
<name>ssm Maven Webapp</name>
<!-- FIXME change it to the project's website -->
<url>http://www.example.com</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<!--4.11使用注解方式-->
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<!--补全项目依赖-->
<!--1:日志 java日志:slf4j(规范/接口),log4j、logback、common-logging(日志实现)-->
<!--配置日志相关,日志门面使用slf4j,日志的具体实现由logback实现-->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.12</version>
</dependency>
<!--实现slf4j接口并整合-->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.1.7</version>
</dependency>
<!--2:数据库相关依赖-->
<!--首先导入连接Mysql数据连接-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.32</version>
</dependency>
<!--导入数据库连接池-->
<dependency>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.1.2</version>
</dependency>
<!--导入mybatis依赖-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.5</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
没有合适的资源?快使用搜索试试~ 我知道了~
毕设 一个整合SSM框架的高并发和商品秒杀项目,学习目前较流行的Java框架组合实现高并发秒杀API.zip
共204个文件
class:33个
jpg:33个
xml:31个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 38 浏览量
2023-10-24
10:51:52
上传
评论
收藏 27.11MB ZIP 举报
温馨提示
matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行! matlab算法,毕设、课设程序,全部源码均已进行严格测试,可以直接运行!
资源推荐
资源详情
资源评论
收起资源包目录
毕设 一个整合SSM框架的高并发和商品秒杀项目,学习目前较流行的Java框架组合实现高并发秒杀API.zip (204个子文件)
SeckillServiceImpl.class 6KB
SeckillController.class 5KB
SeckillController.class 5KB
SeckillServiceImpl.class 4KB
SeckillServiceImplTest.class 4KB
RedisDao.class 3KB
Exposer.class 2KB
Exposer.class 2KB
SeckillExecution.class 2KB
SeckillExecution.class 2KB
SeckillDaoTest.class 2KB
Seckill.class 2KB
Seckill.class 2KB
SeckillResult.class 2KB
SeckillResult.class 2KB
SuccessKilled.class 2KB
SuccessKilled.class 2KB
SeckillStatEnum.class 2KB
SeckillStatEnum.class 2KB
SuccessKilledDaoTest.class 2KB
RedisDaoTest.class 2KB
SeckillService.class 643B
SeckillDao.class 629B
SeckillService.class 607B
SeckillCloseException.class 592B
SeckillCloseException.class 592B
RepeatKillException.class 586B
RepeatKillException.class 586B
SeckillException.class 565B
SeckillException.class 565B
SeckillDao.class 515B
SuccessKilledDao.class 406B
SuccessKilledDao.class 406B
bootstrap.css 134KB
bootstrap.css 134KB
bootstrap.min.css 111KB
bootstrap.min.css 111KB
bootstrap-theme.css 21KB
bootstrap-theme.css 21KB
bootstrap-theme.min.css 19KB
bootstrap-theme.min.css 19KB
glyphicons-halflings-regular.eot 20KB
glyphicons-halflings-regular.eot 20KB
ssm.iml 80B
mybatis-3.4.5.jar 1.55MB
jackson-databind-2.6.7.jar 1.12MB
spring-context-4.3.6.RELEASE.jar 1.08MB
spring-core-4.3.7.RELEASE.jar 1.07MB
mysql-connector-java-5.1.32.jar 946KB
spring-webmvc-4.3.7.RELEASE.jar 894KB
spring-web-4.3.6.RELEASE.jar 798KB
spring-beans-4.3.7.RELEASE.jar 745KB
c3p0-0.9.1.2.jar 596KB
spring-test-4.2.8.RELEASE.jar 549KB
logback-core-1.1.7.jar 460KB
spring-jdbc-4.3.7.RELEASE.jar 418KB
jstl-1.2.jar 405KB
standard-1.1.2.jar 384KB
spring-aop-4.3.6.RELEASE.jar 371KB
logback-classic-1.1.7.jar 297KB
spring-tx-4.3.7.RELEASE.jar 261KB
spring-expression-4.3.6.RELEASE.jar 257KB
jackson-core-2.6.7.jar 253KB
javax.servlet-api-3.1.0.jar 94KB
commons-logging-1.2.jar 60KB
mybatis-spring-1.3.1.jar 52KB
jackson-annotations-2.6.0.jar 46KB
slf4j-api-1.7.12.jar 31KB
SeckillServiceImpl.java 7KB
SeckillServiceImplTest.java 6KB
SeckillController.java 5KB
SeckillDaoTest.java 3KB
RedisDao.java 3KB
Exposer.java 2KB
SeckillService.java 2KB
SuccessKilledDaoTest.java 2KB
SeckillExecution.java 2KB
Seckill.java 2KB
SuccessKilled.java 1KB
SeckillDao.java 1KB
RedisDaoTest.java 1KB
SeckillResult.java 1KB
SuccessKilledDao.java 845B
SeckillStatEnum.java 800B
SeckillCloseException.java 375B
RepeatKillException.java 361B
SeckillException.java 297B
eclipse26.jpg 416KB
eclipse12.jpg 300KB
eclipse7.jpg 270KB
eclipse27.jpg 200KB
eclipse17.jpg 199KB
eclipse18.jpg 187KB
eclipse20.jpg 177KB
eclipse28.jpg 165KB
eclipse25.jpg 165KB
eclipse29.jpg 163KB
eclipse22.jpg 160KB
eclipse8.jpg 157KB
eclipse30.jpg 156KB
共 204 条
- 1
- 2
- 3
资源评论
天天501
- 粉丝: 568
- 资源: 4666
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- onenet_chongwukanhu_v06.apk
- 2022NOC软件创意编程赛项真题C++初中-决赛(有解析)
- 2022NOC软件创意编程赛项真题python初中-决赛(有解析)
- openLayer-本地数据加载 (day5)
- A题-正弦信号发生器.xdf
- 2022NOC软件创意编程赛项真题python小学高年级-决赛(有解析)
- mathml转换latex需要的xsl文件
- 2022NOC软件创意编程赛项真题图形化小学高年级-决赛(有解析)
- gbase驱动下载gbase-connector-java-8.3.81.53驱动下载
- 2022NOC软件创意编程赛项真题图形化小学低年级-决赛(有解析)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功