程序员人生 网站导航

[置顶] 工作总结6.月末总结

栏目:互联网时间:2014-11-18 08:24:44

    9月末已把《社保欠费查询系统》的需求肯定下来,10月份主要用于项目开发。


收获1:"工作"和"学习"中还是有很大区分的

    '工作'中讲求'效力'。由于工期是固定的,所以必须要保证每天完成的任务量。而且有了经理的监工。

    '学习'中倘若没有严格的自我束缚和明确的目标,很难保证'高产',所以我们才有了'今目标',才有了对应的制度!

    '工作'中讲求:有问题不要1个人闷着解决!多问问他人,没准你花半天解决的问题,他人只需要两分钟的时间就能够帮你解决问题。这样酿成的后果就是:实现了功能,却不工作原理。1旦出错就会手忙脚乱,瞎调试。

    '学习'中讲求:遇到问题要独立解决。要学会寻食,而不是等他人喂你。学习的是1种'自学能力'。

    

    '工作'中讲求:分工合作。1个人做1个功能点,做完了以后,拿出来说1讲。以后我们就依照这个固定的方式进行开发,节俭时间。这点充分辩明了:我们正处于1个'知识分享的时期',但是谁又能否定是1种'填鸭式的教学方式呢'?!

    '学习'中讲求:1个人的国度。所有功能都要自己逐一实现。


   要知道'站在伟人的肩膀上'只是第1步,我们需要做的是在此基础上用自己的大脑去消化知识,而不是1味的做个码农。

       

收获2:每天的工作要有'目的性',按计划行事

    就在头几天被经理批评"每天的任务模块已给你规定好了,你需要做的是:'在规定的时间干规定的事!'别做那些没用的事。"

    在拿到1个新项目以后,首先要做的就是根据模块进行分类,然后估算出每一个模块的工作量,然后循序渐进的履行就行了,值得注意的是:前期的准备工作,1定要'细',用流程图来梳理思路。否则后期的开发进程中,会让自己'绕死'的。

    '学习'亦是如此,没有明确的目标,再认真的学习态度也没法抵达终点。


下面来讲1下这个月的工作情况:

    10.01⑴0.07:攻克:导入导出Excel、多表联合查询
    10.07⑴0.12:完成项目功能60%
    10.15      :去中海纪元初步验收项目
    10.16⑴0.19:完成项目功能100%(以上传文件判断逻辑为主)    
    10.20      :温习GCT

    10.21⑴0.27:测试并完善系统中的BUG


收获3:项目中的开发经验


  1、JSP与Action之间传参

    1)JSP->Action

        ①Action中利用ModelDriven,直接使用'model.属性'便可。

        ②Ajax异步回调通过url传递参数,Action中通过request.getParameter获得

        ③JSP中写任1标签,Action中定义此标签的get、set方法后,直接取出

    2)Action->JSP

        ①Ajax异步回调,Action中对data进行赋值,JS中判断

        ②Action把返回结果写在值栈中,JSP中用隐含域获得,JS弹出hidden中的结果

        ③Action中庸JOptionPane.showMessageDialog弹出返回结果。缺点:样式太难看


  2、原生SQL是弱项

   1)分页

        由于项目中采取的是OA框架,只能对单表进行分页。

    在对多表进行联合查询的时候没法套用公共方法,此时可以采取原生sql,传递两个参数(起始页)到达分页效果;或利用hibernate两个参数进行分页setFirstResult(20)设置起始行、q.setMaxResults(10)每页条数 ,到达分页效果。

        同时要注意'分页风格要统1'。

   2)查询   

    如果是复杂的业务查询(如:包括行转列),这里提供两种思路:

        ①写原生SQL,复杂的逻辑转到DAO层控制,返回List<Object>,页面中庸struts2标签直接循环便可。

            需要提示的是:不要局限于只有'实体'中的记录才可以被迭代出!

    ②通过hibernate配置文件可以到达以下效果:只需要查询主表,从表的记录会自动被关联查出。然后新建     1个专门用于界面显示的实体E,把List<Object>中的记录逐一放在该实体E对应的属性中。后界面中循环显     示

    比较而言,①需要扎实的SQL基本功,Action和页面中的代码更简单1些;而②中Action不单单用于转发,不免有些背背了设计的初衷。(这里的'循环显示'指的是利用struts2标签的Iterator迭代。)


  3、上传Excel

    步骤:先把本地File文件上传至Tomcathttp://www.wfuyu.com/server/,从Tomcat中读取文件流,上传到http://www.wfuyu.com/db/。 

    思路:

      ①http://www.wfuyu.com/db/中保存的是:Excel中的记录

      ②http://www.wfuyu.com/db/中保存:Excel文件路径和名称+http://www.wfuyu.com/server/保存文件副本
    解决缓存问题:MyEclipse中project->clean。

  4、验证码

   本质都是利用'随机数',两种:

    1)文本框验证码

        特点:代码简单,直接在JS中判断验证码的正确性,无需传递至Action中

        缺点:由于验证码的本质是text,缺少安全性

    2)图片验证码

        特点:将自动生成的验证码寄存在Session中,后在Action中进行判断。

        优点:安全性


  5、JS和CSS调试

      JS调试主要利用:Firebug工具。

          技能:少->多 , 添加'断点'  ,视察'监控'中的参数变化 , 控制台的毛病信息。

       最重要的还是两点:仔细+耐心。相信1句话:孰能生巧。


  6、Hibernate的映照文件技能

     1对1、1对多、多对1、多对多的映照关系中配置文件的技能

     将在以后的文章中进行总结。


  7、安全控制,控制Action的访问权限

    两种:

      1)在'拦截器'中配置

          若系统比较小,可使用。

      2)在'http://www.wfuyu.com/db/'中读取

          若系统比较大,推荐使用。还要有1个'权限系统'。

    


------分隔线----------------------------
------分隔线----------------------------

最新技术推荐