最全企业项目落地实战 --- 某省城建厅建筑工人实名制接口模块,细节爆炸

最后

这份清华大牛整理的进大厂必备的redis视频、面试题和技术文档

祝大家早日进入大厂,拿到满意的薪资和职级~~~加油!!

感谢大家的支持!!

image.png

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

项目耗时:7天7夜

天真的以为这项目很简单,就来回调用个接口就完事了,再从数据库读取点数据放进去,这样就完事了,但可不仅仅是这么简单。下面我就念叨念叨这些我遇到的难点

竟然用这么多map

============================================================================

要求:从数据库中读出需要的信息存进map集合中,由于查询条件简单老师简易直接写注解进行数据库操作,读出来后的map集合循环遍历,再将里面的信息依次取出放进TreeMap集合中,最后调用接口

从数据库中读出一个map集合,原本想直接就放进去,调用接口,,结果还不能这么用,读出来后还得转成TreeMap集合,再去调用,然后进行for循环读取,最后去调用接口

接口以为只有一个

===========================================================================

很显然不是,每个对应的类都有一个接口,用于调用,分的很详细,有新增,有修改,那个类的那个方法就应该调用那个接口,

一个简单的身份证号,还得AES加密?

=====================================================================================

平时做作业,身份证号根本没处理过就,直接写数字呗,但很显然,真实项目可不许这么做

AES简介

高级加密标准,密码学中的高级加密标准(Advanced Encryption Standard,AES),又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。

为什么要AES加密呢,原来是因为身份证号是一个公民的唯一标示,身份证很隐私,所以需要AES高级加密

进退场日期格式还得要求精确到秒?

===================================================================================

原来是进退场日期是一个工人的考勤标准,所以要精确到秒

Java中有补齐数字的工具

================================================================================

不鼓励重复造轮子,原本我是自己封装了一个补齐3位数字的方法,但老师看后,不可以,有工具一定要用工具,不可重复造轮子

补齐数字方法演示

String,format(“%03d”, “1”);//输出结果001

String,format(“%04d”, “1”);//输出结果0001

开发分为测试环境和生产环境

================================================================================

测试环境:指的就是本地开发然后进行简单测试

生产环境:指的就是项目部署上线后的环境下运行

经过本人经验:测试环境执行没问题的代码,一上线必然出错,也不知道是为啥,还得改错

数组每满20条提交一次,最后一次不足就全部提交

==========================================================================================

这还有门道,直接提交呗,还得分20次不20次的,原来是为了缓解服务器压力,所以每20次执行一次,提高效率

若数据表改变后,那么应该提交接口名称,数据表名,主键名

==============================================================================================

数据表改变就改变,管我啥事,结果老师说不可以,要记录每个表的变化时间,这又是为啥呢,老师说原来是为了记录日志,所以单独开了一个表用于记录表发生变化后就存入该表

要求,数据表发生变化后进行提交数据库新增操作,如果数据表中存在该记录,那么不新增,直接修改

先是封装了一个方法,进行校验是否应该提交还是修改,一个方法解决

老师说,这逻辑错着呢,不应该这样写,给搭建了两个方法,一个用于判断是否应该新增,一个用于判断是否应该修改,在每个接口调用之前,调用该方法看是需要新增还是修改

调用接口还得用Token,秘钥

==================================================================================

token:在计算机身份认证中是令牌(临时)的意思,在词法分析中是标记的意思。一般作为邀请、登录系统使用。

秘钥:秘钥,即密钥**,在密码学中,密钥(key,又常称金钥)是指某个用来完成加密解密、完整性验证等密码学应用的秘密信息。在对称密码学(或称密钥密码学)中,加密和解密用的是同一个钥匙,因此钥匙需要保密。而在公钥密码学(或称非对称密码学)中,加密和解密用的钥匙不同:通常一个是公开的,称为公钥;另一个保密,称为私钥。**

如果暴露在外进行调用交互数据的话,很有可能数据会泄露,项目中必须保证数据的安全性与完整性

原来是为了保密,也提高了安全性

在公司化项目开发中,假期跟甲方联系,甲方依旧回消息

============================================================================================

该项目对接某省城建厅接口,甲方开发人员,夜里11点多了我们老师跟人家联系,人家依旧回消息,体验出人家敬业,公司开发项目,需要问事情的时候,哪怕再晚,只要看见,就应该回,因为涉及到公司利益,需要维护公司利益*

项目开发过程中,全部采用JSON方式传输数据

=========================================================================================

采用JSON传输数据,提交方式均为POST,有严格的要求文档,必须安装文档来写,即便你认为不对

签名signature

==================================================================================

最后

光给面试题不给答案不是我的风格。这里面的面试题也只是凤毛麟角,还有答案的话会极大的增加文章的篇幅,减少文章的可读性

Java面试宝典2021版

最常见Java面试题解析(2021最新版)

2021企业Java面试题精选

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

9744)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

  • 21
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值