在慕课网上看了Java高并发秒杀API视屏后,觉得这个案例真的让我学到了很多,现在重新自己实现一遍,博客记下,顺便分析其中的要点。
第一部分是项目的创建和依赖
利用Maven去创建工程然后导入Idea中并完成相关配置,这里的注意点:
1.利用Maven创建web项目命令:mvn archetype:generate -DgroupId=org.seckill -DartifactId=seckill -DarchetypeArtifactId=maven-archetype-webapp -DarchetypeCatalog=local
关于这条命令的解释:mvn archetype:generate 固定格式
-DgroupId 组织标识(包名)
-DartifactId 项目名称
-DarchetypeArtifactId 指定ArchetypeId,maven-archetype-quickstart,创建一个Java Project;maven-archetype-webapp,创建一个Web Project
-DarchetypeCatalog 用来指定maven-archetype-plugin读取archetype-catalog.
关于Maven命中各种参数的详细解释参考了这两篇博文:http://blog.csdn.net/edward0830ly/article/details/8748986 和 http://blog.csdn.net/robinjwong/article/details/38899065
2.从官网上获取相关配置。一些
3.Idea导入Maven项目,导入pom.
4.mavaen创建的工程的web.
1 <web-app ="http://java.sun.com/2 ="http://www.w3.org/2001/3 xsi:schemaLocation="http://java.sun.com/4 http://java.sun.com/5 version="3.0"6 metadata-complete="true">7 <!--修改servlet版本为3.0-->
5.创建好的Maven项目还有一些缺失的文件夹要自己手动去创建,主要是一个java文件,用来存放我们写的源代码,以及test文件用来存放我们的测试用例。建好后的文件目录:
6.在pom.
1 <project ="http://maven.apache.org/POM/4.0.0" ="http://www.w3.org/2001/ 2 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 3 <modelVersion>4.0.0</modelVersion> 4 <groupId>org.seckill2</groupId> 5 <artifactId>seckill2</artifactId> 6 <packaging>war</packaging> 7 <version>1.0</version> 8 <name>seckill2 Maven Webapp</name> 9 <url>http://maven.apache.org</url> 10 <dependencies> 11 <dependency> 12 <groupId>junit</groupId> 13 <artifactId>junit</artifactId> 14 <version>4.11</version> 15 <scope>test</scope> 16 </dependency> 17 <!-- 补全项目依赖--> 18 <!--1.日志 java日志:slf4j, log4j, logback, common-logging 19 slf4j 是规范/接口 20 日志实现:log4j,logback,common-logging 21 使用:slf4j+logback 22 --> 23 <dependency> 24 <groupId>org.slf4j</groupId> 25 <artifactId>slf4j-api</artifactId> 26 <version>1.7.12</version> 27 </dependency> 28 <dependency> 29 <groupId>ch.qos.logback</groupId> 30 <artifactId>logback-core</artifactId> 31 <version>1.1.1</version> 32 </dependency> 33 <!--实现slf4j接口并整合--> 34 <dependency> 35 <groupId>ch.qos.logback</groupId> 36 <artifactId>logback-classic</artifactId> 37 <version>1.1.1</version> 38 </dependency> 39 40 <!--2:数据库相关依赖--> 41 <dependency> 42 <groupId>mysql</groupId> 43 <artifactId>mysql-connector-java</artifactId> 44 <version>5.1.35</version> 45 <scope>runtime</scope> 46 </dependency> 47 <dependency> 48 <groupId>c3p0</groupId> 49 <artifactId>c3p0</artifactId> 50 <version>0.9.1.2</version> 51 </dependency> 52 53 <!--DAO框架依赖: MyBatis依赖--> 54 <dependency> 55 <groupId>org.mybatis</groupId> 56 <artifactId>mybatis</artifactId> 57 <version>3.3.0</version> 58 </dependency> 59 <!--mybatis自身实现的spring整合依赖--> 60 <dependency> 61 <groupId>org.mybatis</groupId> 62 <artifactId>mybatis-spring</artifactId> 63 <version>1.2.3</version> 64 </dependency> 65 66 <!--3: Servlet Web 相关依赖--> 67 <dependency> 68 <groupId>taglibs</groupId> 69 <artifactId>standard</artifactId> 70 <version>1.1.2</version> 71 </dependency> 72 <dependency> 73 <groupId>jstl</groupId> 74 <artifactId>jstl</artifactId> 75 <version>1.2</version> 76 </dependency> 77 <dependency> 78 <groupId>com.faster</groupId> 79 <artifactId>jackson-databind</artifactId> 80 <version>2.5.4</version> 81 </dependency> 82 <dependency> 83 <groupId>javax.servlet</groupId> 84 <artifactId>javax.servlet-api</artifactId> 85 <version>3.0.1</version> 86 </dependency> 87 88 <!--4:spring依赖--> 89 <!--1)spring核心依赖--> 90 <dependency> 91 <groupId>org.springframework</groupId> 92 <artifactId>spring-core</artifactId> 93 <version>4.1.7.RELEASE</version> 94 </dependency> 95 <dependency> 96 <groupId>org.springframework</groupId> 97 <artifactId>spring-beans</artifactId> 98 <version>4.1.7.RELEASE</version> 99 </dependency>100 <dependency>101 <groupId>org.springframework</groupId>102 <artifactId>spring-context</artifactId>103 <version>4.1.7.RELEASE</version>104 </dependency>105 <!--2)spring dao层依赖-->106 <dependency>107 <groupId>org.springframework</groupId>108 <artifactId>spring-jdbc</artifactId>109 <version>4.1.7.RELEASE</version>110 </dependency>111 <dependency>112 <groupId>org.springframework</groupId>113 <artifactId>spring-tx</artifactId>114 <version>4.1.7.RELEASE</version>115 </dependency>116 <!--3)spring web相关依赖-->117 <dependency>118 <groupId>org.springframework</groupId>119 <artifactId>spring-web</artifactId>120 <version>4.1.7.RELEASE</version>121 </dependency>122 <dependency>123 <groupId>org.springframework</groupId>124 <artifactId>spring-webmvc</artifactId>125 <version>4.1.7.RELEASE</version>126 </dependency>127 128 <!--4)spring test相关依赖-->129 <dependency>130 <groupId>org.springframework</groupId>131 <artifactId>spring-test</artifactId>132 <version>4.1.7.RELEASE</version>133 </dependency>134 135 <!-- redis客户端: Jedis -->136 <dependency>137 <groupId>redis.clients</groupId>138 <artifactId>jedis</artifactId>139 <version>2.7.3</version>140 </dependency>141 <!--protostuff序列化依赖-->142 <dependency>143 <groupId>com.dyuproject.protostuff</groupId>144 <artifactId>protostuff-core</artifactId>145 <version>1.0.8</version>146 </dependency>147 <dependency>148 <groupId>com.dyuproject.protostuff</groupId>149 <artifactId>protostuff-runtime</artifactId>150 <version>1.0.8</version>151 </dependency>152 <!-- https://mvnrepository.com/artifact/commons-collections/commons-collections -->153 <dependency>154 <groupId>commons-collections</groupId>155 <artifactId>commons-collections</artifactId>156 <version>3.2.1</version>157 </dependency>158 </dependencies>159 <build>160 <finalName>seckill2</finalName>161 </build>162 </project>
这里有出现了点差错,因为idea的maven配置没有配置我自己下的那个导致找不到依赖的错误,更改下配置即可。
呼。。。。。 项目的创建和依赖终于完成了。。。。。自己实在太水了。。。。 下一步正式开始DAO层的设计与开发。
原标题:慕课网SSM框架学习案例笔记1
关键词: