一切福田,不離方寸,從心而覓,感無不通。

mall学习所需知识点

推荐资料 IDEA 《IntelliJ-IDEA-Tutorial》:https://github.com/judasn/IntelliJ-IDEA-Tutorial 特别全的IDEA使用教程,可以学到很多实用的技巧。 Spring 《Spring实战(第4版)》:https://book.douban.com/subject/26767354/ 经典的、畅销的Spring学习和实践指南,从此书可以学习到Spring的实用用法,对Spring有个整体的了解,推荐整本阅读。 SpringBoot 《Spring Boot实战》:https://book.douban.com/subject/26857423/ SpringBoot的入门书,一共也就200多页,反正我是看完了,其中关于Groovy和Grails部分大可不看。 MyBatis 《MyBatis从入门到精通》:https://book.douban.com/subject/27074809/ 很好的一本MyBatis入门书,作者是开源插件PageHelper的项目主,平时忘了MyBatis的一些用法的时候可以当工具书使用,推荐整本阅读 MySql 《深入浅出MySQL》:https://book.douban.com/subject/25817684/ 网易DBA写的一本MySql书籍,作为一个开发者,我们只要看第一部分基础篇、第二部分开发篇、第三部分优化篇即可。 Linux 《循序渐进Linux(第2版)》:https://book.douban.com/subject/26758194/ 南非蚂蚁写的一本Linux书籍,作为一个开发者,我们只要看第一篇基础知识篇、第二篇服务器搭建篇即可,后面讲到生产环境部署项目会用到。 Elasticsearch 《Elasticsearch 权威指南》:https://www.elastic.co/guide/cn/elasticsearch/guide/current/index.html Elasticsearch官方推荐的中文学习资料,基于Elasticsearch2.4.x版本,比较老,但是可堪一用。大多数成熟的框架,版本迭代用法相差不会很大。 《Elasticsearch 技术解析与实战》:https://book.douban.com/subject/26967826/ 如果你觉得上面那本ElasticSearch版本太老的话可以看这本。 Mongodb 《MongoDB实战(第二版)》:https://book.douban.com/subject/27061123/ 很好的一本MongoDB实战书,作者参与过MongoDB的驱动开发,感兴趣的可以都看下。 Docker 《Spring Cloud与Docker微服务架构实战》:https://book.douban.com/subject/27028228/ 我们只需要看下这本书的Docker部分即可,后面讲到生产环境部署项目会用到。 结语 如果你按照我的推荐看了以上部分的资料,或者你已经有了以上部分的基础,那么你学习mall的时候会非常顺利。 推荐阅读 mall架构及功能概览   from:https://mp.weixin.qq.com/s?__biz=MzU1Nzg4NjgyMw==&mid=2247483680&idx=1&sn=4e5e2294a275a7709f9a239b34d1fa60&scene=21#wechat_redirect

龙生   18 May 2021
View Details

mall数据库表结构概览

商品管理 数据库表结构 功能结构 订单管理 数据库表结构 功能结构 营销管理 数据库表结构 功能结构 内容管理 数据库表结构 功能结构 用户管理 数据库表结构 功能结构 注意:部分功能暂未实现,只是对表结构进行了设计,商品管理、订单管理、营销管理大部分功能均已实现。 相关资料 PowerDesigner数据库设计文件 商品管理:https://github.com/macrozheng/mall-learning/blob/master/document/pdm/mall_pms.pdm 订单管理:https://github.com/macrozheng/mall-learning/blob/master/document/pdm/mall_oms.pdm 营销管理:https://github.com/macrozheng/mall-learning/blob/master/document/pdm/mall_sms.pdm 内容管理:https://github.com/macrozheng/mall-learning/blob/master/document/pdm/mall_cms.pdm 用户管理:https://github.com/macrozheng/mall-learning/blob/master/document/pdm/mall_ums.pdm MindMaster功能思维导图 商品管理:https://github.com/macrozheng/mall-learning/blob/master/document/mind/pms.emmx 订单管理:https://github.com/macrozheng/mall-learning/blob/master/document/mind/oms.emmx 营销管理:https://github.com/macrozheng/mall-learning/blob/master/document/mind/sms.emmx 内容管理:https://github.com/macrozheng/mall-learning/blob/master/document/mind/cms.emmx 用户管理:https://github.com/macrozheng/mall-learning/blob/master/document/mind/ums.emmx 使用到的工具 PowerDesigner:http://powerdesigner.de/ MindMaster:http://www.edrawsoft.cn/mindmaster 推荐阅读 mall在Linux环境下的部署(基于Docker Compose) mall在Linux环境下的部署(基于Docker容器) mall在Windows环境下的部署 mall整合SpringBoot+MyBatis搭建基本骨架 mall整合Swagger-UI实现在线API文档 mall整合SpringSecurity和JWT实现认证和授权(一) mall整合Elasticsearch实现商品搜索 mall整合Mongodb实现文档操作 mall整合RabbitMQ实现延迟消息 mall整合OSS实现文件上传   from:https://mp.weixin.qq.com/s?__biz=MzU1Nzg4NjgyMw==&mid=2247483835&idx=1&sn=895ae94d5a0bc5fbe5bed8aa715d92af&scene=21#wechat_redirect

龙生   18 May 2021
View Details

127.0.0.1和0.0.0.0地址的区别!

1. 问题引入 之前在使用tomcat的时候,启动tomcat默认都会绑定到127.0.0.1这个地址,最近在使用hexo写博客的时候发现通过 hexo server命令启动服务的时候绑定的ip地址是0.0.0.0。那么这两个IP地址到底有什么不同呢? 在讲解两个地址的不同之前,我们先回顾一下IP地址的基础知识。 2. IP地址分类 2.1 IP地址表示 IP地址由两个部分组成,net-id和host-id,即网络号和主机号。 net-id:表示ip地址所在的网络号。 host-id:表示ip地址所在网络中的某个主机号码。 即:

2.2 IP地址分类 IP地址一共分为5类,即A~E,它们分类的依据是其net-id所占的字节长度以及网络号前几位。 A类地址:网络号占1个字节。 网络号的第一位固定为0。 B类地址: 网络号占2个字节。 网络号的前两位固定为10。 C类地址: 网络号占3个字节。 网络号的前三位固定位110。 D类地址: 前四位是1110,用于多播(multicast),即一对多通信。 E类地址: 前四位是1111,保留为以后使用。 其中,ABC三类地址为单播地址(unicast),用于一对一通信,是最常用的。 2.3 特殊IP地址 特殊IP地址就是用来做一些特殊的事情。RFC1700中定义了以下特殊IP地址。 {0,0}:网络号和主机号都全部为0,表示“本网络上的本主机”,只能用作源地址。 {0,host-id}:本网络上的某台主机。 只能用作源地址。 {-1,-1}: 表示网络号和主机号的所有位上都是1(二进制),用于本网络上的广播,只能用作目的地址,发到该地址的数据包不能转发到源地址所在网络之外。 {net-id,-1}:直接广播到指定的网络上。 只能用作目的地址。 {net-id,subnet-id,-1}:直接广播到指定网络的指定子网络上。 只用作目的地址。 {net-id,-1,-1}:直接广播到指定网络的所有子网络上。 只能用作目的地址。 {127,}:即网络号为127的任意ip地址。 都是内部主机回环地址(loopback),永远都不能出现在主机外部的网络中。 3. 问题解答 接下来我们来看之前问过的问题:127.0.0.1和0.0.0.0地址的区别是什么? 我们先来看下共同点: 都属于特殊地址。 都属于A类地址。 都是IPV4地址。 接下来我们分别看下这两个地址: 0.0.0.0 IPV4中,0.0.0.0地址被用于表示一个无效的,未知的或者不可用的目标。 在服务器中,0.0.0.0指的是本机上的所有IPV4地址,如果一个主机有两个IP地址,192.168.1.1 和 10.1.2.1,并且该主机上的一个服务监听的地址是0.0.0.0,那么通过两个ip地址都能够访问该服务。 在路由中,0.0.0.0表示的是默认路由,即当路由表中没有找到完全匹配的路由的时候所对应的路由。 用途总结 当一台主机还没有被分配一个IP地址的时候,用于表示主机本身。 (DHCP分配IP地址的时候) 用作默认路由,表示”任意IPV4主机”。 用来表示目标机器不可用。 用作服务端,表示本机上的任意IPV4地址。 127.0.0.1 127.0.0.1属于{127,}集合中的一个,而所有网络号为127的地址都被称之为回环地址,所以回环地址!=127.0.0.1,它们是包含关系,即回环地址包含127.0.0.1。 回环地址:所有发往该类地址的数据包都应该被loop back。 用途 回环测试,通过使用ping 127.0.0.1 测试某台机器上的网络设备,操作系统或者TCP/IP实现是否工作正常。 DDos攻击防御: 网站收到DDos攻击之后,将域名A记录到127.0.0.1,即让攻击者自己攻击自己。 大部分Web容器测试的时候绑定的本机地址。 localhost 相比127.0.0.1,localhost具有更多的意义。localhost是个域名,而不是一个ip地址。之所以我们经常把localhost与127.0.0.1认为是同一个是因为我们使用的大多数电脑上都讲localhost指向了127.0.0.1这个地址。 在ubuntu系统中,/ets/hosts文件中都会有如下内容:

上面第一行是几乎每台电脑上都会有的默认配置。 但是localhost的意义并不局限于127.0.0.1。 localhost是一个域名,用于指代this computer或者this host,可以用它来获取运行在本机上的网络服务。 在大多数系统中,localhost被指向了IPV4的127.0.0.1和IPV6的::1。 […]

龙生   18 May 2021
View Details

一个不容错过的Spring Cloud实战项目!

mall-swarm简介 mall-swarm是一套微服务商城系统,采用了 Spring Cloud Greenwich、Spring Boot 2、MyBatis、Docker、Elasticsearch等核心技术,同时提供了基于Vue的管理后台方便快速搭建系统。mall-swarm在电商业务的基础集成了注册中心、配置中心、监控中心、网关等系统功能。 系统架构图 系统架构图 后端技术栈 技术 说明 Spring Cloud 微服务框架 Spring Boot 容器+MVC框架 Spring Security 认证和授权框架 MyBatis ORM框架 MyBatisGenerator 数据层代码生成 PageHelper MyBatis物理分页插件 Swagger-UI 文档生产工具 Elasticsearch 搜索引擎 RabbitMq 消息队列 Redis 分布式缓存 MongoDb NoSql数据库 Docker 应用容器引擎 Druid 数据库连接池 OSS 对象存储 MinIO 对象存储 JWT JWT登录支持 LogStash 日志收集 Lombok 简化对象封装工具 Seata 全局事务管理框架 Portainer 可视化Docker容器管理 Jenkins 自动化部署工具 项目结构

学习路线 之前有朋友问我,mall-swarm这个项目有没有学习教程?其实这个项目的功能与mall项目基本一致,只是在此基础上改成了微服务版本,只要看我写的《mall学习教程》和《Spring Cloud学习教程》即可,下面聊聊我所推荐的学习路线。 学习mall 《mall学习教程》主要分为如下几个部分,推荐学习顺序是除参考篇以外可以按下面的顺序学习,对于参考篇,可以在用到里面相关技术时再学习。 序章:mall项目的整体架构及功能介绍,同时对于新手推荐了一些相关书籍资料; 架构篇:mall项目的架构搭建教程,手把手教你搭建一个mall项目在使用的基本项目骨架; 业务篇:mall项目电商业务相关教程,对于了解项目业务有很大帮助; 技术要点篇:mall项目中的一些技术要点解析,主要介绍一些技术在项目中的运用; 部署篇:mall项目的部署教程,包括Windows、Linux和自动化部署方案; 参考篇:mall项目中所用技术和工具的入门教程,每一篇都可以单独学习,对于mall项目,这些教程的深入程度都刚刚好。 项目地址:https://github.com/macrozheng/mall-learning 学习SpringCloud 《Spring Cloud学习教程》是一套涵盖大部分核心组件使用的教程,包括Spring Cloud Alibaba及分布式事务Seata,基于Spring Cloud Greenwich及SpringBoot 2.1.7。20篇文章,篇篇精华,30个Demo,涵盖大部分应用场景。mall-swarm项目中所用到的Spring Cloud技术该教程基本都涵盖了,学习该教程可以为学习mall-swarm项目打下良好的Spring Cloud基础。 项目地址:https://github.com/macrozheng/springcloud-learning 学习mall-swarm 当我们学习了《mall学习教程》和《Spring Cloud学习教程》之后就可以着手学习mall-swarm这个项目了。首先需要的就是按之前的教程把项目跑起来,然后进行源码的学习,相信有了学习上面两套教程的基础,搞懂源码并不是什么难事。下面提供下mall-swarm的部署教程: mall-swarm在Windows环境下的部署 mall-swarm在Linux环境下的部署(基于Docker容器) 微服务架构下的自动化部署,使用Jenkins来实现! […]

龙生   18 May 2021
View Details

我常用的IDEA插件大公开,个个是精品!

总结了平时工作中常用的12款IDEA插件,后端和前端的都有了,附上我的使用技巧,看完之后开发效率杠杠的!

龙生   18 May 2021
View Details

Github标星34K+Star,这款开源项目助你秒建Git服务!

Gogs简介 Gogs是一款极易搭建的自助Git服务,使用Go语言开发,只要Go语言支持的平台它都支持,包括Linux、Mac OS X、Windows以及ARM平台。Gogs对系统硬件要求极低,你甚至可以在树莓派上搭建它。 项目地址:https://github.com/gogs/gogs 安装 Gogs在Docker环境下的安装非常简单,只需要两个命令即可,推荐使用该方式来进行安装。 首先我们需要先下载Gogs的Docker镜像;

下载完成后使用docker run命令即可运行服务;

这里我们说下命令中值得注意的地方,10022对应的是Gogs的SSH服务端口,10080对应的使用Gogs的HTTP服务端口,我们还将容器的数据目录挂载到了宿主机的/mydata/gogs目录下,这样就算我们重新创建容器数据也不会丢失。 配置 安装完成后,我们第一次访问Gogs服务会显示一个设置页面,访问地址:http://192.168.5.19:10080/ 数据库设置,这里我们直接使用内置的SQLite3数据库即可,使用其他的需要自行搭建数据库; 应用基本设置,主要修改域名、SSH端口号和应用URL即可。 使用 注册 配置好以后会直接跳转到登录界面,首先注册一个帐户; 注册完成后,登录即可进入控制面板页面。 创建仓库 直接使用我的仓库右侧的加号即可创建仓库,简单设置下仓库名称和可见性来完成创建; 创建成功后直接使用克隆地址即可克隆该仓库; 我们可以直接使用IDEA的Git检出功能; 检出完成后,加入我们的代码直接提交、推送,在Gogs里面就可以看到我们提交的代码了。 工单管理 这里的工单管理,有点类似Github上面的Issue的功能,我们可以通过创建工单按钮来创建; 输入我们的标题、内容和标签以后即可创建; 创建完成后显示效果如下。 添加用户 有时候管理员需要新建一些帐户来协作开发,此时我们只要点击头像->管理面板->用户管理即可打开用户管理界面; 然后点击创建新的帐户,输入相关信息即可完成创建。 管理协作者 创建完成后,我们可以在仓库页面的仓库设置中打开管理协作者功能; 之后通过输入协作者账户,点击增加新的协作者并设置好权限即可,这样协作者就可以访问并向该仓库提交代码了。 迁移外部仓库 Gogs还提供了从外部仓库迁移代码的功能,通过头像左侧的加号,然后选择迁移外部仓库即可; 这里以迁移Gitee上的mall项目为例,项目地址:http://gitee.com/macrozheng/mall 迁移成功后就可以在Gogs里面看到mall项目了! Gogs VS Gitlab 之前有写过一篇《10分钟搭建自己的Git仓库》,使用的是Gitlab,下面对比下Gogs和Gitlab在安装使用过程中的优缺点,仅代表个人观点。 比较方面 Gogs Gitlab Docker镜像大小 44MB 836MB 启动速度 很快,几秒 很慢,机器配置不好要10分钟 配置要求 很低,树莓派都可以 很高,吃内存,吃CPU 访问速度 够快 机器配置好也还可以 功能 功能较少 功能很丰富   from:https://mp.weixin.qq.com/s/WYHuAvN1pt_TGkBVWBnPSA

龙生   18 May 2021
View Details

再见 Jenkins !几行脚本搞定自动化部署,这款神器有点厉害!

摘要 在开发或生产环境中,我们经常会搞一套自动化部署方案(俗称一键部署)。比较流行的一种就是Gitlab+Jenkins实现方案,不过这种方案占用内存比较大,没有个8G内存,很难流畅运行,而且部署起来也不快。最近发现一款神器Drone,轻量级CI/DI工具,结合Gogs使用内存占用不到1G,几行脚本就能实现自动化部署,推荐给大家! Drone简介 Drone是一款基于容器技术的持续集成工具,使用简单的YAML配置文件即可完成复杂的自动化构建、测试、部署任务,在Github上已经有22K+Star。 Gogs安装 我们将使用轻量级的Gogs来搭建Git仓库,这里只是简单说下安装步骤,具体使用可以参考《Github标星34K+Star,这款开源项目助你秒建Git服务!》。 首先需要下载Gogs的Docker镜像;

下载完成后在Docker容器中运行Gogs;

Gogs运行成功后,访问Web页面地址并注册账号:http://192.168.5.78:10080 然后将我们的SpringBoot项目mall-tiny-drone的源码上传上去即可,项目地址:github.com/macrozheng/… Drone安装 接下来我们安装下Drone,不愧是基于容器的CI/DI工具,使用Docker安装很方便! 首先下载Drone的Server和Runner的镜像;

这里有个Server和Runner的概念,我们先来理解下; Server:为Drone的管理提供了Web页面,用于管理从Git上获取的仓库中的流水线任务。 Runner:一个单独的守护进程,会轮询Server,获取需要执行的流水线任务,之后执行。 接下来我们来安装drone-server,使用如下命令即可;

  这里的配置参数比较多,下面统一解释下; DRONE_GOGS_SERVER:用于配置Gogs服务地址。 DRONE_RPC_SECRET:Drone的共享秘钥,用于验证连接到server的rpc连接,server和runner需要提供同样的秘钥。 DRONE_SERVER_HOST:用于配置Drone server外部可访问的地址。 DRONE_SERVER_PROTO:用于配置Drone server外部可访问的协议,必须是http或https。 DRONE_USER_CREATE:创建一个管理员账号,该账号需要在Gogs中注册好。 接下来安装drone-runner-docker,当有需要执行的任务时,会启动临时的容器来执行流水线任务;

  这里的配置参数比较多,下面统一解释下。 DRONE_RPC_PROTO:用于配置连接到Drone server的协议,必须是http或https。 DRONE_RPC_HOST:用于配置Drone server的访问地址,runner会连接到server获取流水线任务并执行。 DRONE_RPC_SECRET:用于配置连接到Drone server的共享秘钥。 DRONE_RUNNER_CAPACITY:限制runner并发执行的流水线任务数量。 DRONE_RUNNER_NAME:自定义runner的名称。 Drone使用 让我们来访问下Drone的控制台页面,第一次登录需要输入账号密码(在Gogs中注册的账号),访问地址:http://192.168.5.78:3080/ 此时我们在Gogs中的项目会现在在列表中,如果没有的话可以点下SYNC按钮; 接下来我们需要对仓库进行设置,将仓库设置为Trusted(否则Drone创建的容器无法挂载目录到宿主机),最后点击SAVE按钮保存; 保存成功后会在Gogs中自动配置一个Web钩子,当我们推送代码到Gogs中去时,会触发这个钩子,然后执行在Drone中的流水线任务; 拉到最下面,我们可以发送一个测试推送,推送成功会显示绿色的√; 此时我们在Drone中发现其实流水线执行失败了,那是因为我们在脚本中引用了Secret中的ssh_password; 在仓库的设置中添加一个Secret即可,Secret是专门用来存储密码的,此密码只能被使用或删除,无法被查看; 在ACTIVITY FEED中使用RESTART可以重新执行该流水线,发现已经成功执行。 编写脚本 当我们向Git仓库Push代码时,会自动触发Web钩子,然后Drone就会从Git仓库Clone代码,再通过项目目录下的.drone.yml配置,执行相应的流水线,接下来我们来看看这个脚本是如何写的。 首先我们来了解下在.drone.yml中配置的工作流都有哪些操作,看下流程图就知道了; 再来一个完整的.drone.yml,配上详细的注解,看下就基本懂了!

  run.sh执行脚本可以实现打包应用和运行容器镜像,之前讲过这里就不再赘述了,具体可以参考《我常用的自动化部署技巧,贼好用,推荐给大家!》,运行成功效果如下。 总结 对比Jenkins复杂的图形化界面操作,Drone使用脚本来定义流水线任务无疑更简单、更直观。Drone更加轻量级,内存占用少且响应速度快!自动化部署要啥Jenkins?直接给Git整个CI/DI功能难道不香么? 参考资料 官方文档:docs.drone.io/ 结合Maven使用:docs.drone.io/pipeline/ku… 结合SSH使用:plugins.drone.io/appleboy/dr… 将容器目录挂载到宿主机:docs.drone.io/pipeline/do… 项目源码地址 github.com/macrozheng/… 本文 GitHub github.com/macrozheng/… 已经收录,欢迎大家Star! 作者:MacroZheng 链接:https://juejin.cn/post/6963430116080910367 来源:掘金 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

龙生   18 May 2021
View Details

相同八字的人命运为什么不完全相同

古人说:“每有贫寒之命,生于富贵之家,锦襁绣褓,享用太过。其福不足以当之,则必夭”。这段话是说,一个禀赋了贫寒之命的孩子,如果生在富贵人的家庭,是没有享福的承受能力的,一定会夭折。据此推论,一个禀赋了相同造化的孩子,如果生在贫寒人的家庭,由于没有福禄的耗费,不一定会夭折。“贫寒”一词有问题,既然是贫寒之命,如何可以生在富贵人家呢?既然生在富贵人家,又如何称其为贫寒之命呢?这是传统命理的思维方式,认为禀赋与命运是惟一的对应关系。既然同一种禀赋,可以处于富贵与贫寒两种状态之下,那么,禀赋与命运就不是惟一的对应关系。 由此看来,同样一种禀赋,具有某种同样,或者大致相当的福报。因为所处的家庭环境不同,对其福报的“消耗”也不同,从而命运的过程和状况也不同。这种理论应该可以推广到所有的命理分析中去。 下面的案例来自于纪晓岚的《阅微草堂笔记》,袁树珊在《中国古代命理探源》中也有摘录。 “按推算干支,或奇验,或全不验,或半验半不验;余尝以闻见最确者,反复深思,八字贵贱贫富,特大概如是,其间乘除盈缩,略有异同。无锡邹小山先生夫人,与安州陈密山先生夫人,八字干支并同。小山先生官礼部侍郎,密山先生官贵州布政使,均二品也。论爵,布政不及侍郎之尊;论禄,则侍郎不及布政之厚,互相补矣。二夫人并寿考,陈夫人早寡,然晚岁康强安乐;邹夫人白首齐眉,然晚岁丧明,家计亦薄,又相补矣。此或疑地有南北,时有初正也”。 显然,纪晓岚提出了两个重要的概念:一是命理“贵贱贫富,特大概如是”;另一是“乘除盈缩,略有异同”。两位夫人具有完全相同的禀赋,所以她们具有相同的福报。由于后天的差异,二人在寿元、子嗣、钱财以及丈夫的爵禄方面,明显存在互补现象在起约束作用,有所得必有所失。 我们可以做一个理想实验:两位夫人的时辰一样,理论上可以看成是一个人。因为命理是关于时辰分析的学说,既然是同一个时辰,那幺,理论上她们是一个人。她们的命运,可以看成同一个人在不同的环境下的不同过程。这表明人的命运在后天是可以有差异的,这种差异并非全部由先天来决定,而是后天的环境,或者是自己的选择来决定。例如,如果选择爵,则可能付出禄的代价;选择子,则可能付出寿的代价,等等。每一个人在后天都在一定程度上的选择权利,从而,理论上说,每一个人都可以缔造自己的命运,自然,人们的命运就可能偏离传统命理的逻辑过程。 为了考察地域和时间对命理的影响,纪晓岚又例举了案例如下:“余第六侄与奴子刘云鹏,生时只隔一墙,两窗相对,两儿并落蓐啼。非惟时同刻同,乃至分秒亦同。侄至十六岁而夭,奴子今尚在。岂非此命所赋之禄,只有此数。侄生长富贵,消耗先尽;奴子生长贫贱,消耗无多,禄尚未尽耶?盈虚消息,理似如斯,俟知命者更详之”。纪晓岚的记述,是罕见的命理案例:不但同辰,而且同地。此二人的命运毫无相同之处。说明相同八字的人拥有大致相当的福报,因为所处的家庭环境不同,对其福报的“消耗”也不同,从而命运的过程和状况也不同,这种理念可以对他们的命运作出合理解释,而且只能如此。这就是所谓“全不验”的情形。 下面我们来建立一个新的模型。假定存在一个常数,是量的概念。每一个人都拥有一个这样的量值,自然,相同的禀赋拥有相同的数值。这是可以接受的假定。我们换一种表述;假定这是天地给予每一个人的规定。依照这种描述,我们可以尝试建立命理模型如下:命理常数=妻+财+子+……+禄设:命理常数为C,妻为XQ,财为XC,子为XZ,禄为XL,寿为XS,其它为XX, 有:C=XQ+XC+XZ+XL+XS+XX 以上是一个六要素命理模型,前提是:X系列是可变因素,并假定X系列之间是简单线性关系。这样就可以解释一系列传统命题: 1,“吃亏是福”。按照命理模型理论的解释, “获得”是命理模型的消耗指标,而“吃亏”则正好相反,。例如,抑制木炭的燃烧速度,则必然延长它的燃烧寿命。由于命理常数的存在,“吃亏”所产生的某些要素值的减少,必然导致其它要素值的增加。这里所谓的“福”,是指的某种属性的转移,而不是总量的增加。命理与宿命的根本区别就在于,宿命否认这种转移的可能性,而命理则肯定它。人的生命的积极意义,在于让这种转移更具有价值。 2,“破财免灾”。按照五行生克理论的解释,“灾祸”是一种客观现象,也是一种必然现象。宿命的观点认为灾祸是不可避免的过程,然而,依照命理模型理论的解释,灾祸虽然不可以避免,但却具有转移的可能性。“灾祸”是某种命理要素的一种值的改变,通过将这种值的改变,转移到钱财方面,也就是“富”的减值过程,则可以达到某种消灾的目的。 3,“贪财坏印”。以公职人员为例:如果一个公职人员的命理常数一定,但在钱财上过于贪婪,即所谓在“富”上获得过多,则必然拖累其在“贵”上的命理数值,也就是降职。严重的甚至会损害到“寿”的数量,或者损害到其它的命理要素方面,这是显然的道理。等等。 命理模型需要一个完整的命理要素集合。古代命理常用的要素前面已经提及,它们是:妻、财、子、禄、富、贵、福、寿、父、母、兄、弟。其中“富”与“财”,“禄”与“贵”相互重迭,福可代指荣辱、顺逆,较为抽象。 《子平真诠评注》沉孝瞻:“大凡命中吉凶,与人愈近,其验益灵。富贵贫贱,本身之事,无论矣,至于六亲,妻以配身,子为后嗣,亦是切身之事。故看命者,妻财子禄,四事并论,自此之外,惟父母身所自出,亦自有验。所以提纲有力,或年干有用,皆主父母双全得力。至于祖宗兄弟,不甚验矣”。 参照各种理论,我们有: 命理要素集:妻、财、子、禄、福、寿、父、母、兄、弟……。 当然,专业人士会全面理解各要素的含义。例如兄弟包含姐妹的内容,父母包含叔伯姨姑的内容,寿包含身体、疾病、夭折的内容,妻包含妾、情人、异性的内容,等等。前面已经们给出过一个包含六要素的模型,是理论模型的简化版本。由于要素与要素之间的属性不同,例如寿的单位是年,财的单位是元,子的单位是个,所以,要素之间具有独立性。 模型右边的要素之间是互为因果关系,或函数关系。当某一个要素发生变化,则必然导致其它的要素进行适当的调整,这是命理与宿命之间的本质区别。 命运的展开首先是由命理模型来解释的,而命理要素的展开,是由格局学说来解释的,例如富格、贵格,或是富贵双全格,等等。《渊源集说》:“身弱徒然入格,纵发早亡”。 发,可以理解为发展,指的是在富贵。入格,是具备了富贵条件的意思。身弱,表明日元失令寡助。身弱不胜财官,恃强所得必然招损,这是命理常识。所以说“纵发早亡”。“纵发”,说明命弱时也可以发;“早亡”,则需要付出寿元的代价,这里讲的是富贵与寿元之间的消长,或者说调整和转移问题。 按照传统的命理分析,身弱是不可胜任财官的,也就是说,日元弱的人,理论上是不可能“发”的。《渊源集说》讲“纵发”,则说明命运是可以违反命理常识而产生变化的,这时候,只能用“早亡”来描述。纵发也不一定早亡。因为人一生除了财之外,不光是寿,还有妻、子、禄,等等,可以互相转移。另外,财来财去,正负为零,也不一定伤及寿元,所谓“破财免灾”,就是这个意思。财富厚的人,多资助他人,或捐助些慈善事业,从命理学上讲是有百利而无一害。所谓阴德,无非是讲人的付出,终究对人的总体命运来说,包括宗族,具有隐秘的益处。这种无法指明的回报,人们称之为“阴德”。 《金玉赋》说:“八字无财,须求本分;越外若贪,必招凶事”。无财,是禀赋贫寒的意思。贫寒者求富,也是人之常理。但是,思之太过,则称之为贪。贪则可以突发,那就是“越外”,所以“必招凶事”。贫寒属于命理要素“富”的范畴,贫寒是指“富”的量值低下,这里讨论的是先天获得的“富”的空间数值较小的情况。如果后天不适当地增加自己“富”的量值,必然引起其它要素的调整要求,而且是向下调整。所以说“必招凶事”。“凶事”的对象是泛指,是除了“富”以外的所有命理要素。不当的拓展“富”的空间,必须以降低其它命理空间为代价。 《论兴亡》说:“如有高见明识,知进退存亡之机,而保其身者,虽官禄逢伤,六亲免祸,亦当自己受恶疾而终者矣”。这一段谈的是伤官见官的情形。高明者,说的是知命之人;进退存亡之机,说的是命理要旨。纵然是知命的高人,也不能避免灾祸的降临,只不过可以在财官、六亲、身体和寿元上进行调整和转移罢了。不可避免,不等于是宿命。主动进退,以图存亡,这才是中国命理存在的意义。 《子平真诠评注》原序:“人能知命,则营竟之心可以息,非分之想可以屏”。营竟之心,本是常理。有了营竟之心,人们后天可以奋发图强,实现理想。社会在竞争中,不断拓展人们命运的相对空间。同样的命造,在不同的文明之下,其现实内容是不相同的。换句话说,命理常数在更大的尺度上,是社会文明的函数。非分之心,确不可要。有了非分之心,则命运的调整将失去控制,命理的空间结构将失去平衡,紊乱和崩溃将不可避免。 任铁樵在注《滴天髓.何知章》中说:“倘使富人无子,能轻其财与亲族之中,分多润寡,何患无子哉”?这句话的意思很明显,后天行为的取向可以影响人的命运。轻财与得子。

龙生   17 May 2021
View Details

十天干精粹——戊土

第一讲 平实显精神,坤元合德戊   比方下的戊土。   有人说:“戊土在天为霞、为雾,在地为山峦,也可理解为城墙、厚土。”又说“土无专气,依火以生,霞无定体,借日光以存。知丙火为日,可推戊土为霞。霞与日有关,故无火则土死。”   戊在人身上为皮肤,在体内为胃。胃上接于食道,下通小肠,其主要功能是受纳、腐熟水谷。饮食入口,经过食道容纳于胃,胃有“水谷之海”之称。容纳于胃的水谷,经过胃的初步消化,下传于小肠,其水谷精微通过脾的运化,以供养全身。胃对于饮食水谷的消化功能,称之为“胃气”。胃气对人体生命与健康是很重要的,中医认为“人以胃气为本”,有胃气则生,无胃气则死。胃的功能特点是以通降为顺,所以胃气主降。如果胃失和降,所饮食物及糟粕不能下行,就会出现脘腹胀痛、大便秘结等病症。胃气不降而上逆,则可能引起恶心、呕吐或呃逆、嗳气。戊土就象人的皮肤和胃一样,在外面对全身都有保护和发散功能,在内可以消化饮食之物。胃喜湿怕燥,戊土也一样,喜滋润,太燥则有失功用。   也有人说,戊土在地上,是硬硬的土,像墙壁,像混凝土。可以成就高大的建筑,可以承载万物。但它也有顽固的一面,不可与戊日干的人过于直接的冲突。戊土日主的人常常说一套,背后想的又是依自己原则而行的另一套,要小心不要抵触戊日主生人。   《滴天髓》说:戊土固重,既中且正。静翕动辟,万物司命。水润物生,火燥物病。若在艮坤,怕冲宜静。戊土人,本性厚重,正直无私。戊土人喜静,懒得动。但一当他行动起来,就有一股特别的激情,对周围将产生不小的影响,大致可以改换原有的场面气氛。戊土人喜欢直来直去,无意之中容易得罪别人,这对他的事业前途多会带来负面影响。   围住江湖,堤岸是功不可没。戊土为堤岸,壬水为江河之水,壬水不是过于旺盛的时候,戊土可以起到固水的作用,但壬水过旺,就有冲垮堤岸的危险。所以较弱的戊土,比较害怕壬水的冲击,斯时非伤灾必破财。戊土如长江江畔的土山,在长江不泛滥时,戊土只是一堆石块,不会令人觉得它的重要性,但当长江水涨时,这些戊土便救家救民,不使河水涌入民居。戊土之德便显现出来了。因此在有灾难发生时,戊土日元的人分外易成名。很多知名人物,特别是很多烈士都是戊土日元。   例一, 乾造:辛丑 庚子 戊戌 癸亥   戌亥子丑汪洋之水,戊土为堤岸,但力量薄弱,逢壬年都不顺,或者病痛多,或者破财。平时不好接触,只在朋友危难之际愿意出手。   戊象城墙厚土,是甲木的掩体,又是生长甲木的基础。放在社会上,代表大众群体,冲撞戊土就象犯众一样可怕。任何有生气之物都以戊土为基础,离开戊土,生气就没有支撑。官以民为本,民以食为天,民与食都是戊土的特征物。好官必爱民,爱民如子的官,民必为他所用,此时的官就有生气,可以蓬勃发展。就象甲以戊为财,可以任其所用,任劳任怨,克的太过就象官逼民反,大事不妙。   戊土到处可见,有坤象,厚德载物,普通又而广泛,平凡、朴实、简单,它是万物所依赖的基础。一切生机从那里来,也必将回到那儿去。戊土人很直接,说话没有花言巧语。   戊土人喜欢自由,有懒散的习惯,有时很任性,克服这些弱点才有成才的期望。书曰:“土得金火,方成大器。”戊土遇到金多的时候,就有发泄才华的资本,任性的程度会进一步加剧。如果有火止泄,就不会肆意妄为地乱发泄,此时就有成大器的可能。   例二, 乾造:辛亥 辛丑 戊申 戊午   生时得午火,年月伤官辛金泄秀,其人才华卓著,双博士。   戊是土的本气,己土是田园疏松之土,必要的时候,己土可以变成戊土,如砌墙,垒大坝。 一切戊土的具象都是在打比方,戊土的精神实质是一切高大、厚重、稳固物体或群体的象征。 第二讲 戊土强与弱,体象歌来说   戊土的体象。   前面讲了戊土的精神实质,戊土是高山、大地的象征,一切高大、厚重、稳固之类的基础事物,都可以用戊土来表达。今天的内容是戊土的体象,先看一个例子。   乾造:壬午 癸卯 戊寅 壬戌(1942年生人)   大运:甲辰 乙巳 丙午 丁未 戊申 己酉 庚戌   大致是二十年前的一天,我带着这个八字去请教师父。以前师父是用身太弱的旺衰状态来看他的兄弟姊妹数,一口断定是同胞共有十二胎,损五存七。事实正是如此,这就让我深信此戊土属于弱的状态。然而,就身弱而言,少年行甲乙运理当不会好,但事实上初运却并不坏,这又是为何呢?那天,天气很清爽,师父白天人多,不怎么理我,我又是他新收的弟子,要我等。没办法,我只好耐心地等着,直到天完全暗了下来,他还没理我。以前每到下午我都要回家的,即使我不想走,师父也要我回去。他经常说,父母在,不远游。可今天却没要我走,我心中十分高兴,从吃晚饭,到饭后的洗浴,我表现得特别的温顺体贴,他好象体会到做师父的一种快乐。更让我喜出望外的是,这天晚上居然让我与他同塌而睡,我明显有点受宠若惊的样子。躺在床上,我摸了摸他的伤口,满口都是关心他的话,直到师父主动引我言归正传为止。   “身旺,宜抑宜泄;身弱,喜生喜扶,这是一般的法则。”他说到主题了,我就特别地安静,生怕听漏了一个字。   “可是,这八字里面有一个关键点,我要是不说,你们就很难明白。” “你记下这首诗:   戊土城墙堤岸同,振江河海要根重   柱中带合形还壮,日下乘虚势必穷。   力薄不胜金漏泄,功成安用木疏通。   平生最爱东南建,身旺东南健失中。”   我的记性不错,他念完,我就背给他听了。但我还有许多不明白的,我问师父,“什么叫戊土带合形还壮?”   “这个八字中不是有个癸水吗,戊癸一合,戊土立刻强旺起来了,戊土一强旺起来,就能胜任官杀。戊土爱甲是他的本性,乙是正官星,戊土因合而壮大,当然甲乙运不坏。”   师父那晚讲了许多天干的特性,虽然当时好多地方不明白,但这个戊土带合形还壮,确实给我启发很大。   戊土有城墙、堤岸之称,皆言戊土厚重,振江河海,大有作为。例如,乾造:癸丑 甲寅 戊子 癸亥  因为戊癸带合形还壮,戊土能任官杀,行身旺七杀运都安然无事,丙戌年财气还很不错。还有两个乾造:1、癸巳 壬戌 戊申 戊午   2、辛亥 辛丑 戊申 戊午 为什么皆要以午火为用?正是因为“力薄不胜金漏泄”,泄气太重,必要火来止泄的原因。   戊土以水为财,无水难有作为,水太重,又会冲垮堤岸或城墙。所以,戊土喜根重而稳固。戊土很弱的时候,怕大水冲堤,但是只要柱中有癸水透出相合,形体就能壮大起来,戊癸之合,有如水泥钢筋结构,其性质变的非常坚硬。   八字中能使戊变弱的不是官杀,而是金的泄气。戊土气不通顺的时候,不可用木去疏通,见癸水是相合;见壬水,是冲撞;戊不通气,还是用金。只是用金须防泄气太重,此正是“力薄不胜金漏泄,功成安用木疏通”的意思。戊土生来喜欢木与火,行东南方运多数能发达,但身太旺,再行南方运,也容易失去中和平衡。正所谓:平生最爱东南建,身旺东南健失中。 第三讲 坐艮怕逢冲,从强慎言贵   戊土的气势。   戊是阳干,阳干都有气势。戊土的气势是趋向于静、稳固、牢不可破。戊土固重,既中且正。静翕动辟,万物司命。戊土气势蓬勃,静如铜墙铁壁,动则雷霆万钧。水润物生,火燥物病。若在艮坤,怕冲宜静。戊土在人体内代表胃,喜湿,怕燥,太干燥则胃气不和,自然生病。大地中的戊土也是如此,高山大漠只要有水,就能生长植物,种植庄稼,无水则是不毛之地。有用的戊土必须见水,有水就能生木,木又可以稳固水土。戊土总的气势是要稳固,坐艮坤(是戊寅和戊申)都有不够稳定的兆头,遇上金木交战或寅申相冲或相刑,戊土就有大厦倾覆之危。   例一 坤造:丙午 甲午 戊戌 丙辰   此女先是难结婚,后来好不容易结婚了,却一直不生孩子。原因就是戊土太燥,辰中癸水被冲坏,一片火炎土燥。癸水是妇女生育的根本,癸水严重受伤,生育的机能就失去了。也因时逢辰土,干透甲木,此女并非无用之人。   上面是说戊土的总体气势,前面讲过“阳干从气容易从势难。”戊土也一样,戊土只要见一点火,就有了依靠,火是戊土的生气,其它金水木的气势再旺,它也从气不从势。也就是说,有火在局,戊土再弱,也只能作太弱或偏弱看。若要它从,局中无火是一个先决条件。   例二 乾造:庚子 戊寅 辛酉 庚子   月干戊土得遇寅中丙火,丙火是它的生气,戊土虽然弱,但依然是从气不从势。戊土为印星,代表其母,全局看,丙的环境很差,果然母亲一生风花雪月,劳苦奔波。为留下好名声,放弃了很多的富贵。目前看,体质很差,恐难长寿。假如丙不起作用,戊土就从其它旺势了,此时的丙火相反要作环境很好来论,那时其母则是富贵有寿。   例三,乾造:辛丑 庚子 戊戌 癸亥 […]

龙生   17 May 2021
View Details