- 阿里云Linux服务器安装Maven实战教程
weixin_43401963
服务器阿里云linux
下载地址https://maven.apache.org/download.cgi文件上传把下载的文件上传到阿里云服务器/usr/local/software的目录(使用工具)windows命令行工具:puttywindows远程上传工具:wscpMac命令行工具:Item2Mac远程上传工具:Filezilla进到目录cd/usr/local/software解压tar-zxvfapache-m
- Maven实战-2.pom.xml标签说明
Hello姜先森
Mavenmavenxmljunit
前言持续更新中…pom.xml文件1.这是pom.xml的根元素,所有的标签都包含在…之间。2.指定当前POM模型的版本,对于maven2和maven3来说,它只能是4.0.04.0.03.,和这三个元素定义了一个项目或其他的jar、pom、war的基本坐标。定义了项目属于哪个组,这个组往往和项目所在的组织或公司相关,例如在googlecode上建立一个项目myapp,那么就是com.google
- 高效构建Java应用:Maven入门和进阶(五)
晴天学长
Javajavamaven开发语言
高效构建Java应用:Maven入门和进阶(五)Maven实战案例:搭建微服务Maven工程框架5.1项目需求和结构分析5.2项目搭建和统一构建总结Maven实战案例:搭建微服务Maven工程框架5.1项目需求和结构分析需求案例:搭建一个电商平台项目,该平台包括用户服务、订单服务、通用工具模块等。项目架构:用户服务:负责处理用户相关的逻辑,例如用户信息的管理、用户注册、登录等。订单服务:负责处理订
- Maven入门教程笔记
xmind果果
【maven】maven
简介1.是一个项目构建工具2.中央仓库啥jar包都有因为版权问题没有oracel的3.许晓斌(JuvenXu),国内社区公认的Maven技术专家、Maven中文用户组创始人、Maven技术的先驱和积极推动者,著有《Maven实战》一书好处1.比原有的项目空间更小(jar所占的空间)如何实现1.依赖管理2.maven构建code编译测试打包部署安装、配置本地仓库1.安装前提需要javaJDK2.配置
- Maven实战-3.setting.xml标签说明
Hello姜先森
Mavenmavenjava
前言持续更新中…setting.xml文件1.自定义本地Maven仓库目录地址。这样本地的仓库地址就是配置的目录了。2.基于安全因素考虑,使用通过安全认证的代理访问因特网,这时候需要为Maven配置HTTP代理,才能正常访问外部仓库。下可以有多个元素,默认第一个被激活(active属性为true的那个)的生效。optionaltruehttpproxyuserproxypassproxy.host
- Maven实战
SuperHong123
Mavenmaven
第二章、Maven的安装和配置首先介绍Windows上maven的安装过程:1、安装jdk,Maven可运行在jdk1.4及以上的版本。2、下载Maven安装包,apache-maven-3.0-bin.zip3、将安装文件解压到指定目录,例如D:\bin\apache-maven-3.0。然后需要设置环境变量:M2_HOME,变量值为maven的安装目录编辑Path变量,在后面加上%M2_HOM
- Java高级技术day74:Maven实战
开源oo柒
一、Maven私服搭建1.Maven常用命令:(1)install:本地安装,包含编译,打包,安装到本地仓库编译-javac打包-jar,将java代码打包为jar文件安装到本地仓库-将打包的jar文件,保存到本地仓库目录中。(2)clean:清除已编译信息。删除工程中的target目录。(3)compile:只编译,类似于javac命令。(4)deploy:部署。常见于结合私服使用的命令。相当于
- Maven实战问题和最佳实践
奔跑吧茂林小子
maven
Maven实战问题和最佳实践静默虚空Java后端2019-11-07点击上方Java后端,选择设为星标优质文章,及时送达作者|dunwu来源|github.com/dunwu/java-tutorial一、常见问题1、dependencies和dependencyManagement,plugins和pluginManagement有什么区别?dependencyManagement是表示依赖ja
- maven实战(一)简单mvn构建项目详解
z_s_hehehe
学习笔记mavenmaven坐标maven项目生命周scopemaven仓库
创建简单工程:**mvnarchetype:generate-DgroupId=org.sonatype.mavenbook.ch03-DartifactId=simple-DpackageName=org.sonatype.mavenbook**archetype:create在maven3.0.5中已经舍弃,使用generate替代相关mvn命令:archetype:generate:arch
- 快速入手maven
我是小水水啊
mavenmavenjava
文章目录Maven介绍Maven安装和配置基于IDEA的Maven工程创建梳理Maven工程GAVP属性Idea构建MavenJavaSE工程Idea构建MavenJavaEE工程1.手动创建2.插件方式创建Maven工程项目结构说明Maven核心功能依赖和构建管理依赖传递和冲突依赖导入失败场景和解决方案扩展构建管理和插件配置Maven继承和聚合特性Maven工程聚合关系Maven实战案例:搭建微
- [Maven实战]发布maven项目到中央仓库(Central Repository)
集成显卡
项目实践mavensonatypedeployrelease
概述用maven已经一段时间,也搭建了公司内部的maven环境。然而有一些通用的可以开源的代码想放到公网的仓库中,以便可以随时使用(公司网络因为经常切换,导致maven库常有无法导入的情况)。注册SonatypeOSSRH关于如何注册,可以看这篇文章:向maven中央仓库提交jar里面介绍了如何注册OSSRH账号。我补充几点:项目groupId怎么写?如果你是个人的名义,然后代码是放到github
- Maven实战-私服搭建详细教程
242030
mavenmaven
Maven实战-私服搭建详细教程1、为什么需要私服首先我们为什么需要搭建Maven私服,一切技术来源于解决需求,因为我们在实际开发中,当我们研发出来一个公共组件,为了能让别的业务开发组用上,则搭建一个远程仓库很有必要,写完公用组件后,直接发布到远程仓库,别人需要用到时,直接从远程仓库拉取即可,而你升级组件后,只需要再发布一个新版本即可。除此之外,如果大公司中开发人员较多,大家同时去远程仓库将依赖下
- 第二章Maven的使用
库里不会投三分
Maven学习mavenpythonjava
文章目录Maven核心概念坐标Maven实战创建Java项目实战命令行创建一个Maven版的初始化Java项目实战Maven中编写代码实战执行Maven的构建命令Maven核心概念:约定的目录结构各个目录的作用约定目录结构的意义约定大于配置Maven实战创建Maven版的Web工程实战命令行创建一个Maven版的Web初始化工程实战创建Servlet实战执行Maven的构建命令配置对servlet
- Maven实战-声明周期和插件
242030
mavenmaven
Maven实战-声明周期和插件Maven设计了插件机制,每个构建步骤都可以绑定一个或者多个插件行为,而且Maven为大多数构建步骤编写并绑定了默认插件。例如,针对编译的插件有maven-compiler-plugin,针对测试的插件有maven-surefire-plugin等。虽然在大多数时间里,用户几乎都不会觉察到插件的存在,但实际上编译是由maven-compiler-plugin完成的,而
- Maven实战-聚合与继承
242030
mavenmaven
Maven实战-聚合与继承1、pom.xml文件build配置src/test/resourcestrueorg.apache.maven.pluginsmaven-compiler-plugin3.10.11.81.8org.apache.maven.pluginsmaven-resources-plugin3.2.0UTF-8build元素下还包含了两个插件的配置。首先是配置maven-com
- Maven实战指南 09
Noble08
MavenSSHSSMspringsshmaven
6.3.2实现HibernateDAO模块在实际项目中,我们一般会使用面向接口编程,从而实现调用者和被调用者的完全解耦,方便项目的团队开发和后期的扩展。鉴于这样的考虑,关于Hibernate的持久层的实现,分两步进行:第一步定义公共接口和类,第二步基于Hibernate实现接口,详细介绍如下:第一步:定义公共DAO接口和类1、创建一个普通的Maven工程:MvnBookSSHDemo.DAO。目录
- Maven实战(三)--Pom.xml详解
~clockwork~
项目管理maven
1.概述pom中节点如下分布4.0.0....................................................................................2.基本配置modelVersion:pom模型版本,maven2和3只能为4.0.0groupId:组ID,maven用于定位artifactId:在组中的唯一ID用于定位version:项目
- Java学习计划
我想编程
制定日期:2018年3月20日阶段一(四个月,2018年8月1日前完成)java核心技术卷IJava编程思想EffectiveJavaCleanCode鸟哥的Linux私房菜(基础学习篇)ApacheCommon和Googleguava常用工具用法maven实战阶段二(六个月,2019年3月1日前完成)Spring揭秘J2EE核心模式分布式Java应用:基础与实践高性能MySQLNoSQL基本用法
- Maven实战
weixin_33843947
开发工具操作系统ruby
Maven实战许晓斌著本书由国内社区公认的Maven专家JuvenXu亲自执笔,内容的权威性毋庸置疑。本书是国内第一本公开出版的Maven专著。它内容新颖,基于最新发布的Maven30,不仅详尽讲解了Maven30的所有新功能和新特性,而且还将这些新功能和新特性与Maven2x版本进行了对比,以便于正在使用Maven2x版本的用户能更好地理解。本书内容全面,以从专家的角度阐释Maven的价
- Maven实战与原理分析(一):maven超全使用指南总结
程序员黄小斜
头条一面竟然问我Maven?mavenpackage和maveninstall有什么区别?你常用的maven命令有哪些?是干什么的?还有用过其它构建工具吗?和maven有啥区别?,以及这些功能的机制和实现原理(比如:当敲了命令mvncleancomplier之后maven做了什么;dependenciesManagement和dependencies的区别;为什么idea默认的源码目录是src/main/java等等)。 另外,Maven教程
- Maven实战生命周期与插件
超级大鸡腿
Maven生命周期与插件Maven的生命周期是抽象的,往往跟我们输入的mvn命令有关,生命周期的实际实现是由插件去实现的。具体的构建步骤,大部分都跟插件绑定,比如编译这个步骤跟插件maven-compiler-plugin:compile绑定。Maven的三套生命周期Maven的生命周期不是一个整体,其实它拥有三套完整而且相互独立的生命周期,分别是clean,default,site,clean生
- 2019-09-10-Maven实战
12345_5854
1,需求分析基于SSM框架的crud案例2,技术选型框架:SpringMVC+SPring+mbatis数据库:MySQL项目构建工具:Maven3,项目架构设计传统的项目设计方式:Maven项目的设计方式:在创建maven项目的时候出现的勾选为创建一个简单的项目(跳过对原型模板的选择)注:创建总工程时(存放工具的jar包)必须是pom类型的project,创建聚合项目(也是pom类型projec
- maven生命周期&插件
伊布拉西莫
maven
《maven实战》学习笔记何为生命周期在maven出现之前,项目构建的生命周期就已经存在了,软件开发人员每天都在对项目:清理-编译-测试-部署。maven的生命周期就是为了对所有的构建过程进行抽象和同意。maven的生命周期包括了:项目的清理-初始化-编译-测试-打包-集成测试-验证-部署-站点生成等几乎所有的构建步骤。maven的生命周期是抽象的,它几乎不参与任何实际的工作,在maven的设计中
- maven 反应堆(reactor)
伊布拉西莫
maven
《maven实战》学习笔记在一个多模块的Maven项目中,反应堆(Reactor)是指所有模块组成的一个构建结构。对于单模块的项目,反应堆就是该模块本身,但对于多模块项目来说,反应堆就包含了各模块之间继承与依赖的关系,从而能够自动计算出合理的模块构建顺序。反应堆的构建顺序为了能更清楚地解释反应堆的构建顺序,将account-aggregator的聚合配置修改如下:account-emailacco
- Maven实战之仓库
超级大鸡腿
何为Maven仓库?在Maven的世界中,所有的构件,都有着唯一的坐标,当一个工作站有多个项目的时候,如果每个项目都有着一个相同构件的备份,这显然不是最好的解决的方案,首先造成磁盘的资源浪费,其次项目的构件难以统一。根据Maven的坐标机制,在系统的某个地方,一般都是用户目录m2/repository下,存放着项目所需要的构件。这个地方称之为仓库。有了这个仓库,Maven项目需要的构件都从仓库里面
- 【Java项目学习 Day01】创建JavaWeb的Maven项目
童斋
javamaven学习
2022/7/5:成功配置了maven环境,换了阿里的镜像。参考下面这个maven的基础教程以及黑马的JavaWeb快速入门里的Maven知识。(超详细)2021最新Maven教程-Maven基础篇之Maven实战入门-最新IDEA版maven【半天快速掌握,附全套视频资料】_哔哩哔哩_bilibili【Idea中Tomcat创建MavenWeb项目】1.创建项目要改设置:2.maven不同项目的
- maven实战-源码和依赖分离
coderchenhao
源码和依赖分离博主在接触一个新项目的时候,发现这个项目打包出来的jar包非常的小,这样在替换测试环境的jar包时就会显得十分有优势。通过查看pom文件得知,原来这个项目用到了maven-dependency-plugin和maven-jar-plugin俩个maven插件。实现逻辑我们的目的是实现源码和依赖分离,也就是在打包的时候需要将源码和依赖分开,这时候我们需要先借助maven-depende
- 《Maven实战》笔记(长文警告⚠️
沙漠骆驼24
效率工具maven笔记java
本文是《Maven实战》的读书笔记,实战代码仓库:https://github.com/goSilver/mvn_in_action第五章坐标和依赖5.1坐标的定义Maven定义了这样一组规则:**世界上任何一个构件都可以使用Maven坐标唯一标识,Maven坐标的元素包括groupId、artifactId、version、packaging、classifier。**只要我们提供正确的坐标元素
- 【Maven实战技巧】「插件使用专题」Maven-Archetype插件创建自定义maven项目骨架
洛神灬殇
#深入浅出Maven开发实战mavenmybatisjava
技术推荐自定义ArchetypeMaven骨架/以当前项目为模板创建maven骨架,可以参考http://maven.apache.org/archetype/maven-archetype-plugin/advanced-usage.html,详细介绍了如何快速创建和使用Archetype。技术背景在工作过程中必然会遇到创建项目的蛋疼事,一个项目包含茫茫多的配置文件。例如:Spring、myba
- SQL的各种连接查询
xieke90
UNION ALLUNION外连接内连接JOIN
一、内连接
概念:内连接就是使用比较运算符根据每个表共有的列的值匹配两个表中的行。
内连接(join 或者inner join )
SQL语法:
select * fron
- java编程思想--复用类
百合不是茶
java继承代理组合final类
复用类看着标题都不知道是什么,再加上java编程思想翻译的比价难懂,所以知道现在才看这本软件界的奇书
一:组合语法:就是将对象的引用放到新类中即可
代码:
package com.wj.reuse;
/**
*
* @author Administrator 组
- [开源与生态系统]国产CPU的生态系统
comsci
cpu
计算机要从娃娃抓起...而孩子最喜欢玩游戏....
要让国产CPU在国内市场形成自己的生态系统和产业链,国家和企业就不能够忘记游戏这个非常关键的环节....
投入一些资金和资源,人力和政策,让游
- JVM内存区域划分Eden Space、Survivor Space、Tenured Gen,Perm Gen解释
商人shang
jvm内存
jvm区域总体分两类,heap区和非heap区。heap区又分:Eden Space(伊甸园)、Survivor Space(幸存者区)、Tenured Gen(老年代-养老区)。 非heap区又分:Code Cache(代码缓存区)、Perm Gen(永久代)、Jvm Stack(java虚拟机栈)、Local Method Statck(本地方法栈)。
HotSpot虚拟机GC算法采用分代收
- 页面上调用 QQ
oloz
qq
<A href="tencent://message/?uin=707321921&Site=有事Q我&Menu=yes">
<img style="border:0px;" src=http://wpa.qq.com/pa?p=1:707321921:1></a>
- 一些问题
文强chu
问题
1.eclipse 导出 doc 出现“The Javadoc command does not exist.” javadoc command 选择 jdk/bin/javadoc.exe 2.tomcate 配置 web 项目 .....
SQL:3.mysql * 必须得放前面 否则 select&nbs
- 生活没有安全感
小桔子
生活孤独安全感
圈子好小,身边朋友没几个,交心的更是少之又少。在深圳,除了男朋友,没几个亲密的人。不知不觉男朋友成了唯一的依靠,毫不夸张的说,业余生活的全部。现在感情好,也很幸福的。但是说不准难免人心会变嘛,不发生什么大家都乐融融,发生什么很难处理。我想说如果不幸被分手(无论原因如何),生活难免变化很大,在深圳,我没交心的朋友。明
- php 基础语法
aichenglong
php 基本语法
1 .1 php变量必须以$开头
<?php
$a=” b”;
echo
?>
1 .2 php基本数据库类型 Integer float/double Boolean string
1 .3 复合数据类型 数组array和对象 object
1 .4 特殊数据类型 null 资源类型(resource) $co
- mybatis tools 配置详解
AILIKES
mybatis
MyBatis Generator中文文档
MyBatis Generator中文文档地址:
http://generator.sturgeon.mopaas.com/
该中文文档由于尽可能和原文内容一致,所以有些地方如果不熟悉,看中文版的文档的也会有一定的障碍,所以本章根据该中文文档以及实际应用,使用通俗的语言来讲解详细的配置。
本文使用Markdown进行编辑,但是博客显示效
- 继承与多态的探讨
百合不是茶
JAVA面向对象 继承 对象
继承 extends 多态
继承是面向对象最经常使用的特征之一:继承语法是通过继承发、基类的域和方法 //继承就是从现有的类中生成一个新的类,这个新类拥有现有类的所有extends是使用继承的关键字:
在A类中定义属性和方法;
class A{
//定义属性
int age;
//定义方法
public void go
- JS的undefined与null的实例
bijian1013
JavaScriptJavaScript
<form name="theform" id="theform">
</form>
<script language="javascript">
var a
alert(typeof(b)); //这里提示undefined
if(theform.datas
- TDD实践(一)
bijian1013
java敏捷TDD
一.TDD概述
TDD:测试驱动开发,它的基本思想就是在开发功能代码之前,先编写测试代码。也就是说在明确要开发某个功能后,首先思考如何对这个功能进行测试,并完成测试代码的编写,然后编写相关的代码满足这些测试用例。然后循环进行添加其他功能,直到完全部功能的开发。
- [Maven学习笔记十]Maven Profile与资源文件过滤器
bit1129
maven
什么是Maven Profile
Maven Profile的含义是针对编译打包环境和编译打包目的配置定制,可以在不同的环境上选择相应的配置,例如DB信息,可以根据是为开发环境编译打包,还是为生产环境编译打包,动态的选择正确的DB配置信息
Profile的激活机制
1.Profile可以手工激活,比如在Intellij Idea的Maven Project视图中可以选择一个P
- 【Hive八】Hive用户自定义生成表函数(UDTF)
bit1129
hive
1. 什么是UDTF
UDTF,是User Defined Table-Generating Functions,一眼看上去,貌似是用户自定义生成表函数,这个生成表不应该理解为生成了一个HQL Table, 貌似更应该理解为生成了类似关系表的二维行数据集
2. 如何实现UDTF
继承org.apache.hadoop.hive.ql.udf.generic
- tfs restful api 加auth 2.0认计
ronin47
目前思考如何给tfs的ngx-tfs api增加安全性。有如下两点:
一是基于客户端的ip设置。这个比较容易实现。
二是基于OAuth2.0认证,这个需要lua,实现起来相对于一来说,有些难度。
现在重点介绍第二种方法实现思路。
前言:我们使用Nginx的Lua中间件建立了OAuth2认证和授权层。如果你也有此打算,阅读下面的文档,实现自动化并获得收益。SeatGe
- jdk环境变量配置
byalias
javajdk
进行java开发,首先要安装jdk,安装了jdk后还要进行环境变量配置:
1、下载jdk(http://java.sun.com/javase/downloads/index.jsp),我下载的版本是:jdk-7u79-windows-x64.exe
2、安装jdk-7u79-windows-x64.exe
3、配置环境变量:右击"计算机"-->&quo
- 《代码大全》表驱动法-Table Driven Approach-2
bylijinnan
java
package com.ljn.base;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.uti
- SQL 数值四舍五入 小数点后保留2位
chicony
四舍五入
1.round() 函数是四舍五入用,第一个参数是我们要被操作的数据,第二个参数是设置我们四舍五入之后小数点后显示几位。
2.numeric 函数的2个参数,第一个表示数据长度,第二个参数表示小数点后位数。
例如:
select cast(round(12.5,2) as numeric(5,2))  
- c++运算符重载
CrazyMizzz
C++
一、加+,减-,乘*,除/ 的运算符重载
Rational operator*(const Rational &x) const{
return Rational(x.a * this->a);
}
在这里只写乘法的,加减除的写法类似
二、<<输出,>>输入的运算符重载
&nb
- hive DDL语法汇总
daizj
hive修改列DDL修改表
hive DDL语法汇总
1、对表重命名
hive> ALTER TABLE table_name RENAME TO new_table_name;
2、修改表备注
hive> ALTER TABLE table_name SET TBLPROPERTIES ('comment' = new_comm
- jbox使用说明
dcj3sjt126com
Web
参考网址:http://www.kudystudio.com/jbox/jbox-demo.html jBox v2.3 beta [
点击下载]
技术交流QQGroup:172543951 100521167
[2011-11-11] jBox v2.3 正式版
- [调整&修复] IE6下有iframe或页面有active、applet控件
- UISegmentedControl 开发笔记
dcj3sjt126com
// typedef NS_ENUM(NSInteger, UISegmentedControlStyle) {
// UISegmentedControlStylePlain, // large plain
&
- Slick生成表映射文件
ekian
scala
Scala添加SLICK进行数据库操作,需在sbt文件上添加slick-codegen包
"com.typesafe.slick" %% "slick-codegen" % slickVersion
因为我是连接SQL Server数据库,还需添加slick-extensions,jtds包
"com.typesa
- ES-TEST
gengzg
test
package com.MarkNum;
import java.io.IOException;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.annotation
- 为何外键不再推荐使用
hugh.wang
mysqlDB
表的关联,是一种逻辑关系,并不需要进行物理上的“硬关联”,而且你所期望的关联,其实只是其数据上存在一定的联系而已,而这种联系实际上是在设计之初就定义好的固有逻辑。
在业务代码中实现的时候,只要按照设计之初的这种固有关联逻辑来处理数据即可,并不需要在数据库层面进行“硬关联”,因为在数据库层面通过使用外键的方式进行“硬关联”,会带来很多额外的资源消耗来进行一致性和完整性校验,即使很多时候我们并不
- 领域驱动设计
julyflame
VODAO设计模式DTOpo
概念:
VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。
DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数据传输对
- 单例设计模式
hm4123660
javaSingleton单例设计模式懒汉式饿汉式
单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。
&nb
- logback
zhb8015
loglogback
一、logback的介绍
Logback是由log4j创始人设计的又一个开源日志组件。logback当前分成三个模块:logback-core,logback- classic和logback-access。logback-core是其它两个模块的基础模块。logback-classic是log4j的一个 改良版本。此外logback-class
- 整合Kafka到Spark Streaming——代码示例和挑战
Stark_Summer
sparkstormzookeeperPARALLELISMprocessing
作者Michael G. Noll是瑞士的一位工程师和研究员,效力于Verisign,是Verisign实验室的大规模数据分析基础设施(基础Hadoop)的技术主管。本文,Michael详细的演示了如何将Kafka整合到Spark Streaming中。 期间, Michael还提到了将Kafka整合到 Spark Streaming中的一些现状,非常值得阅读,虽然有一些信息在Spark 1.2版
- spring-master-slave-commondao
王新春
DAOspringdataSourceslavemaster
互联网的web项目,都有个特点:请求的并发量高,其中请求最耗时的db操作,又是系统优化的重中之重。
为此,往往搭建 db的 一主多从库的 数据库架构。作为web的DAO层,要保证针对主库进行写操作,对多个从库进行读操作。当然在一些请求中,为了避免主从复制的延迟导致的数据不一致性,部分的读操作也要到主库上。(这种需求一般通过业务垂直分开,比如下单业务的代码所部署的机器,读去应该也要从主库读取数