用spring+springMVC+mybatis实现模拟秒杀项目(一)
2017-04-27 23:32
423 查看
声明:本项目代码参考自慕课网视频
这是在IDEA环境下创建的maven项目,创建过程就不多说了。首先配置pom.xml,配置如下:
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.LeoMs</groupId> <artifactId>seckillDemo</artifactId> <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>seckillDemo Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency> <!--补全项目依赖--> <!--1.日志 java日志有:slf4j,log4j,logback,common-logging 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.1</version> </dependency> <!--1.数据库相关依赖--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.35</version> <scope>runtime</scope> </dependency> <dependency> <groupId>c3p0</groupId> <artifactId>c3p0</artifactId> <version>0.9.1.1</version> </dependency> <!--2)spring dao层依赖--> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.3.0</version> </dependency> <!--mybatis自身实现的spring整合依赖--> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.2.3</version> </dependency> <!--3.Servlet web相关依赖--> <dependency> <groupId>taglibs</groupId> <artifactId>standard</artifactId> <version>1.1.2</version> </dependency> <dependency> <groupId>jstl</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.5.4</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> </dependency> f5a4 <!--4:spring依赖--> <!--1)spring核心依赖--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>4.1.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>4.1.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>4.1.7.RELEASE</version> </dependency> <!--2)spring dao层依赖--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>4.1.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>4.1.7.RELEASE</version> </dependency> <!--3)springweb相关依赖--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>4.1.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>4.1.7.RELEASE</version> </dependency> <!--4)spring test相关依赖--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>4.1.7.RELEASE</version> </dependency> <!--添加redis依赖--> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.7.3</version> </dependency> <!--prostuff序列化依赖--> <dependency> <groupId>com.dyuproject.protostuff</groupId> <artifactId>protostuff-core</artifactId> <version>1.0.8</version> </dependency> <dependency> <groupId>com.dyuproject.protostuff</groupId> <artifactId>protostuff-runtime</artifactId> <version>1.0.8</version> </dependency> </dependencies> <build> <finalName>seckillDemo</finalName> </build> </project>
3.实体类层开发:
秒杀商品实体类
SecKill:
package com.leoms.entity; import java.util.Date; /** * Created by LeoMs on 2017/4/23 0023. * 秒杀商品列表seckill对应实体类 */ public class Seckill { //秒杀商品ID号,主键,自增 private long seckillId; //秒杀商品名称 private String name; //秒杀商品剩余量 private int number; //秒杀商品开始秒杀日期时间 private Date startTime; //秒杀商品结束秒杀日期时间 private Date endTime; //秒杀商品创建时间 private Date createTime; public long getSeckillId() { return seckillId; } public void setSeckillId(long seckillId) { this.seckillId = seckillId; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getNumber() { return number; } public void setNumber(int number) { this.number = number; } public Date getStartTime() { return startTime; } public void setStartTime(Date startTime) { this.startTime = startTime; } public Date getEndTime() { return endTime; } public void setEndTime(Date endTime) { this.endTime = endTime; } public Date getCreateTime() { return createTime; } public void setCreateTime(Date createTime) { this.createTime = createTime; } @Override public String toString() { return "Seckill{" + "seckillId=" + seckillId + ", name='" + name + '\'' + ", number=" + number + ", startTime=" + startTime + ", endTime=" + endTime + ", createTime=" + createTime + '}'; } }
秒杀成功明细表实体类
SuccessSeckilled:
package com.leoms.entity; import java.util.Date; /** * Created by LeoMs on 2017/4/23 0023. * 成功秒杀商品列表success_killed对应实体类 */ public class SuccessKilled { //秒杀商品ID号 private long seckillId; //用户手机号码 private String userPhone; //存放秒杀状态 private short state; //创建时间 private Date createTime; //多对一,因为一件商品在库存中有很多数量,对应的购买明细也很多 private Seckill seckill; public long getSeckillId() { return seckillId; } public void setSeckillId(long seckillId) { this.seckillId = seckillId; } public String getUserPhone() { return userPhone; } public void setUserPhone(String userPhone) { this.userPhone = userPhone; } public short getState() { return state; } public void setState(short state) { this.state = state; } public Date getCreateTime() { return createTime; } public void setCreateTime(Date createTime) { this.createTime = createTime; } public Seckill getSeckill() { return seckill; } public void setSeckill(Seckill seckill) { this.seckill = seckill; } @Override public String toString() { return "SuccessKilled{" + "seckillId=" + seckillId + ", userPhone='" + userPhone + '\'' + ", state=" + state + ", createTime=" + createTime + ", seckill=" + seckill + '}'; } }
数据库对应的两个表:
相关文章推荐
- SpringMVC+Spring+mybatis+redis项目从零开始--Spring mybatis mysql配置实现
- SpringMVC+Spring+mybatis+redis项目从零开始--redis缓存策略和配置实现
- 用springmvc+spring+mybatis实现秒杀的DAO层实现
- SpringMVC+Spring+mybatis+redis项目从零开始--Springmvc配置实现
- J2EE项目系列(四)--SSM框架构建积分系统和基本商品检索系统(Spring+SpringMVC+MyBatis)(3)Ajax使用详解(级联列表)以及企业级报表Excel导入导出实现
- 基于SpringMVC+Spring+MyBatis实现秒杀系统【数据库接口】
- 基于SpringMVC+Spring+MyBatis实现秒杀系统【业务逻辑】
- springmvc+spring+mybatis+maven+mysql项目(二)Springmvc + ajax 实现javaweb验证码的制作及进行异步验证
- zTree的调用设使用(跨两个系统,两类技术实现的项目案例SpringMVC+Spring+MyBatis和Struts2+Spring+ibatis框架组合)
- SpringMVC+Spring+mybatis+redis项目从零开始--Spring mybatis mysql配置实现
- J2EE项目使用自定义注解实现基于SpringMVC + Mybatis + Mysql的读写分离
- maven项目springMVC+spring+mybatis集成,实现人员登陆
- SpringMVC+Spring+mybatis+redis项目从零开始--Springmvc配置实现
- 用maven项目mybatis集成spring+springmvc无刷新实现crud
- 基于SpringMVC+Spring+MyBatis实现秒杀系统【客户端交互】
- SpringMVC+Spring+mybatis+redis项目从零开始--Spring mybatis mysql配置实现
- 基于SpringMVC+Spring+MyBatis实现秒杀系统【概况】
- SpringMVC+Spring+mybatis+redis项目从零开始--redis缓存策略和配置实现
- 用maven项目mybatis集成spring+springmvc无刷新实现crud
- 基于Spring+SpringMVC+MyBatis实现高并发秒杀APIM