zoukankan      html  css  js  c++  java
  • 从0开始搭建一个较健壮SpringBoot项目

    个人经验笔记

    1.创建Maven项目导入依赖

    项目模块划分:

    application  启动层     Application springboot启动类  application.xml(项目名称,服务端口,)等配置文件  ApplicationConfig(用来加载其他各模块包扫描)  跳板机AutoProxySsh(用于本地Socket连接内网集群,再连接内网的其他服务)

    basic   数据层      Mybatis的spring配置类及Mapper注解定义(HimTddlMapper)   mapper接口  mapper.xml文件     实体类(DO DTO VO FORM DATA)    mybatis-config 配置一下驼峰   generator自动生成器

    common   通用层  全局插件(Redis工具及配置,ES工具及配置)   全局常量    全局异常   返回结果   全局工具(DateUtil,StringUtil, JSONUtil,HttpUtil等)  common实体类(公司员工类,部门类等)

    core  核心业务层   facade  repository   task  分布式锁  

    test   测试层    applicationTest启动类   applicationConfig(加载其他各个模块的包扫描)   跳板机   testCase(各个层覆盖的用例)   测试父类

    web   网络层    controller  tokenManager  SessionUtil   登录拦截器  

    引入pom依赖

    父pom依赖  主要是全局依赖及各依赖版本号配置

    各模块子pom依赖  各个模块所需依赖

    application.xml 文件

    server.port=7001
    project.name=him-dashboard
    # �ڱ�����ʱ��Ĭ����test��������������ʱ��Ҫͨ�� -Dspring.profiles.active= ��ָ��
    spring.profiles.active=dev
    # aop
    spring.aop.proxy-target-class=true


    #pagehelper����
    pagehelper.helper-dialect=mysql
    pagehelper.reasonable=true
    pagehelper.support-methods-arguments=true
    pagehelper.params=count=countSql
    #zone and time format
    spring.jackson.time-zone=Asia/Shanghai
    spring.jackson.date-format=yyyy-MM-dd HH:mm:ss.SSS



    #����
    druid.driverClassName=com.mysql.cj.jdbc.Driver
    druid.initialSize=8
    druid.minIdle=4
    druid.maxActive=20
    druid.maxWait=3000

    #him�� �DZ�������
    him.druid.driverClassName=com.mysql.cj.jdbc.Driver
    him.druid.initialSize=8
    him.druid.minIdle=8
    him.druid.maxActive=40
    him.druid.maxWait=10000


    #grpc
    #grpc.server.address = 192.168.1.160
    #grpc.server.port = 13086

    #grpc broker��
    grpc.client.broker.address= static://192.168.1.160:13086
    grpc.client.broker.negotiationType=PLAINTEXT
    #grpc him��
    grpc.client.im.address=static://192.1.130.230:16061
    grpc.client.im.negotiationType=PLAINTEXT


    #钉钉接口所需要的一些权限key
    dingDing.appKey=dingbnj867zntkkjtsaq
    dingDing.appSecret=CtKfc0eixLV1o6WI2EWLENZY9LFrIeODM1HMo5rdAMKQLtNzoTw9hpgSUt-I2_h7
    dingDing.agentId=328770182
    dingDing.token=123456
    dingDing.aesKey=4g5j64qlyl3zvetqxz5jiocdr586fn2zvjpa8zls3ij
    dingDing.corpId=ding62e45896a5b1289f35c2f4657eb6378f
    dingDing.loginAppId=dingoahcmdtal2tnzuyhib
    dingDing.loginAppSecret=c-Jx-wzFNxnCS1Zpf4PPTkTiZG1dc6SV_L6pN8qQED5g1uhwoLP3kskdl6m5axle

    #redis-config
    # 连接超时时间(毫秒)
    spring.redis.timeout=3000
    # 连接池最大连接数(使用负值表示没有限制)
    spring.redis.lettuce.pool.max-active=8
    # 连接池最大阻塞等待时间(使用负值表示没有限制)
    spring.redis.lettuce.pool.max-wait=10000
    # 连接池中的最大空闲连接
    spring.redis.lettuce.pool.max-idle=8
    # 连接池中的最小空闲连接
    spring.redis.lettuce.pool.min-idle=0
    # 连接池关闭超时时间
    spring.redis.lettuce.shutdown-timeout=100


    #文件上传大小限制
    server.tomcat.max-http-post-size=-1
    spring.servlet.multipart.max-file-size=20MB
    spring.servlet.multipart.max-request-size=20MB


    其他需要:
    Swagger配置
    elistic apm配置
    日志打印
    分页pageHelper
    异常处理

  • 相关阅读:
    linux系统根目录文件系统空间不足导致的错误
    python---对象
    公共函数
    PHP接口(interface)和抽象类(abstract)
    mysql引擎
    InstallShield自定义图片资源
    InstallShield 创建自己的Dialog
    InstallShield:自己备份
    注册表和ODBC
    IS脚本学习
  • 原文地址:https://www.cnblogs.com/ttaall/p/13657153.html
Copyright © 2011-2022 走看看