前言:这个项目是我的第一个实验性项目,最初的立意是制作一个个性化的BBS。由于BBS能够综合大部分功能,因此作为练手的项目来说再好不过。从写第一行代码到完成测试版大概历时2周。中间遇到了不少以前在学习中没有想到的问题,当然通过解决这些难题也更加深了对MVC模型的理解。本来打算至少完成1.0版本以后再发布出来,可惜由于新工作的原因估计短时间内很难继续完成。所以就凑合把两周中间我经历的种种记录于此。

项目后台通过Struts2+Spring+Hibernate搭建,前台使用了比较简单的Div+CSS+jQuery作为展示。

一、通过Maven管理依赖

这个过程比较复杂,虽然在网上能够查到不少现成的Maven依赖配置。但出于学习考虑,我还是手动添加并通过不断测试尽量将引入的依赖最小化。除了对基本框架的依赖以外,还有不少依赖关系是跟随项目开发进程不断引入的。

<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.learnhow</groupId>
    <artifactId>bbs2016</artifactId>
    <packaging>war</packaging>
    <version>1.0</version>
    <name>bbs2016 Maven Webapp</name>
    <url>http://maven.apache.org</url>
    <dependencies>
        <!-- 添加上传依赖,自动添加io依赖 -->
        <dependency>
            <groupId>commons-fileupload</groupId>
            <artifactId>commons-fileupload</artifactId>
            <version>1.3.1</version>
        </dependency>
        <!-- 添加json-lib依赖 -->
        <dependency>
            <groupId>net.sf.json-lib</groupId>
            <artifactId>json-lib</artifactId>
            <version>2.4</version>
            <classifier>jdk15</classifier>
        </dependency>
        <!-- 添加tomcat -->
        <dependency>
            <groupId>tomcat</groupId>
            <artifactId>jasper-runtime</artifactId>
            <version>5.5.23</version>
        </dependency>
        <!-- 特别添加jdom,由于此依赖包并非从maven库中下载,因此事先需要在本地的maven库中添加此版本的jar包 -->
        <dependency>
            <groupId>org.jdom</groupId>
            <artifactId>jdom</artifactId>
            <version>2.0.6</version>
        </dependency>
        <!-- 添加jstl依赖 -->
        <dependency>
            <groupId>jstl</groupId>
            <artifactId>jstl</artifactId>
            <version>1.2</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>taglibs</groupId>
            <artifactId>standard</artifactId>
            <version>1.1.2</version>
            <scope>compile</scope>
        </dependency>
        <!-- 添加spring整合hibernate依赖包 -->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-dbcp2</artifactId>
            <version>2.1.1</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-orm</artifactId>
            <version>4.2.2.RELEASE</version>
        </dependency>
        <!-- 添加hibernate基础依赖 -->
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>4.3.11.Final</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.36</version>
        </dependency>
        <!-- 添加struts整合spring依赖包 -->
        <dependency>
            <groupId>org.apache.struts</groupId>
            <artifactId>struts2-spring-plugin</artifactId>
            <version>2.3.24</version>
        </dependency>
        <!-- 添加spring-web包的依赖,主要是为了以后开发方便 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>4.2.2.RELEASE</version>
        </dependency>
        <!-- 添加spring基础依赖包 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>4.2.2.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-aspects</artifactId>
            <version>4.2.2.RELEASE</version>
        </dependency>
        <!-- 添加struts依赖包 -->
        <dependency>
            <groupId>org.apache.struts</groupId>
            <artifactId>struts2-core</artifactId>
            <version>2.3.24</version>
            <!-- 这里排除掉队javassist的依赖,通过hibernate包引入 -->
            <exclusions>
                <exclusion>
                    <groupId>javassist</groupId>
                    <artifactId>javassist</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>
        <!-- 添加junit依赖包 -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
    <build>
        <finalName>bbs2016</finalName>
    </build>
</project>
Maven

相关文章:

  • 2021-08-26
  • 2022-02-07
  • 2022-02-07
  • 2022-12-23
  • 2022-12-23
  • 2021-12-06
  • 2021-07-15
  • 2022-12-23
猜你喜欢
  • 2022-01-21
  • 2022-02-07
  • 2021-12-18
  • 2021-10-07
  • 2022-01-01
  • 2021-09-03
相关资源
相似解决方案