java模拟京东登陆,jd-crawl

介绍

京东爬取及模拟接口登陆

jd-crawl

技术栈说明

持久层:MyBatis

视图层:无

日志:Logback

单元测试:JUnit

插件:Swagger Lombok

包名说明

api: 存放API

service:存放业务类

dao:存放持久层类

core:存放核心类,如常量类,工具类,异常类,全局实体类等

interceptor:存放拦截器

filter:存放过滤器

config: 存放配置类,如Swagger配置类

配置说明

所有配置文件全部位于src/main/resources目录下

application.yml:项目全局配置文件

logback.xml:logback配置

持久层说明

实体类、Example类、Mapper类的生成

框架中集成了MyBatis Generator,可通过MyBatis Generator来生成。

控制层说明

控制层基类

BaseController: 位于com.jd.api

编写控制层

所有Controller类都应该继承BaseController,以获取全局处理

Controller无需手动捕获异常,异常将进行全局捕获(将根据接口类型返回错误页面或异常JSON对象)

环境分离

不建议使用Maven profile和springboot提供的spring.profiles.active来处理环境分离,这样会暴露生产环境配置信息(如数据库地址,加密密钥等)。生产环境配置应该单独编写并放在打包好的jar包同级目录下。如下:

|- 目录

|-- jd-crawl.jar

|-- application.yml

切换环境

修改application.yml下的project.env即可,取值为production和development,同时这也是logback appender的名称,环境切换后将自动采用对应的appender。如需增加环境配置,只需要添加对应的logback appender即可。

单元测试

单元测试基类

BaseTest:位于test目录下的com.codes.service包

编写单元测试

编写单元测试类,继承BaseTest即可,测试结果通过BaseTest基类中的print成员方法输出。

全局异常处理

通过BaseController的exceptionHandle方法捕获全局异常,当访问一个数据处理接口出错时,将自动返回异常JSON对象。

日志说明

日志采用springboot推荐的logback框架,对应src/main/resources/logback.xml配置文件。拥有两个Appender,分别是development(日志输出到控制台)和production(日志输出将产生文件并存放至log目录下)。Appender跟随项目环境自动切换。

JSON日期格式处理

当接口返回JSON时,默认日期格式为yyyy-MM-dd HH:mm:ss

关于Swagger

Swagger地址

Swagger的启用和禁用

在application.yml中修改swagger.enabled即可,true表示启用Swagger,false表示禁用Swagger。在项目启动后可查看Swagger的状态。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值