一个对JAVA不熟悉导致实现造轮子的悲惨故事
近期有个项目是要实现一个简单的垂直搜索引擎,在做爬虫这一块时,要分析页面上所有的URL。但有些URL采用的是相对链接地址形式。
如:http://blog.csdn.net/lizhihaoweiwei/article/details/17839481这个页面上有个链接叫做 34342,则这个链接的真实地址为:
http://blog.csdn.net/lizhihaoweiwei/article/details/34342。所以我要写一个函数来完成转换。考虑到如下情况:
同一层 ./
根目录层 /
可能是当前层也可能是独立的URL abc
上一层(上一层的上一层..)等
写出了苦干函数用来处理这些情况,要考虑处理的容错性,写的有点复杂。实现之后有点沾沾自喜的情绪。
最后不小心发现 URL类有几个构造方法,其中一个是 URL(URL,String),初看这个构造方法觉得有些奇怪,第一个参数URL是何意思?再猛的想到,这个可能是参考的URL,后一个可能是相对的链接地址。最终验证果然如此。浪费了几个小时在这个地方,真不划算。
总结:写代码要有跳出来的思想,一览众山小的感觉。有问题不要着急去解决,而是要想清楚怎样去解决。比如,这个是处理与URL相关的,应该先看URL有没有提供这个功能。
一个对JAVA不熟悉导致实现造轮子的悲惨故事相关推荐
- 还在重复造轮子?Java开发人员必知必会的20种常用类库和API
介绍 一个有经验的Java开发人员特征之一就是善于使用已有的轮子来造车.<Effective Java>的作者Joshua Bloch曾经说过:"建议使用现有的API来开发,而不 ...
- 分享一个牛逼的 Java 开源后台管理系统,不要造轮子了!
点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:后端程序员必备:书写高质量SQL的30条建议个人原创+1博客:点击前往,查看更多 还是那句话,重复造轮子是个苦逼 ...
- 别再重复造轮子了,这几个开源 Java 工具库送给你
文章会收录在 JavaNewBee 中,更有 Java 后端知识图谱,从小白到大牛要走的路都在里面. 风筝我作为一个野路子开发者,直到遇见下面的这几个工具库,才知道之前重复造了不少轮子,而且轮子还不一 ...
- 别再重复造轮子了,几个值得应用到项目中的 Java 开源库送给你
风筝我作为一个野路子开发者,直到遇见下面的这几个工具库,才知道之前重复造了不少轮子,而且轮子还不一定有人家的圆.相信跟我一样,没事儿造轮子的人还不在少数,有些人就是对造轮子感兴趣,这个咱也无话可说,但 ...
- java造轮子_RxJava 自己造轮子一
RXJava 造轮子 什么是rxjava? rxjava 是一个响应式编程,为了更好更优雅的处理异步时间,内部实现原理是观察者模式 自己造轮子实现Rxjava 观察者模式核心有两个,一个观察者一个被观 ...
- 程序员到底要不要重复造轮子?
分享一波:程序员赚外快-必看的巅峰干货 关于这个话题,现在这里阐述立场:就公司工作而言,不建议重复造轮子.就个人技术而言,强烈建议造轮子! 程序员圈子里流行这么一句话:"不要重复造轮子&qu ...
- 因为造轮子,我一个月就转正了 | 原力计划
作者 | Baldwin_KeepMind 责编 | 伍杏玲 出品 | CSDN博客 2019年6月,我通过社招入职现在所工作的公司,理论上应该有三个月时间的试用期,只有试用期表现良好我才有机会转正, ...
- 因为造轮子,我一个月就转正了
往期热门文章: 1,<往期精选优秀博文都在这里了!> 2.面试 Google, 我失败了! 3.去掉烦人的 " ! = null " (判空语句) 4.干掉可恶的 &q ...
- 重复造轮子,对此你的看法
关于这个话题,现在这里阐述立场:就公司工作而言,不建议重复造轮子.就个人技术而言,强烈建议造轮子! 程序员圈子里流行这么一句话:"不要重复造轮子".它的原文是:"Stop ...
最新文章
- Facebook发布Detectron2,下一个万星目标检测新框架
- Sqli-labs less 50
- javascript系列之DOM(三)---事件
- echart php mysql简书_echart 踩坑之路
- CLI下的网页浏览器之二——Lynx
- linux 监控网络IO、磁盘、CPU、内存
- elastic安装,简单配置
- 自定义Excel导出简易组件
- Tensor看这一篇就够了!
- 2015年计算机维修记录表,2015年 主题教学记录表.doc
- VB.NET和C#的比较
- wchar_t 和 char
- Citrix XenApp6.5 另类发布文档
- 数据结构课程设计——校园导游
- linux更新war包操作步骤,关于Linux系统下基于Tomcat部署和升级war包的详细过程
- vue使用mavon-editor编辑器,外链保存到本地,且A标签外链和图片外链的处理
- windows无法格式化u盘_U 盘格式化提示 windows 无法完成格式化的解决办法
- Win10屏幕截图自动保存方法
- 笔记本电脑中预装的office产品不小心被删除了解决方案
- JDBC :java.sql.SQLException: Access denied for user ‘root‘@‘localhost‘ (using password: YES) 数据库登录正常