• ssm 搭建项目各项配置


    首先配置 pom.xml

      1 <?xml version="1.0" encoding="UTF-8"?>
      2 
      3 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      4   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      5   <modelVersion>4.0.0</modelVersion>
      6 
      7   <groupId>com.etc</groupId>
      8   <artifactId>shy</artifactId>
      9   <version>1.0-SNAPSHOT</version>
     10   <packaging>war</packaging>
     11 
     12   <name>shy Maven Webapp</name>
     13   <!-- FIXME change it to the project's website -->
     14   <url>http://www.example.com</url>
     15 
     16   <properties>
     17     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
     18     <maven.compiler.source>1.7</maven.compiler.source>
     19     <maven.compiler.target>1.7</maven.compiler.target>
     20     <spring.version>4.3.24.RELEASE</spring.version>
     21     <mybatis.version>3.5.1</mybatis.version>
     22     <mybatis-spring.version>1.3.2</mybatis-spring.version>
     23   </properties>
     24 
     25   <dependencies>
     26     <!--校验-->
     27     <dependency>
     28       <groupId>org.hibernate</groupId>
     29       <artifactId>hibernate-validator</artifactId>
     30       <version>5.2.4.Final</version>
     31     </dependency>
     32     <!--白盒测试工具 -->
     33     <dependency>
     34       <groupId>junit</groupId>
     35       <artifactId>junit</artifactId>
     36       <version>4.12</version>
     37     </dependency>
     38     <!-- mybatis是ibatis 的升级版。是一种 orm 工具,简化数据库操作 -->
     39     <dependency>
     40       <groupId>org.mybatis</groupId>
     41       <artifactId>mybatis</artifactId>
     42       <version>${mybatis.version}</version>
     43     </dependency>
     44     <!-- jdbc driver -->
     45     <dependency>
     46       <groupId>mysql</groupId>
     47       <artifactId>mysql-connector-java</artifactId>
     48       <version>5.1.22</version>
     49     </dependency>
     50     <!-- 是一个用来整合 MyBatis 和 Spring 框架的小类库 -->
     51     <dependency>
     52       <groupId>org.mybatis</groupId>
     53       <artifactId>mybatis-spring</artifactId>
     54       <version>${mybatis-spring.version}</version>
     55     </dependency>
     56 
     57     <!--控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器 -->
     58     <dependency>
     59       <groupId>log4j</groupId>
     60       <artifactId>log4j</artifactId>
     61       <version>1.2.17</version>
     62     </dependency>
     63     <dependency>
     64       <groupId>org.slf4j</groupId>
     65       <artifactId>slf4j-api</artifactId>
     66       <version>1.7.5</version>
     67     </dependency>
     68 
     69     <!-- Spring -->
     70     <dependency>
     71       <groupId>org.springframework</groupId>
     72       <artifactId>spring-core</artifactId>
     73       <version>${spring.version}</version>
     74     </dependency>
     75     <dependency>
     76       <groupId>org.springframework</groupId>
     77       <artifactId>spring-context</artifactId>
     78       <version>${spring.version}</version>
     79     </dependency>
     80     <dependency>
     81       <groupId>org.springframework</groupId>
     82       <artifactId>spring-web</artifactId>
     83       <version>${spring.version}</version>
     84     </dependency>
     85     <dependency>
     86       <groupId>org.springframework</groupId>
     87       <artifactId>spring-context-support</artifactId>
     88       <version>${spring.version}</version>
     89     </dependency>
     90     <dependency>
     91       <groupId>org.springframework</groupId>
     92       <artifactId>spring-webmvc</artifactId>
     93       <version>${spring.version}</version>
     94     </dependency>
     95     <dependency>
     96       <groupId>org.springframework</groupId>
     97       <artifactId>spring-test</artifactId>
     98       <version>${spring.version}</version>
     99     </dependency>
    100     <!-- aop -->
    101     <dependency>
    102       <groupId>org.springframework</groupId>
    103       <artifactId>spring-aop</artifactId>
    104       <version>${spring.version}</version>
    105     </dependency>
    106     <dependency>
    107       <groupId>org.aspectj</groupId>
    108       <artifactId>aspectjweaver</artifactId>
    109       <version>1.8.13</version>
    110     </dependency>
    111     <dependency>
    112       <groupId>cglib</groupId>
    113       <artifactId>cglib</artifactId>
    114       <version>3.2.4</version>
    115     </dependency>
    116     <!--tx-->
    117     <dependency>
    118       <groupId>org.springframework</groupId>
    119       <artifactId>spring-orm</artifactId>
    120       <version>${spring.version}</version>
    121     </dependency>
    122     <dependency>
    123       <groupId>org.springframework</groupId>
    124       <artifactId>spring-tx</artifactId>
    125       <version>${spring.version}</version>
    126     </dependency>
    127     <!-- JSTL(JSP Standard Tag Library ,JSP标准标签库)是一个不断完善的开放源代码的JSP标签 -->
    128     <dependency>
    129       <groupId>javax.servlet</groupId>
    130       <artifactId>jstl</artifactId>
    131       <version>1.2</version>
    132     </dependency>
    133     <!-- Servlet包含的类以及方法 -->
    134     <dependency>
    135       <groupId>javax.servlet</groupId>
    136       <artifactId>servlet-api</artifactId>
    137       <version>3.0.1</version>
    138     </dependency>
    139     <!--为实体类自动生成get/set等代码-->
    140     <dependency>
    141       <groupId>org.projectlombok</groupId>
    142       <artifactId>lombok</artifactId>
    143       <version>1.18.8</version>
    144       <scope>provided</scope>
    145     </dependency>
    146     <!--文件上传下载 -->
    147     <dependency>
    148       <groupId>commons-io</groupId>
    149       <artifactId>commons-io</artifactId>
    150       <version>2.4</version>
    151     </dependency>
    152     <dependency>
    153       <groupId>commons-fileupload</groupId>
    154       <artifactId>commons-fileupload</artifactId>
    155       <version>1.3</version>
    156     </dependency>
    157     <!--分页插件-->
    158     <dependency>
    159       <groupId>com.github.pagehelper</groupId>
    160       <artifactId>pagehelper</artifactId>
    161       <version>4.2.1</version>
    162     </dependency>
    163     <dependency>
    164       <groupId>javax.servlet</groupId>
    165       <artifactId>javax.servlet-api</artifactId>
    166       <version>3.0.1</version>
    167     </dependency>
    168     <!--gson/json-->
    169     <dependency>
    170       <groupId>com.google.code.gson</groupId>
    171       <artifactId>gson</artifactId>
    172       <version>2.8.5</version>
    173     </dependency>
    174 
    175   </dependencies>
    176 
    177 
    178   <build>
    179     <!--逆向工程-->
    180     <plugins>
    181       <plugin>
    182         <groupId>org.mybatis.generator</groupId>
    183         <artifactId>mybatis-generator-maven-plugin</artifactId>
    184         <version>1.3.2</version>
    185         <dependencies>
    186           <dependency>
    187             <groupId>mysql</groupId>
    188             <artifactId>mysql-connector-java</artifactId>
    189             <version>5.1.22</version>
    190           </dependency>
    191         </dependencies>
    192         <configuration>
    193           <!--配置文件的路径-->
    194           <configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
    195           <overwrite>true</overwrite>
    196         </configuration>
    197       </plugin>
    198     </plugins>
    199 
    200 
    201     <finalName>shy</finalName>
    202     <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
    203       <plugins>
    204         <plugin>
    205           <artifactId>maven-clean-plugin</artifactId>
    206           <version>3.1.0</version>
    207         </plugin>
    208         <!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging -->
    209         <plugin>
    210           <artifactId>maven-resources-plugin</artifactId>
    211           <version>3.0.2</version>
    212         </plugin>
    213         <plugin>
    214           <artifactId>maven-compiler-plugin</artifactId>
    215           <version>3.8.0</version>
    216         </plugin>
    217         <plugin>
    218           <artifactId>maven-surefire-plugin</artifactId>
    219           <version>2.22.1</version>
    220         </plugin>
    221         <plugin>
    222           <artifactId>maven-war-plugin</artifactId>
    223           <version>3.2.2</version>
    224         </plugin>
    225         <plugin>
    226           <artifactId>maven-install-plugin</artifactId>
    227           <version>2.5.2</version>
    228         </plugin>
    229         <plugin>
    230           <artifactId>maven-deploy-plugin</artifactId>
    231           <version>2.8.2</version>
    232         </plugin>
    233       </plugins>
    234     </pluginManagement>
    235   </build>
    236 </project>

    spring 配置 applicationContext.xml

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <beans xmlns="http://www.springframework.org/schema/beans"
     3        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     4        xmlns:context="http://www.springframework.org/schema/context"
     5        xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
     6        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/aop https://www.springframework.org/schema/aop/spring-aop.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd">
     7 
     8     <!--<context:annotation-config></context:annotation-config>-->
     9 
    10     <context:component-scan base-package="com">
    11         <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"></context:exclude-filter>
    12     </context:component-scan>
    13 
    14     <!--导入jdbc.properties文件 -->
    15     <context:property-placeholder location="classpath:mysql.properties"
    16                                   ignore-unresolvable="true"/>
    17 
    18     <!--配置mysql数据源 -->
    19     <bean id="dataSource"
    20           class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    21         <property name="driverClassName">
    22             <value>${mysql.driverClassName}</value>
    23         </property>
    24         <property name="url">
    25             <value>${mysql.url}
    26             </value>
    27         </property>
    28         <property name="username">
    29             <value>${mysql.username}</value>
    30         </property>
    31         <property name="password">
    32             <value>${mysql.password}</value>
    33         </property>
    34     </bean>
    35 
    36     <!-- myBatis文件 -->
    37     <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    38         <property name="dataSource" ref="dataSource"/>
    39         <!-- 加载mybatis-config配置文件,里面设置别名 -->
    40         <property name="configLocation" value="classpath:mybatis-config.xml"/>
    41         <!-- 自动扫描entity目录, 省掉Configuration.xml里的手工配置,并且可以扫描实体中的别名注解 -->
    42         <property name="typeAliasesPackage" value="com.etc.entity"/>
    43         <!-- 自动扫描entity目录, 省掉Configuration.xml里的手工配置 -->
    44         <property name="mapperLocations" value="classpath*:*Mapper.xml"/>
    45     </bean>
    46 
    47     <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
    48         <property name="basePackage" value="com.etc.dao"/>
    49         <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
    50         <!--<property name="annotationClass" value="com.xf.dao.MyBatisRepository"/>-->
    51     </bean>
    52     <!--事务 -->
    53     <aop:config>
    54         <aop:pointcut id="transactionPointcut" expression="execution(* com.etc.service.*.*(..))"/>
    55         <aop:advisor pointcut-ref="transactionPointcut"
    56                      advice-ref="transactionAdvice"/>
    57     </aop:config>
    58 
    59     <!-- 注解方式配置事物 -->
    60     <!-- <tx:annotation-driven transaction-manager="transactionManager" /> -->
    61     <!-- 拦截器方式配置事物 -->
    62     <tx:advice id="transactionAdvice" transaction-manager="transactionManager">
    63         <tx:attributes>
    64             <tx:method name="*" propagation="REQUIRED"/>
    65         </tx:attributes>
    66     </tx:advice>
    67 
    68     <!-- 配置事务管理器 -->
    69     <bean id="transactionManager"
    70           class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
    71         <property name="dataSource" ref="dataSource"/>
    72     </bean>
    73 
    74 </beans>

    springmvc 配置springmvc.xml

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <beans xmlns="http://www.springframework.org/schema/beans"
     3        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     4        xmlns:context="http://www.springframework.org/schema/context"
     5        xmlns:mvc="http://www.springframework.org/schema/mvc"
     6        xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
     7         http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
     8         http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd">
     9 
    10     <!-- 自动扫描controller包下的所有类,使其认为spring mvc的控制器 -->
    11     <mvc:annotation-driven></mvc:annotation-driven>
    12 
    13     <context:component-scan base-package="com.etc.controller"></context:component-scan>
    14 
    15     <!-- 逻辑视图与物理视图的映射 -->
    16     <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    17         <property name="prefix" value="/WEB-INF/jsp/"></property>
    18         <property name="suffix" value=".jsp"></property>
    19     </bean>
    20 
    21     <!--处理静态文件 -->
    22     <mvc:resources location="/js/" mapping="/js/**"/>
    23     <mvc:resources location="/css/" mapping="/css/**"/>
    24     <mvc:resources location="/images/" mapping="/images/**"/>
    25 
    26     <!-- 多部分文件上传 M kb byte-->
    27     <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
    28         <property name="maxUploadSize" value="104857600"/>
    29         <property name="defaultEncoding" value="UTF-8"></property>
    30     </bean>
    31 
    32 </beans>

    mybatis 配置 mybatis-config.xml

     1 <?xml version="1.0" encoding="UTF-8" ?>
     2 <!DOCTYPE configuration
     3         PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
     4         "http://mybatis.org/dtd/mybatis-3-config.dtd">
     5 <configuration>
     6     <!--开启自动驼峰命名规则映射-->
     7     <settings>
     8         <setting name="mapUnderscoreToCamelCase" value="true"/>
     9     </settings>
    10 
    11     <!--插件 分页-->
    12     <plugins>
    13         <plugin interceptor="com.github.pagehelper.PageHelper">
    14             <property name="dialect" value="mysql"></property>
    15         </plugin>
    16     </plugins>
    17 
    18 </configuration>

    附加文件

    mysql.properties 连接数据库配置

    1 mysql.driverClassName=com.mysql.jdbc.Driver
    2 mysql.url=jdbc:mysql://localhost:3306/shy?useUnicode=true&characterEncoding=UTF-8
    3 mysql.username=root
    4 mysql.password=123456

    log4j.properties 日志打印

    1 log4j.rootLogger=debug,console
    2 
    3 log4j.appender.console=org.apache.log4j.ConsoleAppender  
    4 
    5 log4j.appender.console.layout=org.apache.log4j.PatternLayout  
    6 
    7 log4j.appender.console.layout.ConversionPattern=%d %-2p [%c.%M()] - %m%n
    8 
    9 log4j.logger.java.sql=debug

    generatorConfig.xml 逆向工程

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <!DOCTYPE generatorConfiguration
     3         PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
     4         "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
     5 <generatorConfiguration>
     6     <context id="test" targetRuntime="MyBatis3">
     7         <plugin type="org.mybatis.generator.plugins.EqualsHashCodePlugin"></plugin>
     8         <plugin type="org.mybatis.generator.plugins.SerializablePlugin"></plugin>
     9         <plugin type="org.mybatis.generator.plugins.ToStringPlugin"></plugin>
    10         <commentGenerator>
    11             <!-- 这个元素用来去除指定生成的注释中是否包含生成的日期 false:表示保护 -->
    12             <!-- 如果生成日期,会造成即使修改一个字段,整个实体类所有属性都会发生变化,不利于版本控制,所以设置为true -->
    13             <property name="suppressDate" value="true" />
    14             <!-- 是否去除自动生成的注释 true:是 : false:否 -->
    15             <property name="suppressAllComments" value="true" />
    16         </commentGenerator>
    17         <!--数据库链接URL,用户名、密码 -->
    18         <jdbcConnection driverClass="com.mysql.jdbc.Driver"
    19                         connectionURL="jdbc:mysql://localhost:3306/shy" userId="root"
    20                         password="123456">
    21         </jdbcConnection>
    22         <javaTypeResolver>
    23             <!-- This property is used to specify whether MyBatis Generator should
    24                 force the use of java.math.BigDecimal for DECIMAL and NUMERIC fields, -->
    25             <property name="forceBigDecimals" value="false" />
    26         </javaTypeResolver>
    27         <!-- 生成模型的包名和位置 -->
    28         <javaModelGenerator targetPackage="com.etc.entity"
    29                             targetProject="target">
    30             <property name="enableSubPackages" value="true" />
    31             <property name="trimStrings" value="true" />
    32         </javaModelGenerator>
    33         <!-- 生成映射文件的包名和位置 -->
    34         <sqlMapGenerator targetPackage="com.etc.dao"
    35                          targetProject="target">
    36             <property name="enableSubPackages" value="true" />
    37         </sqlMapGenerator>
    38         <!-- 生成DAO的包名和位置 -->
    39         <javaClientGenerator type="XMLMAPPER"
    40                              targetPackage="com.etc.dao"
    41                              targetProject="target">
    42             <property name="enableSubPackages" value="true" />
    43         </javaClientGenerator>
    44 
    45         <!-- 要生成哪些表 -->
    46         <table tableName="t_cart" domainObjectName="Cart"></table>
    47         <table tableName="t_furniture" domainObjectName="Furniture"></table>
    48         <table tableName="t_order" domainObjectName="Order"></table>
    49         <table tableName="t_type" domainObjectName="Type"></table>
    50         <table tableName="t_user" domainObjectName="User"></table>
    51 
    52     </context>
    53 </generatorConfiguration>

    web.xml 配置

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <web-app xmlns="http://java.sun.com/xml/ns/javaee"
     3          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     4          xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
     5          version="3.0">
     6   <display-name>Archetype Created Web Application</display-name>
     7 
     8   <!-- spring监听器 -->
     9   <listener>
    10     <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    11   </listener>
    12   <!-- 加载applicationContext.xml配置文件 -->
    13   <context-param>
    14     <param-name>contextConfigLocation</param-name>
    15     <param-value>classpath:applicationContext.xml</param-value>
    16   </context-param>
    17 
    18   <!-- 配置Servlet -->
    19   <servlet>
    20     <servlet-name>springmvc</servlet-name>
    21     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    22     <init-param>
    23       <param-name>contextConfigLocation</param-name>
    24       <param-value>classpath:springmvc.xml</param-value>
    25     </init-param>
    26     <load-on-startup>1</load-on-startup>
    27   </servlet>
    28 
    29   <servlet-mapping>
    30     <servlet-name>springmvc</servlet-name>
    31     <url-pattern>/</url-pattern>
    32   </servlet-mapping>
    33 
    34 
    35   <!-- 设置编码为UTF-8 -->
    36   <filter>
    37     <description>字符集过滤器</description>
    38     <filter-name>encodingFilter</filter-name>
    39     <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    40     <init-param>
    41       <description>字符集编码</description>
    42       <param-name>encoding</param-name>
    43       <param-value>UTF-8</param-value>
    44     </init-param>
    45   </filter>
    46   <filter-mapping>
    47     <filter-name>encodingFilter</filter-name>
    48     <url-pattern>/*</url-pattern>
    49   </filter-mapping>
    50 
    51 </web-app>
  • 相关阅读:
    spark学习进度9
    spark学习进度8-scrapy框架的安装与使用
    spark学习进度7-Python爬取大学排名实例
    spark学习进度6-Python爬取数据的四个简单实例
    spark学习进度5-利用开发工具IntelliJ IDEA编写Spark应用程序(Scala+Maven)
    Scala官网下载不下来问题-已解决
    spark学习进度4
    大数据学习总结07
    大数据学习总结06
    大数据学习总结05
  • 原文地址:https://www.cnblogs.com/qlnx/p/11311906.html
Copyright © 2020-2023  润新知