SpringBoot项目复盘
项目起始
确定数据库中的表、主键、各个字段及其代表的含义;确立好表与表之间的关联关系; (规范好字段的命名规则)**
按照数据库中表及其字段创建实体类及其属性;规范好命名规则 其中输入框提示的信息我们使用国际化的技术,能够实现页面的语言自由切换
<form class="form-signin" th:action="@{/user/login}">
项目复盘-模型
基于多次复盘的经验汇总,仅以当前工作环境做汇总,供参考。 系统问题定位和解决 需要抓住足够多的证据链,不能臆测代码和运行机制。常用手段有 curl,日志,sentry。 需求项目要建立人员 backup 机制。 系统开发 迁移是迁移,不要做重构,保证功能原样,同时也会降低测试成本。 警惕复制代码的行为,必须知晓你提交代码的逻辑和背后含义。 联调和沟通效率 重大项目和长耗时,需要考虑拉站会或者小黑屋。 能群聊的不要私聊,扩大内容的知晓范围。 并行工作需要分时间块,避免碎片化时间并行。 遇到人力合作问题,需要及时升级到 leader 支持。
前段时间,复盘了一下自己所做的一个项目,完成之后,所有人都觉得收获很大,在这里把经验和做法总结一下。 ? 什么是项目复盘? 项目复盘,不仅能对项目进行一个有仪式感的回顾,还能让参与复盘的人员在项目管理及专业技能方面有所收获和学习,项目复盘以后,会产出一些促进团队和个人改进的实践或者方法,鼓励成员以后去做,能帮助团队和个人将来少走一些弯路 如何做项目复盘? 为项目复盘做好信息输入。 4)个人总结 这是最后一步,每个人说一个参与项目最大的收获或者感受,这是对项目进行到一个阶段做的有仪式感的结束。
如:200.07,表示:200元7分', status'状态:1、未付款,2、已付款,3、未发货,4、已发货,5、交易成功,6、交易关闭 create_time '订单创建时间', update_time 门户 3.10 redis 缓存 3.11 search 搜索 solr 3.12 service dubbo服务接口 3.13 service-impl dubbo的provider 数据访问层 4. 解决办法:使用 jsonp 如果 ajax 请求的控制器返回的就是字符串六或 json 数据,不能访问,可以在一个项目直接访问另一个项目的 js 文件,控制器返回的结果伪装成 js 文件,前端js ajax 就是一个 war 项目 Solr基于apache lucene 自己的项目如何和 Solr 进行交互? 特定的 API 叫做 SolrJ Solr具备数据持久化功能. 电商Ego-项目部署 部署 Dubbo 部署 ego-portal 部署 ego-item 设置虚拟域名 配置 Nginx 负载均衡 使用多个 tomcat, 每个 tomcat 中都部署相同的项目 使用
那么,接下来小傅哥就对整个系统,做一次从需求到技术落地的复盘总结。让大家可以学习到的更多。 文末有加入学习方式。此外在本项目的业务场景底座上,后续将开启新的上线项目,你猜猜会是什么项目! 此项目拆成3个阶段,让大家学习不会有太大压力,如果你着急完成并希望面试,那么完成第1阶段即可编写简历中使用。整体项目预计在3周~4周可学习完成,如果不编写前端预计在2~3周学习完成。 所以就想着那么不如把这样一个项目做成课程项目,既满足我能上线给大家使用,也伙伴学习到真实场景的项目,岂不是一举两得! 项目演示 - 支付 3. 前端监控 - 热力图 4. 后端监控 - Grafana 五、项目大纲 此项目,是按照互联网公司开发项目模式进行落地,逐个分支,逐步迭代完成。 在有了 OpenAi 项目以后,这篇山河图中的项目,都将可以落地。哪怕我想做个拼多多的砍一刀,都可以!那么,在 OpenAi 项目完全收尾后,你觉得小傅哥会启动哪个项目?可以留言评论区哦!
也就是说,有价值的复盘,当然是最期望得到,可是复盘没做好的时候,并非没有价值,而是可能产生负面价值。这是做复盘最值得警惕的地方。 复盘的三大误区 止于问责 偏离目标 遗留隐患 人才流失 止于意识提升 项目复盘,更重要的是整个公司的能力提升,而不是参与者个人能力的提升。 止于错误补救 复盘的准备工作 建设复盘氛围:为参与者提供一个安全且平衡的复盘环境。 梳理错失的机会点:从公司层面的宏观视角看,错失的最可惜的机会点是什么? 因而在复盘中,需要引导参与者注意平衡思考的维度。 第四层是平衡思考深度和行动时间。 很多人做复盘,还没完成全面分析呢,就已经列出了一大串行动点,准备整治了。要知道,复盘不是故障响应,不需要立即止血。 搭建复盘环境,复盘过程控制和整体规划; 需要对复盘的氛围和内容持续做引导与控制 要邀请一组具备不同视角的参与者来参加复盘。不能清一色地邀请研发人员,因为研发人员往往只会从技术视角出发来做深度探讨。
复盘模型 目录 1、复盘的内容 2、复盘的步骤 3、自我复盘 4、复盘他人 5、复盘中的三种角色 6、复盘的两种方法 7、如何判断复盘结论是否到位 复盘是一种贸易术语,通常用于项目或活动结束后 ,对已经进行的项目进行回顾,对经验和教训进行总结。 在实际项目中,往往在生产环境发生重大事故(BUG)等,都要进行复盘。 1、注意记录 2、得出规律加以应用 3、问题,不能无情的复盘自己 4、复盘他人 1、结果 (1)跟风 (2)借鉴 (3)主动出击 2、避免对他人细节进行否定,进而肯定自己 3、对事不对人 5、复盘中的三种角色 c.假设层面 (4)疑问而不是反问 (5)用问题来引导逻辑 3、叙述人 (1)要超脱,站在自身之外看复盘 (2)客观 (3)要真实,完整呈现复盘事件 a.真实 b.完整和层面 c.细节 (4)要虚心,
详细安装步骤见 OpenShift 4企业高可用集群(离线)安装实践 & Troubleshooting记录,本文重新梳理并剔除了部分不适合手机阅读的细节,总结自己对整个过程的认识,并强调一些网上资源未提及或者不够明显的地方 因此该项目的 Troubleshooting 文档和 Issues 是出问题后首先需要搜索确认的地方。 openshift4:etcd 至于为什么 etcd 是一个 tag 未得到文档提示,完全是从部署的 Mirror registry 内部找线索时发现: [root@bastion tags]# pwd /opt/registry/data/docker/registry/v2/repositories/ocp4/openshift4/_manifests/tags [root@bastion tags 总之 OpenShift 4 的离线安装主要折腾在这一步,很不理解为什么不是常规的通过镜像代理获取 Image、而非要通过特定程序来生成 Image?
总结如下: - 简历:求职门槛,每次面试都能改上几句,四个字:尽力完善 - 项目:私下梳理下如何讲整个项目流程能突出你的能力,建议重点突出,脉络清晰 - 交流:面对面的交流,逻辑性强点,懂的问题引申到你确定完全正确的知识点上 ,做到有话讲,有依据 北上广深 4.jpg 经历极少,有限的经历,都不足以具象化分析所面临的问题。 这里有个比较有趣的事件,室友4个人各自专研的不同领域,各有各的事,大家绝大多数时间都待在不同的实验室,但是每到晚上,都能及时的对热门事件侃大山。
4、请用Css写一个简单的幻灯片效果页面 思路:知道是要用css3。使用animation动画实现一个简单的幻灯片效果。 d.hiphotos.baidu.com/image/w%3D400/sign=c01e6adca964034f0fcdc3069fc27980/e824b899a9014c08e5e38ca4087b02087af4f4d3 no-repeat; } 25% { background:url(http://b.hiphotos.baidu.com/image/w%3D400/sign=edee1572e9f81a4c2632edc9e72b6029 g.hiphotos.baidu.com/image/w%3D400/sign=7d37500b8544ebf86d71653fe9f9d736/0df431adcbef76095d61f0972cdda3cc7cd99e4b.jpg 1.id选择器( # myid) 2.类选择器(.myclassname) 3.标签选择器(div, h1, p) 4.相邻选择器(h1 + p) 5.子选择器(ul < li) 6.后代选择器
前言 嗨, 大家好, 我是每年都会开源一些自研且有价值的开源项目的 徐小夕, 之所以开源是为了检验自己的设计是否能满足更多的市场需求, 同时也能弥补自己代码设计能力的空缺, 当然更多的是为了能帮助大家成长 马上迎来的2022年的下半场, 今天刚好复盘一下上半年的开源项目, 在后半年也会抽出时间持续维护. 如果大家想了解或者学习我往期的开源项目, 可以参考我在2021年的开源复盘: 或者在我的github上查找: https://github.com/MrXujiang 好了, 话不多说, 进入我的开源复盘 我们只需要按照如下方式即可快速使用在项目中: yarn add react-cropper-pro import CropperPro from 'react-cropper-pro'; export 好啦, 以上就是今年的开源项目清单, 后面会持续迭代优化, 欢迎有志者一起维护, 如果它碰巧帮助到你了, 也希望能带你一个小小的 star, 支持作者持续迭代~
使用钩子来实现密码加密后存库,我们之前使用的方式 data.Password = BcryptPW(data.Password),替换成钩子后,框架会在写入库前,自动调用钩子函数,来将密码进行加密处理: 加密及钩子在项目中的使用 gorm.Model Username string `gorm:"type:varchar(20);not null " json:"username" validate:"required,min=4,
每一次的项目复盘,对我来说,都像是经历了一场武侠小说的高潮部分,既有惊心动魄的冒险,也有峰回路转的惊喜。 今天,就让我这个“侠客”带着你,一起回味那些项目复盘中的“笑”与“泪”,看看我是如何在这些经历中成长的。 四、复盘与总结:一场“武林大会”的反思项目上线后,我们进行了一次复盘会议。 在复盘过程中,我发现自己在项目管理方面还有很多需要提升的地方。 八、结语:笑对江湖,勇往直前每一次的项目复盘都是一次成长的契机。在这个过程中,我经历了欢笑与泪水、成功与失败。
hi, 大家好, 我是徐小夕, 今天和大家分享一下前端项目重构的一些思考和复盘, 同时也是对自己多年项目研发经验的一个总结. 一. 背景介绍 1. 常用的措施有: 代码格式规范(如eslint) 逻辑语法类型约束(如typescript) 代码规范(如css命名规范OOCSS, BEM等, 文件命名规范, js变量命名复规范等) git 提交规范( 表单详情页支持内部滚动", "4. 个人图片库性能优化", "5. , 不妨评估一下, 是否可以用这些方案为自己项目保驾护航. 4. api请求优化 api 请求优化主要正对这种场景: 页面的渲染依赖于某个或者某些请求的完成, 或者由于某个页面请求量过大导致每次重新进入页面都需要造成一定的性能开销 以上列的场景都是比较常见的, 而且也有很多解决方案, 后期我会一一复盘. 我们在项目重构之前或者立项之前, 这几种情况也是需要重点考虑的, 毕竟都是大工作量的任务. 2.
复盘,也叫复习 为什么需要复习呢 这里不得不说到艾宾浩斯(H.Ebbinghaus遗忘曲线,描述了人类大脑对新事物遗忘的规律,事实也的确如此,如果没有及时的复习,你可能会忘记你新学的知识,从而浪费你未来的时间去重新学习它 ,而复盘则巩固这些知识,且每次用的时间会越来越短,最终会变成习惯。 如何复盘 陈列式:就像记笔记一样,逐条记录下来即可。 联结式:用思维导图或知识树,做一个有关联有体系的总结,从而可以从点到面的掌握知识。 好了,关于复盘基本就这几点了,我们可以循序渐进的来,比如陈列式,但我还是最推荐联结式和输出式,这也是我写博客的原因所在。
gin 文档 https://gin-gonic.com/zh-cn/docs/ 初始化gin项目 设置 go modGOPROXY=https://goproxy.cn,direct go mod init gin-gonic/gin#-u 如果存在则更新 gin目录框架 配置文件的使用 我们使用 .ini 来作为网站的配置文件 文档地址:https://ini.unknwon.io/docs/intro 项目中安装包 :go get gopkg.in/ini.v1 项目根目录新建 config/config.ini ini 的使用分为:分区、键和值 config/config.ini [server] AppMode
这次我们尝试性的使用谷歌前一阵子公布的ksp(Kotlin Symbol Processing),一款专门拿来给Kotlin项目提升注解生成速度的。 Router地址地址如下 由于官方文档中推荐我们使用gradle.kts,所以这次对项目整体进行了升级。 第一步 第一步比较简单,主要是对项目的根目录的Gradle进行配置上的修改,让我们可以顺利的获取到ksp的引用。 如何接入 上面我们就基本完成了ksp的解释器的开发了,那么就先看下如何在项目中使用吧。 总结 希望这篇文章能帮助到各位,其实如果对编译速度要求比较高的项目,或者类似字节这种大厂。
---- 前言 在日常的 JavaScript 项目中,我们最常用到的数据结构就是各种形式的键值对格式了(key-value pair)。 在本菜最近的项目中,我又遇到了这样的烦恼,索性一不做二不休,去对比一下究竟该使用哪一个。 的不同,从多个角度对比一下 Object 和 Map: 用法的区别:在某些情况下的用法会截然不同 句法的区别:创建以及增删查改的句法区别 性能的区别:速度和内存占用情况 希望读完本文的你可以在日后的项目中做出更为合适的选择 JavaScript高级程序设计(第4版) JavaScript: The Definitive Guide (7th Edition)
本周Golang复盘 1.Http请求 http get请求时,通常会拼接url操作,例如:http://xxx.com? 2.4 示例4 既然知道原理是cap不够,那我现在给他分配足够的cap,让其append之后的结果是什么呢?我们来看看不用defer,把append放到unProcess里面会发生什么呢? 4.结构体tag 从配置平台中读取一个yaml结构,然后在代码中使用对应结构体的json格式,比较简单的方法便是定义多个tag。