MyException - 我的异常网
当前位置:我的异常网» 编程 » 小弟我的编程之路(十三) 论思路与技术

小弟我的编程之路(十三) 论思路与技术

www.MyException.Cn  网友分享于:2014-06-13  浏览:0次
我的编程之路(十三) 论思路与技术

        这次回来,项目组人走了一大半,都出差去了,我也就照着请假之前强哥给我的学习技术清单来学习吧:AngularJs,bootsrap,smartadmin,html5,css3,一大堆的前台技术,哎,慢慢学吧,等学好了这些前台技术,以后还可以多赚些外快,或者为以后的创业积累一些技术资本。不过,看这些真心枯燥,不过看着老外搞得那些绚丽的网站,心理不得不佩服呀!

        这些天来了一位新同事,还是我那个项目组的,一开始看外貌我还以为是社招的,谁知道和我一样是个应届毕业生,华农的,洪哥一直强调要我们俩竞争意识,我也没怎么放在心上。后来他找我帮他装oracle客户端,配置myeclipse的DB browser,还问我一些问题,不过我就当真如他说的“我看了好多书,操作方面缺乏一些”吧,不过他有一点我不太喜欢,就是很喜欢抱怨,总是说公司太坑上不了外网,说看ext文档看的要死···哎,兄弟,都是这么过来的好不好,淡定一些···希望真如他说的那样,以后可以和他多请教一些“学术问题”···

         部门副经理洪哥看我一直在自学,就给我一项任务:将word、excel中的特定字符全部替换为输入字符,形式不限,可以c/s,也可以b/s。我自己回去想了一想,首先想到要lucene建立索引,根据关键字进行查找,再高亮显示,像word的查找功能一样,进行替换。于是连忙百度了一个c/s架构的类似于word的查找替换功能的例子,第二天再去问洪哥,发现原来自己搞错了需求,原来功能是要选中的文档中匹配的字符全部替换,可以多组进行替换。

         根据需求再次想了一下:这样就不用lucene建立索引了,直接replaceAll,现在的关键是如何修改word与excel文档,并且一次性选择多个文档。这两个问题纠结了好久,知道poi包是可以处理office的,但是以前只是提取纯文本,现在要修改文本,所以只好百度,终于找到了相关的例子,但是对文档格式的有局限性,docx会出错;再来是文档的多个选择,一开始不想用其他jar包,直接用jsp+servlet处理,但是苦于每次的file的input只能选择一个文档,这还好,可以用js的动态添加element来解决,但由于浏览器的安全性考虑,不能直接获取选择文件的全路径,这可惨了,不能直接在源文档上进行修改,必须上传呀,这样也倒好,可以用swfupload进行多文件上传,效果比较好。经过一番思路的修改和反复测试,终于有了比较通顺的、可行的思路:用swfupload进行上传到一个临时文件夹中,上传成功后表单提交成组的字符与替换字符,遍历临时文件夹下的文档并查找替换,另存到特定文件夹下,将临时文件夹删除。代码也都实现了,但是有以下局限:文档格式仅限于doc与xsl,对于替换后字符包含源字符的会卡死(poi包中Range.replaceText()的bug)···

        给洪哥看,洪哥又提了一些需求,成组的字符与替换字符要通过配置文件获取,可以动态增加或者删除字符。这些都不是什么大问题,做了上面那个,自己在页面的js方面的确花了很多功夫,看来前台真的不好搞呀!

       总结:完成一项功能,思路是最重要的,很多代码网上都有,思路正确了可以省去不少麻烦,防止做到一大半因为一个细节无法攻破而重头开始做,同样,人活着也是,尤其是我们年轻的时候,当我们不知道怎么去选择的时候,拥有良好的、可行的思路会决定你的下半生。

       到现在完成了三项任务,一个编码转换器,一个基于ext的基础管理系统,还有一个就是上面说到的字符转换器,因为公司的环境,无法与大家分享源代码,实在惭愧···

        

文章评论

我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
10个帮程序员减压放松的网站
10个帮程序员减压放松的网站
为什么程序员都是夜猫子
为什么程序员都是夜猫子
Java程序员必看电影
Java程序员必看电影
聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
鲜为人知的编程真相
鲜为人知的编程真相
我是如何打败拖延症的
我是如何打败拖延症的
总结2014中国互联网十大段子
总结2014中国互联网十大段子
一个程序员的时间管理
一个程序员的时间管理
中美印日四国程序员比较
中美印日四国程序员比较
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
如何成为一名黑客
如何成为一名黑客
程序员都该阅读的书
程序员都该阅读的书
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
初级 vs 高级开发者 哪个性价比更高?
初级 vs 高级开发者 哪个性价比更高?
什么才是优秀的用户界面设计
什么才是优秀的用户界面设计
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
“肮脏的”IT工作排行榜
“肮脏的”IT工作排行榜
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
程序员的鄙视链
程序员的鄙视链
我的丈夫是个程序员
我的丈夫是个程序员
程序员应该关注的一些事儿
程序员应该关注的一些事儿
程序员的一天:一寸光阴一寸金
程序员的一天:一寸光阴一寸金
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
代码女神横空出世
代码女神横空出世
老程序员的下场
老程序员的下场
 程序员的样子
程序员的样子
每天工作4小时的程序员
每天工作4小时的程序员
写给自己也写给你 自己到底该何去何从
写给自己也写给你 自己到底该何去何从
漫画:程序员的工作
漫画:程序员的工作
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
那些争议最大的编程观点
那些争议最大的编程观点
程序员和编码员之间的区别
程序员和编码员之间的区别
程序员必看的十大电影
程序员必看的十大电影
编程语言是女人
编程语言是女人
5款最佳正则表达式编辑调试器
5款最佳正则表达式编辑调试器
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
程序猿的崛起——Growth Hacker
程序猿的崛起——Growth Hacker
10个调试和排错的小建议
10个调试和排错的小建议
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有