博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Springcloud基础开发框架
阅读量:6136 次
发布时间:2019-06-21

本文共 2896 字,大约阅读时间需要 9 分钟。

  hot3.png

1、概述

  • 用来快速开发Spring Cloud项目
  • 前期会考虑:数据读写分离、数据库各种基本操作、集成自己开发的消息服务、分布式业务调度服务、自动生成代码、后台管理系统页面框架

开发工具及相关技术:

  • Maven3.3.9
  • Jdk1.8
  • IntelliJ IDEA
  • Springboot2.0.4
  • Springcloud Finchley.SR1
  • Mybatis
  • Freemarker
  • ElasticJob
  • Sesjs

2、项目介绍

  • p-base:
    • p-base-comm:框架基础库
    • p-base-jdbc:数据库操作组建,数据库操作基类、主从分离、数据库操作的各种工具方法等
    • p-base-jdbc-starter:p-base-jdbc的starter pom,若需要对数据库进行操作,需在maven中引入该模块
    • p-base-page:分页组件
    • p-base-web:web项目的全局配置、工具等
    • p-base-web-starter: p-base-web的starter pom
  • p-code:
    • p-code-generate:代码生成器
  • y-cloud:
    • p-cloud-discovery:服务注册中心
    • p-cloud-gateway:服务网关
  • y-core: 表示一个业务模块
    • p-core-comm:业务模块公共类
    • p-core-service:业务模块restful服务接口
    • p-core-api:p-core-service对外的feign接口类
    • p-core-api-starter:p-core-api的springstarter,其他模块如果需要调用p-core-service中的服务,需在maven中引入该模块
    • p-core-test:测试模块,通过feign来调用p-core-service
    • p-core-admin:后台管理系统

3、端口

  • p-cloud-discovery:7001
  • p-cloud-gateway:8001
  • p-core-service:9001
  • p-core-test:9002
  • p-core-admin:9003

4、启动顺序

  • p-cloud-discovery
  • p-cloud-gateway
  • p-core-service
  • p-core-test

5、运行示例

数据库配置

  • 1、以mysql为例,在本地创建2个库:ms_masterms_slave
  • 2、分别ms_master、ms_slave中执行脚本:

redis配置

p-core-admin:后台管理系统通过redis来解决session问题

redis配置信息见p-core-admin项目中的application.yml配置文件

spring:  redis:      host: 192.168.11.19      port: 6379      password: 123      database: 0    session:      store-type: redis #使用redis存储session信息      timeout: 3600 #session过期时间      redis:        namespace: spring:session #redis中用于存储session信息的命名空间        flush-mode: immediate #session信息刷新模式,immediate:立即刷新,on_save:http response提交之后刷新        cleanup-cron: 0 * * * * * #清理redis中过期session数据的job执行频率,默认每分钟执行一次

hosts文件配置

127.0.0.1 admin.ms.org static.ms.org

admin.ms.org:访问p-core-admin

static.ms.org:访问静态资源,指向p-parent/static目录

nginx配置

server {    listen 80;    server_name static.ms.org;    root C:/Users/pc/IdeaProjects1/p-parent/static;}server {    listen 80;    server_name admin.ms.org;	location / {        proxy_pass http://127.0.0.1:9003/;    }}

启动应用

  • p-cloud-discovery
  • p-cloud-gateway
  • p-core-service
  • p-core-test
  • p-core-admin

访问测试例子

6、web集群session配置

目前项目中使用redis来解决集群session问题,如下:

  • 1、引入maven依赖
org.springframework.boot
spring-boot-starter-data-redis
org.springframework.session
spring-session-data-redis
  • 2、配置application.properties
spring:  redis:      host: 192.168.11.19      port: 6379      password: 123      database: 0    session:      store-type: redis #使用redis存储session信息      timeout: 3600 #session过期时间      redis:        namespace: spring:session #redis中用于存储session信息的命名空间        flush-mode: immediate #session信息刷新模式,immediate:立即刷新,on_save:http response提交之后刷新        cleanup-cron: 0 * * * * * #清理redis中过期session数据的job执行频率,默认每分钟执行一次
  • 3、代码中使用session
request.getSession().setAttribute("key",value);

注意:key必须是字符串格式,value必须实现java.io.Serializable接口,支持序列化

** 相关截图

后台

转载于:https://my.oschina.net/itsoku/blog/1923070

你可能感兴趣的文章
YII AJAX registerScript
查看>>
ARC forbids explicit message send of 'retainCount'
查看>>
redis单机安装
查看>>
golang内存分配
查看>>
手把手教你----使用Nuget管理自己的项目库
查看>>
trubleshoting方式浅谈
查看>>
编目DB2数据库(原创)
查看>>
企业开发中选择logback而不是log4j的理由
查看>>
信息抽取的五个层次
查看>>
IOS开发--横向流水布局实现
查看>>
【DATAGUARD】手工恢复备库日志中断
查看>>
Kettle访问IDH2.3中的HBase
查看>>
jQuery网页背景灯光闪烁特效
查看>>
【转载】JVM类加载机制小结
查看>>
Android Studio(七):项目从Eclipse到Android Studio迁移
查看>>
在Solr中使用中文分词
查看>>
Eclipse之CTRL+左键直接进入方法函数Implementation
查看>>
groovy/java自实现json解析器(2)JsonObject
查看>>
Linux IP_FORWARD introduce
查看>>
ThinkPHP getBy查询
查看>>