Maven

我的小站

SSM我的项目须要用Maven来治理依赖,所以咱们须要先配置好MavenMaven配置很容易,我就不演示了。

创立构造

首先,咱们新建Maven我的项目,勾选archetype,抉择archetype-webapp模板,而后创立。

这里急躁期待下载实现。

到这一步兴许很多小白疑难为什么创立的web我的项目没有java文件夹。

能够看到,这里没用Java相干的文件夹。

咱们间接在main文件夹上右键新建文件夹,上面会显示一个java,间接创立就能够。

创立分层构造

此时,咱们依照标准来,创立一个包。

我的项目构造多种多样,比方三层架构啥的,依照你的需要来。

我这里就略微演示一下。

这里这些构造都是能够本人依照标准命名,构造也有很多,分层架构办法也有很多,这里权当借鉴一下。

配置依赖

<dependencies>    <!--dependency>      <groupId>org.example</groupId>      <artifactId>[the artifact id of the block to be mounted]</artifactId>      <version>1.0-SNAPSHOT</version>    </dependency-->    <!--mybatis-->    <dependency>      <groupId>org.mybatis</groupId>      <artifactId>mybatis</artifactId>      <version>3.5.9</version>    </dependency>    <!--mybatis-spring-->    <dependency>      <groupId>org.mybatis</groupId>      <artifactId>mybatis-spring</artifactId>      <version>2.0.7</version>    </dependency>    <!--数据库-->    <dependency>      <groupId>mysql</groupId>      <artifactId>mysql-connector-java</artifactId>      <version>5.1.47</version>    </dependency>    <!--数据库连接池-->    <!--druid-->    <dependency>      <groupId>com.alibaba</groupId>      <artifactId>druid</artifactId>      <version>1.1.18</version>    </dependency>    <!-- c3p0 -->    <dependency>      <groupId>com.mchange</groupId>      <artifactId>c3p0</artifactId>      <version>0.9.5.2</version>    </dependency>    <!--  spring-mvc框架  -->    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-webmvc</artifactId>      <version>5.1.6.RELEASE</version>    </dependency>    <!--spring测试-->    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-test</artifactId>      <version>5.1.6.RELEASE</version>    </dependency>    <!--spring整合jdbc-->    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-jdbc</artifactId>      <version>5.1.6.RELEASE</version>    </dependency>    <!--spring事务管理-->    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-tx</artifactId>      <version>5.1.6.RELEASE</version>    </dependency>    <!--单元测试,配合spring-test一起应用可做spring测试-->    <dependency>      <groupId>junit</groupId>      <artifactId>junit</artifactId>      <version>4.12</version>      <scope>test</scope>    </dependency>    <!--servlet-->    <dependency>      <groupId>javax.servlet</groupId>      <artifactId>javax.servlet-api</artifactId>      <version>3.1.0</version>    </dependency>    <!--jsp-->    <dependency>      <groupId>javax.servlet</groupId>      <artifactId>jsp-api</artifactId>      <version>2.0</version>    </dependency>    <!--jstl-api-->    <dependency>      <groupId>javax.servlet.jsp.jstl</groupId>      <artifactId>jstl-api</artifactId>      <version>1.2</version>      <exclusions>        <exclusion>          <groupId>javax.servlet</groupId>          <artifactId>servlet-api</artifactId>        </exclusion>        <exclusion>          <groupId>javax.servlet.jsp</groupId>          <artifactId>jsp-api</artifactId>        </exclusion>      </exclusions>    </dependency>    <!--jstl 实现包-->    <dependency>      <groupId>org.glassfish.web</groupId>      <artifactId>jstl-impl</artifactId>      <version>1.2</version>      <exclusions>        <exclusion>          <groupId>javax.servlet</groupId>          <artifactId>servlet-api</artifactId>        </exclusion>        <exclusion>          <groupId>javax.servlet.jsp</groupId>          <artifactId>jsp-api</artifactId>        </exclusion>        <exclusion>          <groupId>javax.servlet.jsp.jstl</groupId>          <artifactId>jstl-api</artifactId>        </exclusion>      </exclusions>    </dependency>    <!-- Jackson springMVC默认的Json解决方案抉择是 Jackson,所以只须要导入jackson的jar,即可应用。-->    <dependency>      <groupId>com.fasterxml.jackson.core</groupId>      <artifactId>jackson-databind</artifactId>      <version>2.9.8</version>    </dependency>    <!-- FastJson -->    <dependency>      <groupId>com.alibaba</groupId>      <artifactId>fastjson</artifactId>      <version>1.2.54</version>    </dependency>    <!--文件上传工具包-->    <dependency>      <groupId>commons-io</groupId>      <artifactId>commons-io</artifactId>      <version>2.4</version>    </dependency>    <dependency>      <groupId>commons-fileupload</groupId>      <artifactId>commons-fileupload</artifactId>      <version>1.3.3</version>      <exclusions>        <exclusion>          <groupId>javax.servlet</groupId>          <artifactId>servlet-api</artifactId>        </exclusion>      </exclusions>    </dependency>    <!-- lombok插件 -->    <dependency>      <groupId>org.projectlombok</groupId>      <artifactId>lombok</artifactId>      <version>1.16.18</version>    </dependency>    <!-- pagehelper分页插件 -->    <dependency>      <groupId>com.github.pagehelper</groupId>      <artifactId>pagehelper</artifactId>      <version>5.1.10</version>    </dependency>    <!-- Kaptcha,验证码生成工具 -->    <dependency>      <groupId>com.github.penggle</groupId>      <artifactId>kaptcha</artifactId>      <version>2.3.2</version>      <exclusions>        <exclusion>          <groupId>javax.servlet</groupId>          <artifactId>javax.servlet-api</artifactId>        </exclusion>      </exclusions>    </dependency>    <!-- log4j -->    <dependency>      <groupId>log4j</groupId>      <artifactId>log4j</artifactId>      <version>1.2.17</version>    </dependency>    <!-- commons-logging -->    <dependency>      <groupId>commons-logging</groupId>      <artifactId>commons-logging</artifactId>      <version>1.2</version>    </dependency>  </dependencies>

我这里整合了一份依赖,如需应用可依照本人需要和对于版本进行批改或减少。

咱们配置好Maven依赖后,将依赖同步下来。

这样子,不报错就好。

log4j

咱们还须要配置一下日志的xml,日志在咱们开发过程中还是很重要的。

<?xml version="1.0" encoding="UTF-8"?><configuration status="warn">    <appenders>        <console name="Console" target="SYSTEM_OUT">            <PatternLayout pattern="[%d{HH:mm:ss:SSS}] [%p] - %l - %m%n"/>        </console>        <file name="log" fileName="log/test.log">            <patternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%1] %-5level-%msg%n"/>        </file>        <RollingFile name="RollingFileInfo" fileName="${sys:user.home}/logs/hpaasvc/info.log"                     filePattern="${sys:user.home}/logs/hpaasvc/$${date:yyyy-MM}/info-%d{yyyy-MM-dd}-%i.log">            <Filters>                <ThresholdFilter level="INFO"/>                <ThresholdFilter level="WARN" onMatch="DENY" onMismatch="NEUTRAL"/>            </Filters>            <PatternLayout pattern="[%d{HH:mm:ss:SSS}] [%p] - %l - %m%n"/>            <Policies>                <TimeBasedTriggeringPolicy/>                <SizeBasedTriggeringPolicy size="100 MB"/>            </Policies>        </RollingFile>        <RollingFile name="RollingFileWarn" fileName="${sys:user.home}/logs/hpaasvc/warn.log"                     filePattern="${sys:user.home}/logs/hpaasvc/$${date:yyyy-MM}/warn-%d{yyyy-MM-dd}-%i.log">            <Filters>                <ThresholdFilter level="WARN"/>                <ThresholdFilter level="ERROR" onMatch="DENY" onMismatch="NEUTRAL"/>            </Filters>            <PatternLayout pattern="[%d{HH:mm:ss:SSS}] [%p] - %l - %m%n"/>            <Policies>                <TimeBasedTriggeringPolicy/>                <SizeBasedTriggeringPolicy size="100 MB"/>            </Policies>        </RollingFile>        <RollingFile name="RollingFileError" fileName="${sys:user.home}/logs/hpaasvc/error.log"                     filePattern="${sys:user.home}/logs/hpaasvc/$${date:yyyy-MM}/error-%d{yyyy-MM-dd}-%i.log">            <ThresholdFilter level="ERROR"/>            <PatternLayout pattern="[%d{HH:mm:ss:SSS}] [%p] - %l - %m%n"/>            <Policies>                <TimeBasedTriggeringPolicy/>                <SizeBasedTriggeringPolicy size="100 MB"/>            </Policies>        </RollingFile>    </appenders>    <loggers>        <!--过滤掉spring和hibernate的一些无用的debug信息-->        <logger name="org.springframework" level="INFO">        </logger>        <logger name="org.hibernate" level="INFO">        </logger>        <root level="all">            <appender-ref ref="Console"/>            <appender-ref ref="RollingFileInfo"/>            <appender-ref ref="RollingFileWarn"/>            <appender-ref ref="RollingFileError"/>        </root>    </loggers></configuration>

当然,你也能够应用properties文件来配置。

# Set root category priority to INFO and its only appender to CONSOLE.#log4j.rootCategory=INFO, CONSOLE            debug   info   warn error fatallog4j.rootCategory=info, CONSOLE, LOGFILE# Set the enterprise logger category to FATAL and its only appender to CONSOLE.log4j.logger.org.apache.axis.enterprise=FATAL, CONSOLE# CONSOLE is set to be a ConsoleAppender using a PatternLayout.log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppenderlog4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayoutlog4j.appender.CONSOLE.layout.ConversionPattern=%d{ISO8601} %-6r [%15.15t] %-5p %30.30c %x - %m\n# LOGFILE is set to be a File appender using a PatternLayout.log4j.appender.LOGFILE=org.apache.log4j.FileAppenderlog4j.appender.LOGFILE.File=d:\axis.loglog4j.appender.LOGFILE.Append=truelog4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayoutlog4j.appender.LOGFILE.layout.ConversionPattern=%d{ISO8601} %-6r [%15.15t] %-5p %30.30c %x - %m\n

其余依赖

除了这些配置,咱们还有许许多多的其它xml,也须要配置,我这里间接提供一个xml文件包,能够批改一下应用。

要的话加我就能够,间接发你,747945307

将这些配置弄好后,基本上构造就进去了。

尾述

这篇文章写的有点毛糙,须要自行多推敲,第二次就纯熟了。
这里只是创立了构造,应用还须要缓缓学习哦!