V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  rizon  ›  全部回复第 21 页 / 共 51 页
回复总数  1001
1 ... 17  18  19  20  21  22  23  24  25  26 ... 51  
2019-12-26 20:38:41 +08:00
回复了 rizon 创建的主题 程序员 spring-best-practices 总结了下这几年 Spring 开发的一些优雅实现
@Sunyanzi #32
aop 缺少可控性,aop 是针对一个可以模糊匹配的 path 去做拦截的,但是 path 本身是没有意义的,也就是说只有写这个代码的你知道他的业务上的意义。我个人看来,这就是大忌。 如果误伤了咋办,你了解代码你不会误伤,但是不能避免后来人在缺少对代码的足够理解的情况下被误伤了。
而且后续的人维护这类代码还是很头疼的,不敢乱动。
但是拦截器就是针对某个业务场景去拦截,天然意义上就不会出现这种情况。

换言之,拦截器是低耦合的,代码侵入性低。
2019-12-26 15:23:17 +08:00
回复了 rizon 创建的主题 程序员 spring-best-practices 总结了下这几年 Spring 开发的一些优雅实现
@chendy #28 因为是预编译的,会生成实现类在`target/generated-sources/annotations`文件夹,所以有时候是需要 clean 一下的
2019-12-26 15:20:32 +08:00
回复了 rizon 创建的主题 程序员 spring-best-practices 总结了下这几年 Spring 开发的一些优雅实现
@BoomMan #26 感谢支持哈,我看了下 pr,您提的内容有些重了,这毕竟是个 demo 程序哈,
另外就是参数校验的代码我其实也在整理精简,所以冲突了哈,抱歉哈,嘿嘿😁。
现在已经 push 了,您也可以参考一下,基本都是一样的,但是我加了一个错误信息的国际化处理,也就是`ValidationMessages.properties`配置错误信息。
后面我还会提交一些自己写的参数校验注解,比如枚举校验等

再有就是您提到的 @ConfigurationProperties 在 yml 配置里没有提示的问题,
虽然采用编写 META-INF 可以解决,不过 idea 其实是有提示的,引入了`spring-boot-configuration-processor` 之后在 idea 的设置里 'Annotation Processors' 中勾选为 enable 就可以了,每次 build 的时候会更新提示,这和 lombok 一样都依赖这个 processor 的处理
2019-12-26 12:08:44 +08:00
回复了 rizon 创建的主题 程序员 spring-best-practices 总结了下这几年 Spring 开发的一些优雅实现
@m1862897 #20
hutool 确实提供了很多好东西
mapstruct 也有他的优势,mapstruct 工作原理上完全不同,是预编译的方式,虽然缺少了动态执行的灵活性,但也确保了可靠性,而且效率上也是高于反射的。
我用 mapstruct 的原因就是它公开透明、可控。而且也提供了一些可以做复杂映射的配置。
不要因为代码写起来复杂不够简洁就放弃。

当然有些场景下我也会用 beanutils,还是看场景吧,融会贯通嘛
2019-12-26 11:41:38 +08:00
回复了 rizon 创建的主题 程序员 spring-best-practices 总结了下这几年 Spring 开发的一些优雅实现
@FanError #11
@Allianzcortex #17

我在项目中一直用的是拦截器,在我整理的这个项目里也写了一个简单的 auth 实现,特点是解耦。
aop 是针对方法的,拦截器则是针对 http 请求的,我们的权限认证都是针对接口请求的。

我们的权限认证服务是单独开发的,采用 sdk 的方式从公司的私有 maven 仓库分发到各个组件的服务,使用方只要把 sdk 中的拦截器注册进来就可以了。
这样代码侵入最低,当然这种方式也有他的适用范围,各个项目的开发都有自己的不同处境,aop 也有它独有的优势。
2019-12-26 11:28:04 +08:00
回复了 rizon 创建的主题 程序员 spring-best-practices 总结了下这几年 Spring 开发的一些优雅实现
@palmers #15 感谢支持,Spring 的 IOC 方面的东西 我会好好整理一下哈,
spring boot 用的是 2.1.X,本来想用的 2.2 的,不过考虑到之前项目一直用的 2.1,那时候 Spring cloud 的兼容 2.2 版本的 Hoxton 还没有出,所以还是继续用 2.1 吧
2019-12-26 11:19:57 +08:00
回复了 rizon 创建的主题 程序员 spring-best-practices 总结了下这几年 Spring 开发的一些优雅实现
@Sunyanzi #6 java 写代码就是要把事情说清楚,说的有规矩有框子,虽然不够潇洒自由,但对于企业级的项目,可维护性、健壮性才是最重要的,避免技术负债。所以 aop 在可维护性上是低于拦截器的,而且因为 AOP 的手脚太长,容易被错误使用带来无法预期的和难以排查的问题
2019-12-26 11:14:18 +08:00
回复了 rizon 创建的主题 程序员 spring-best-practices 总结了下这几年 Spring 开发的一些优雅实现
@Sunyanzi #6 嗯,还有 aop,把这个给忘了,回头补上 aop 的使用,
个人觉得拦截器是专门专事,aop 则就是更粗暴的去解决了问题,有失优雅
我只拿 aop 写过打印方法执行时间的日志,和自定义注解的处理。今天找个时间加上哈
2019-12-25 21:55:21 +08:00
回复了 rizon 创建的主题 程序员 spring-best-practices 总结了下这几年 Spring 开发的一些优雅实现
v 站大佬太多,其实怕大家笑话,有些不太敢发帖的,唉~~
我想问下,这种形式集资的资金会不是应该被什么机构监管然后冻结不可作为流动资金使用吗?
如果是这样的话,他们搞预付款又不能拿来用能带来多大利益?
@Raymon111111 #15 有印象了,以前看过这个算法。。。不过现在都忘了
2019-12-24 20:30:11 +08:00
回复了 hvboekml 创建的主题 分享创造 零负担接入扫码登录
@rizon #14 我猜测是,在我没有授权用户信息给你的 app 的时候你仍然可以用,但是关联不到个人的信息了
2019-12-24 20:23:30 +08:00
回复了 hvboekml 创建的主题 分享创造 零负担接入扫码登录
我用 hamibot 试了下,扫码后直接显示个贴图文字登陆成功,,,也不给授权就直接卖 token 了,,,这也就罢了

我没点确定,本来以为不会登陆,可过了似乎是半分钟? hamibot 还是悄悄的就登陆进去了,但是在你的 app 的设置-授权管理里面却是空的,没有 hamibot ?这是什么情况
2019-12-24 20:19:35 +08:00
回复了 hvboekml 创建的主题 分享创造 零负担接入扫码登录
@bagel #1 说到这个我就想到最搞笑的,看视频的时候的时候好多广告都是扫描二维码,尼玛现在电脑看视频的有几个?我拿着手机看视频你让我扫描二维码。。。。

不过话说回来,这也是 iOS 的缺陷,安卓阵营的手机,很多都内置了直接识别屏幕上二维码的功能。。。
2019-12-24 16:01:54 +08:00
回复了 ddeef 创建的主题 分享创造 Windows 上第一款全局轮盘菜单软件(鼠标党进)
我想到了 mhw 怪猎 世界 ,
我觉得 mhw 的在道具使用的手柄交互界面上真的是这么多年以来的少有的革新了,虽然用起来还是不如键盘便利吧,毕竟争分夺秒。
2019-12-24 15:58:45 +08:00
回复了 rizon 创建的主题 奇思妙想 宇宙中存在没有引力的地方吗
@jybox #9 位置是一种信息,也可以理解为状态,无论用什么方式改变位置,都是改变了宇宙的状态,但是如果势能在改变前后是一致的,那么改变状态这件事消耗的能量去哪里了?
@gwy15 #2 厉害了,还真有,我看看哈
2019-12-24 15:08:21 +08:00
回复了 cuixiao603 创建的主题 奇思妙想 一直有个想法,在没有暖气的地方用矿机当电暖。。。
@rizon #39 好像我说的不对,消耗掉的能量转化为其他形式了,最终还是回归宇宙了,无视我说的吧,想错了。
2019-12-24 15:05:20 +08:00
回复了 cuixiao603 创建的主题 奇思妙想 一直有个想法,在没有暖气的地方用矿机当电暖。。。
@echo1937 #20

不太懂,举例子问个问题哈,
我把 1bit 的信息从 0 改成 1,再从 1 改成 0。这是不是做功了,消耗掉能量了,但是这个信息最终的状态却是和最初的状态是一致的,那么我消耗掉能量去哪里了?
整个宇宙中什么都没改变,我却消耗掉了能量?
那是不是说整个宇宙都是一个熵减的过程?宇宙最终就会死去?
2019-12-19 16:00:46 +08:00
回复了 zhihupron 创建的主题 奇思妙想 公司年会抽奖使用 Math.random()函数是否有失公平?
@rizon #43 当然我说的是怎么让抽奖这件事更加有悬念和刺激,

至于公平则是另一个复杂的问题了,

这世界没有不公平的事情!!!!
这世界没有不公平的事情!!!!
这世界没有不公平的事情!!!!

你的一生,你的命运就是这样分配给你的,你去讨论公平本来就没有意义,在想公平之前,先问一下,谁给你的公平?谁来维护公平,所谓的公平永远都是为了维护弱者权益所产生的概念而已。 强弱是大自然的自然存在,难道这也是不公平的吗?这是大自然的基本法则而已。


让我想起另一件事情,我很小的时候这样想过,你本就是不存在的,只是上帝赋予了灵魂,才产生了你,把一个灵魂装在你的身体里,然后又装在另一个身体里,扔在不同的环境里,这个灵魂便在思考不同的事情,所以大家都是一个灵魂,都是一个人而已,我即众生,众生即我。

当然,我半夜下班骑着自行车回家,看着路上豪车的时候就不这么想了。。。。。。活着,怪累,挺不得劲的
1 ... 17  18  19  20  21  22  23  24  25  26 ... 51  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5460 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 30ms · UTC 07:46 · PVG 15:46 · LAX 23:46 · JFK 02:46
Developed with CodeLauncher
♥ Do have faith in what you're doing.