IDEA+Maven多Module+spring4.3+springmvc+mybatis+redis整合Demo工程 附github地址

Demo已放到github: https://github.com/cbamls/restfulApi
Swagger简介:

Swagger 是一款RESTFUL接口的文档在线自动生成+功能测试功能软件。Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。Swagger 让部署管理和使用功能强大的API从未如此简单。

本项目简介:
1. 跟随“知秋”大神一步步学习J2EE,大神github:https://github.com/muyinchen
2. 整合Swagger构建一个开源restful接口管理平台
3. 目前只是整合好框架,未填充业务,所以是一个非常好的SSM Demo
4. 此文章只展示框架整合事宜,关于restfulAPI-idoc项目会有专门文章
项目整合结构大概这样:
这里写图片描述
其中idoc-common是项目通用工程,idoc-main是一个聚合工程,里面的四个Module把MVC做了分离,同时idoc-parent Module是所有模块的父工程,然后“小题大做”,抽出一个服务层对外提供rest业务调用,并独立出idoc-sso模块来做单点登录,redis来模拟session,idoc-sso统一管理登录认证、注册业务。
一些具体的操作:比如IDEA怎么多Module,maven依赖关系啥的,不扯了,大家自主学习
* 踩过的坑*

  1. spring4+后的版本不再有支持json交互的MappingJacksonHttpMessageConver类

之前版本这样配置:

<bean id="mappingJacksonHttpMessageConverter"
       class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
        <property name="supportedMediaTypes">
            <list>
                <value>application/json;charset=UTF-8</value>
            </list>
        </property>
    </bean>

spring4+后替换为:

  <bean id="stringConverter"
          class="org.springframework.http.converter.StringHttpMessageConverter">
        <property name="supportedMediaTypes">
            <list>
                <value>text/plain;charset=UTF-8</value>
            </list>
        </property>
    </bean>
    <bean id="jsonConverter"
          class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"></bean>
    <bean
            class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
        <property name="messageConverters">
            <list>
                <ref bean="stringConverter" />
                <ref bean="jsonConverter" />
            </list>
        </property>
    </bean>

2.项目启动某Module控制台不打印框架内部日志
日志系统整合的是 slf4j + log4j。pom.xml添加jar包支持:
版本已在idoc-parent工程指定。

 <!--日志相关 采用slf4j + log4j-->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>jcl-over-slf4j</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
        </dependency>

        <!--日志相关 end-->

因为springframwork 内部用的common-logging作为抽象日志访问接口,我加的log4j作为底层实现,现在要想换用日益火爆的slf4j作为抽象访问层,就要把spring依赖的comm-logging给排除掉

  <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <exclusions>
                <exclusion>
                    <artifactId>commons-logging</artifactId>
                    <groupId>commons-logging</groupId>
                </exclusion>
            </exclusions>
        </dependency>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值