您的位置:首页 > 其它

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

2017-08-10 14:27 260 查看
第一步:使用Maven命令创建webapp骨架项目

骨架xml,放进本地(你的目录默认.m2)

修改项目默认设置加入命令-DarchetypeCatalog=local



cmd中执行

mvn archetype:generate -DgroupId=org.seckill -DartifactId=seckill -DarchetypeArtifactId=maven-archetype-webapp -DarchetypeCatalog=local


4.最后结果:Buildsuccess





5.导入pom.xml

项目框架的搭建

修改自动生成内容 :web.xml中默认使用2.3版本(el表达式不工作),替换成高版本(tomcat下webapps/examples/WEB-INF/web.xml)

补全目录



补全依赖:

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
4000
版本,字段名是加的` (反引号) ,而不是 ’ (单引号)。报错如下:

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 的扩展,允许使用单引号和双引号两种。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: