Maven+ssm+IDEA实现简单的秒杀系统(一)

第一步:使用Maven命令创建webapp骨架项目

  1. 骨架xml,放进本地(你的目录默认.m2)
  2. 修改项目默认设置加入命令-DarchetypeCatalog=local
    这里写图片描述
  3. cmd中执行
mvn archetype:generate -DgroupId=org.seckill -DartifactId=seckill -DarchetypeArtifactId=maven-archetype-webapp -DarchetypeCatalog=local

4.最后结果:Buildsuccess
命令行结果

生成项目所在位置
5.导入pom.xml


项目框架的搭建

  1. 修改自动生成内容 :web.xml中默认使用2.3版本(el表达式不工作),替换成高版本(tomcat下webapps/examples/WEB-INF/web.xml)
  2. 补全目录
  3. 补全依赖:
    IDEA中pom自动提示

    这里写图片描述
    第一部分:日志
    java日志:slf4j,log4j,logback,common-logging。其中slf4j是规范/接口,剩下的是实现。
    这里使用的是:slf4j+logback形式
    第二部分:数据库相关依赖
    数据库驱动+连接池

//数据库驱动
<scope>runtime</scope>

第三部分:DAO依赖:这里使用的是mybatis
mybatis自身的依赖
mybatis和spring的整合
第四部分:servlet web相关依赖
standard+jstl+jackson+servlet-api
最重要的一个部分:spring依赖
spring核心依赖:core + beans + context
springdao层依赖:jdbc + tx(声明式事务)
spring web相关依赖:web + webmvc
spring test相关依赖: test


用手写方式来创建表
每个数据库表最好有一个“create_time”字段表示:该条记录创建时间
联合主键:可以过滤重复秒杀
补充mysql 5.7.18 版本,字段名是加的` (反引号) ,而不是 ’ (单引号)。报错如下:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''seckill_id'

BIGINT NOT NULL AUTO_INCREMENT COMMENT ‘商品库存id’,
延伸 :MySQL中单引号、双引号和反引号的区别
- 反引号一般在Esc键的下方,和~在一起。它是为了区分MySQL的保留字与普通字符而引入的符号。
- 一般我们建表时都会将表名,库名都加上反引号来保证语句的执行度。
- 在标准 SQL 中,字符串使用的是单引号。
- MySQL对 SQL 的扩展,允许使用单引号和双引号两种。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值