admin
2018-12-29 3c4adb126b51d09f8c8e2f10ba90eb411e918b17
新建user相关服务
1个文件已修改
12个文件已添加
617 ■■■■■ 已修改文件
fanli-facade-user/pom.xml 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli-facade-user/src/main/java/org/fanli/facade/user/dto/Test.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli-facade-user/src/main/java/org/fanli/facade/user/entity/Test.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli-facade-user/src/test/java/org/fanli/facade/user/AppTest.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli-service-user/pom.xml 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli-service-user/src/main/java/org/fanli/service/user/App.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli-service-user/src/main/resource/ehcache.xml 181 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli-service-user/src/main/resource/hibernate.cfg.xml 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli-service-user/src/main/resource/mybatis-config.xml 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli-service-user/src/main/resource/spring.xml 167 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli-service-user/src/main/webapp/WEB-INF/web.xml 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli-service-user/src/test/java/org/fanli/service/user/AppTest.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pom.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli-facade-user/pom.xml
New file
@@ -0,0 +1,33 @@
<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.yeshi.fanli</groupId>
    <artifactId>flq</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <artifactId>fanli-facade-user</artifactId>
  <name>fanli-facade-user</name>
  <url>http://maven.apache.org</url>
  <packaging>jar</packaging>
  <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
  <dependencies>
        <dependency>
            <groupId>com.yeshi.fanli</groupId>
            <artifactId>fanli-common</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>
        <dependency>
            <groupId>com.yeshi.fanli</groupId>
            <artifactId>fanli-common-config</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>
  </dependencies>
  <build>
        <finalName>fanli-facade-user</finalName>
  </build>
</project>
fanli-facade-user/src/main/java/org/fanli/facade/user/dto/Test.java
New file
@@ -0,0 +1,5 @@
package org.fanli.facade.user.dto;
public class Test {
}
fanli-facade-user/src/main/java/org/fanli/facade/user/entity/Test.java
New file
@@ -0,0 +1,5 @@
package org.fanli.facade.user.entity;
public class Test {
}
fanli-facade-user/src/test/java/org/fanli/facade/user/AppTest.java
New file
@@ -0,0 +1,38 @@
package org.fanli.facade.user;
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
/**
 * Unit test for simple App.
 */
public class AppTest
    extends TestCase
{
    /**
     * Create the test case
     *
     * @param testName name of the test case
     */
    public AppTest( String testName )
    {
        super( testName );
    }
    /**
     * @return the suite of tests being tested
     */
    public static Test suite()
    {
        return new TestSuite( AppTest.class );
    }
    /**
     * Rigourous Test :-)
     */
    public void testApp()
    {
        assertTrue( true );
    }
}
fanli-service-user/pom.xml
New file
@@ -0,0 +1,32 @@
<?xml version="1.0"?>
<project
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
    xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>com.yeshi.fanli</groupId>
        <artifactId>flq</artifactId>
        <version>0.0.1-SNAPSHOT</version>
    </parent>
    <artifactId>fanli-service-user</artifactId>
    <name>fanli-service-user</name>
    <url>http://maven.apache.org</url>
    <packaging>war</packaging>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>com.yeshi.fanli</groupId>
            <artifactId>fanli-facade-user</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>
    </dependencies>
</project>
fanli-service-user/src/main/java/org/fanli/service/user/App.java
New file
@@ -0,0 +1,13 @@
package org.fanli.service.user;
/**
 * Hello world!
 *
 */
public class App
{
    public static void main( String[] args )
    {
        System.out.println( "Hello World!" );
    }
}
fanli-service-user/src/main/resource/ehcache.xml
New file
@@ -0,0 +1,181 @@
<?xml version="1.0" encoding="UTF-8"?>
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:noNamespaceSchemaLocation="http://ehcache.org/ehcache.xsd">
    <!--磁盘缓存的地址 -->
    <diskStore path="java.io.tmpdir" />
    <!-- <diskStore path="D:\test" /> -->
    <!-- 默认缓存 -->
    <defaultCache maxElementsInMemory="1000" eternal="false"
        maxElementsOnDisk="10000" timeToIdleSeconds="120" timeToLiveSeconds="120"
        overflowToDisk="true" />
    <!-- 分类缓存 -->
    <cache name="classCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 今日热门 -->
    <cache name="crgCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="1200"
        timeToLiveSeconds="1200" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 首页banner缓存 -->
    <cache name="bannerCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 首页版块缓存 -->
    <cache name="supersectionCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 首页专题缓存 -->
    <cache name="specialCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!--版块商品缓存 -->
    <cache name="sectionCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 客户端参数缓存 -->
    <cache name="clientParamCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 系统参数缓存 -->
    <cache name="sysCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 页面全部缓存 -->
    <cache name="SimplePageCachingFilter" maxElementsInMemory="10"
        maxElementsOnDisk="10" eternal="false" overflowToDisk="true"
        timeToIdleSeconds="240" timeToLiveSeconds="240"
        memoryStoreEvictionPolicy="LFU">
    </cache>
    <cache name="maskKeyCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="180000"
        timeToLiveSeconds="180000" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 子系统缓存 -->
    <cache name="childSystemCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="180000"
        timeToLiveSeconds="180000" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!--三级商品缓存 -->
    <cache name="goodsCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="600"
        timeToLiveSeconds="600" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 优惠商品缓存 -->
    <cache name="taoBaoCouponCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="3600"
        timeToLiveSeconds="3600" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <cache name="config" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="18000"
        timeToLiveSeconds="18000" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <cache name="configCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <cache name="homeBaoManage" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="18000"
        timeToLiveSeconds="18000" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <cache name="temai" maxElementsInMemory="1000" maxElementsOnDisk="10000"
        eternal="false" timeToIdleSeconds="18000" timeToLiveSeconds="18000"
        overflowToDisk="true" memoryStoreEvictionPolicy="LRU" />
    <!-- 淘客缓存 -->
    <cache name="taoKeCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="20"
        timeToLiveSeconds="20" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 动态缓存 -->
    <cache name="activityCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- dos拦截 -->
    <cache name="rsCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 淘客推荐模块商品缓存 -->
    <cache name="taoKeMaterialCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 淘客物料搜索缓存 -->
    <cache name="searchWuLiaoCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 9.9/19.9/29.9/49.9模块商品缓存 -->
    <cache name="quality9K9Cache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 精选库商品查询缓存 -->
    <cache name="qualityCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 标签缓存 -->
    <cache name="labelCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 淘宝推荐物料id -->
    <cache name="taobaoMeterialCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 混合分类查询缓存 -->
    <cache name="mergeClassCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 混合分类查询缓存 -->
    <cache name="helpCenterCache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
    <!-- 双11缓存 -->
    <cache name="s11Cache" maxElementsInMemory="1000"
        maxElementsOnDisk="10000" eternal="false" timeToIdleSeconds="120"
        timeToLiveSeconds="120" overflowToDisk="true"
        memoryStoreEvictionPolicy="LRU" />
</ehcache>
fanli-service-user/src/main/resource/hibernate.cfg.xml
New file
@@ -0,0 +1,10 @@
<?xml version='1.0' encoding='UTF-8'?>
     <!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <property name="hibernate.current_session_context_class">org.springframework.orm.hibernate4.SpringSessionContext</property>
    </session-factory>
</hibernate-configuration>
fanli-service-user/src/main/resource/mybatis-config.xml
New file
@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
  PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!-- 配置全局属性 -->
    <settings>
        <!-- 使用jdbc的getGeneratedKeys获取数据库自增主键值 -->
        <setting name="useGeneratedKeys" value="true" />
        <!-- 使用列别名替换列名 默认:true -->
        <setting name="useColumnLabel" value="true" />
        <!-- 开启驼峰命名转换:Table{create_time} -> Entity{createTime} -->
        <setting name="mapUnderscoreToCamelCase" value="true" />
        <setting name="logImpl" value="STDOUT_LOGGING" />
    </settings>
</configuration>
fanli-service-user/src/main/resource/spring.xml
New file
@@ -0,0 +1,167 @@
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:cache="http://www.springframework.org/schema/cache"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:task="http://www.springframework.org/schema/task"
    xmlns:tx="http://www.springframework.org/schema/tx" xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
        http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache-3.2.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd
        http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
        http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.2.xsd
        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
        http://dubbo.apache.org/schema/dubbo        http://dubbo.apache.org/schema/dubbo/dubbo.xsd">
    <!-- 必须采用java8 -->
    <!-- 组件扫描 -->
    <context:component-scan base-package="com.yeshi.fanli.user">
    </context:component-scan>
    <!--配置spring 注解 -->
    <context:annotation-config />
    <!-- 默认的注解映射的支持 -->
    <mvc:annotation-driven />
    <!-- Spring AOP支持 -->
    <aop:aspectj-autoproxy proxy-target-class="true" />
    <!-- Dubbo配置 -->
    <!-- 提供方应用信息,用于计算依赖关系 -->
    <!-- <dubbo:application name="fanli-goods"/> -->
    <!-- 使用zookeeper广播注册中心暴露服务地址 -->
    <!-- <dubbo:registry address="zookeeper://192.168.1.147:2182"/> -->
    <!-- 用dubbo协议在20880端口暴露服务 -->
    <!-- <dubbo:protocol name="dubbo" port="20880"/> -->
    <!-- <dubbo:annotation package="com.yeshi.fanli.user.service"></dubbo:annotation> -->
    <!-- 引入配置文件 -->
    <bean
        class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations"> <!-- PropertyPlaceholderConfigurer类中有个locations属性,接收的是一个数组,即我们可以在下面配好多个properties文件 -->
            <array>
                <value>classpath:druid.properties</value>
            </array>
        </property>
    </bean>
    <bean id="multipartResolver"
        class="org.springframework.web.multipart.commons.CommonsMultipartResolver" />
    <bean
        class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor" />
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"
        init-method="init" destroy-method="close">
        <property name="url" value="${druid.url}" />
        <property name="username" value="${druid.username}" />
        <property name="password" value="${druid.password}" />
        <!-- 配置初始化大小、最小、最大 -->
        <property name="initialSize" value="${druid.initialSize}" />
        <property name="minIdle" value="${druid.minIdle}" />
        <property name="maxActive" value="${druid.maxActive}" />
        <!-- 配置获取连接等待超时的时间 -->
        <property name="maxWait" value="${druid.maxWait}" />
        <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
        <property name="timeBetweenEvictionRunsMillis" value="${druid.timeBetweenEvictionRunsMillis}" />
        <!-- 超过时间限制是否回收 -->
        <property name="removeAbandoned" value="true" />
        <!-- 超时时间;单位为秒。180秒=3分钟 -->
        <property name="removeAbandonedTimeout" value="180" />
        <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
        <property name="minEvictableIdleTimeMillis" value="${druid.minEvictableIdleTimeMillis}" />
        <property name="validationQuery" value="SELECT 'x'" />
        <property name="testWhileIdle" value="true" />
        <property name="testOnBorrow" value="false" />
        <property name="testOnReturn" value="false" />
        <!-- 打开PSCache,并且指定每个连接上PSCache的大小 -->
        <property name="poolPreparedStatements" value="false" />
        <property name="maxPoolPreparedStatementPerConnectionSize"
            value="20" />
        <!-- 配置监控统计拦截的filters -->
        <property name="filters" value="stat" />
    </bean>
    <bean id="sessionFactory"
        class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
        <property name="dataSource" ref="dataSource"></property>
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</prop>
                <!-- <prop key="hibernate.hbm2ddl.auto">false</prop> -->
                <prop key="hibernate.show_sql">true</prop>
            </props>
        </property>
        <property name="configLocation" value="classpath:hibernate.cfg.xml" />
        <!-- 自动扫描实体  -->
        <property name="packagesToScan" value="com.yeshi.fanli.user.entity.DO" />
    </bean>
    <!-- spring和MyBatis完美整合,不需要mybatis的配置映射文件 -->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource" />
        <property name="configLocation" value="classpath:mybatis-config.xml" />
        <!-- 自动扫描mapping.xml文件 -->
        <property name="mapperLocations"
            value="classpath:com/yeshi/fanli/user/mapping/**/*.xml"></property>
    </bean>
    <!-- DAO接口所在包名,Spring会自动查找其下的类 -->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="com.yeshi.fanli.user.dao" />
        <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
    </bean>
    <!-- 事物 -->
    <bean id="transactionManager"
        class="org.springframework.orm.hibernate4.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory" />
    </bean>
    <tx:annotation-driven transaction-manager="transactionManager"
        proxy-target-class="true" />
    <bean id="hibernateTemplate" class="org.springframework.orm.hibernate4.HibernateTemplate">
        <property name="sessionFactory" ref="sessionFactory" />
    </bean>
    <task:annotation-driven scheduler="qbScheduler"
        mode="proxy" />
    <task:scheduler id="qbScheduler" pool-size="50" />
    <!-- 异步方法 -->
    <task:executor id="pushExecutor" pool-size="15-1000"
        queue-capacity="100" keep-alive="20" />
    <!-- 缓存注解支持 -->
    <cache:annotation-driven cache-manager="cacheManager" />
    <bean id="cacheManagerFactory"
        class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
        <property name="configLocation" value="classpath:ehcache.xml" />
    </bean>
    <bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheCacheManager">
        <property name="cacheManager" ref="cacheManagerFactory" />
    </bean>
    <!-- Spring线程池 -->
    <bean id="taskExecutor"
        class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor">
        <!-- 线程池维护线程的最少数量 -->
        <property name="corePoolSize" value="100" />
        <!-- 线程池维护线程所允许的空闲时间 -->
        <property name="keepAliveSeconds" value="30000" />
        <!-- 线程池维护线程的最大数量 -->
        <property name="maxPoolSize" value="1000" />
        <!-- 线程池所使用的缓冲队列 -->
        <property name="queueCapacity" value="200" />
    </bean>
</beans>
fanli-service-user/src/main/webapp/WEB-INF/web.xml
New file
@@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:web="http://java.sun.com/xml/ns/javaee"
    xmlns="http://java.sun.com/xml/ns/javaee"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    version="2.5" metadata-complete="true">
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath*:/spring.xml</param-value>
    </context-param>
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <filter>
        <filter-name>encodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
        <init-param>
            <param-name>enabled</param-name>
            <param-value>true</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <!-- druid -->
    <servlet>
        <servlet-name>DruidStatView</servlet-name>
        <servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>
        <init-param>
            <!-- 允许清空统计数据 -->
            <param-name>resetEnable</param-name>
            <param-value>true</param-value>
        </init-param>
        <init-param>
            <!-- 用户名 -->
            <param-name>loginUsername</param-name>
            <param-value>yeshi</param-value>
        </init-param>
        <init-param>
            <!-- 密码 -->
            <param-name>loginPassword</param-name>
            <param-value>yeshi2016</param-value>
        </init-param>
    </servlet>
    <servlet-mapping>
        <servlet-name>DruidStatView</servlet-name>
        <url-pattern>/druid/*</url-pattern>
    </servlet-mapping>
    <filter>
        <filter-name>DruidWebStatFilter</filter-name>
        <filter-class>com.alibaba.druid.support.http.WebStatFilter</filter-class>
        <init-param>
            <param-name>exclusions</param-name>
            <param-value>*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>DruidWebStatFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
</web-app>
fanli-service-user/src/test/java/org/fanli/service/user/AppTest.java
New file
@@ -0,0 +1,38 @@
package org.fanli.service.user;
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
/**
 * Unit test for simple App.
 */
public class AppTest
    extends TestCase
{
    /**
     * Create the test case
     *
     * @param testName name of the test case
     */
    public AppTest( String testName )
    {
        super( testName );
    }
    /**
     * @return the suite of tests being tested
     */
    public static Test suite()
    {
        return new TestSuite( AppTest.class );
    }
    /**
     * Rigourous Test :-)
     */
    public void testApp()
    {
        assertTrue( true );
    }
}
pom.xml
@@ -1,5 +1,5 @@
<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/xsd/maven-4.0.0.xsd">
<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.yeshi.fanli</groupId>
@@ -18,6 +18,8 @@
        <module>fanli-service-system</module>
        <module>fanli-facade-goods</module>
        <module>fanli-service-goods</module>
    <module>fanli-facade-user</module>
    <module>fanli-service-user</module>
    </modules>