zoukankan      html  css  js  c++  java
  • 二阶段项目总结

    在做项目的这段时间里,发现遇见了好多之前没有预料到的问题,有的时候,因为一个小问题,纠结了好久好久。

    一、项目期间出现的问题:

    1、数据库的分析,建立,这个问题就出现了好几个问题,首先表与表的关系、表中各项的数据类型,整理的并不是很好。

    2、后端的代码,总是出现各种错误,无论是DAO层还是Severlet层,这里面写的时候,并没有用多长时间,但是写完之后的调用,出现了之前始料未及的各种bug,找起来特别的麻烦

    3、DAO层的构建,都是每次需要一个方法的时候,现去添加一个新的方法,导致后期整合的时候,出现了代码冗余 。 好几次,改了前段的代码之后,DAO层里的个别方法,用不上,还不敢去删,因为不知道哪里会不会调用的到。

    4、再说说前端、模板里面的功能其实很多很多,但是我们真正实现的,缺很少很少,导致整个项目显得有点空。

    5、整合的时候,出现了好多的bug,不是这里出了问题,就是那里出了问题,最后调试的时候浪费了太多的时间。

    6、js代码几乎没怎么用,因为都忘得差不多了,每次写出来,总是出现一系列的问题,最后干脆直接就没怎么写。

    7、过滤器,乱码过滤,直接复制的原来的代码,如果要重新手写的话,可能还是写不出来,地址过滤的时候,出现了一个小插曲,卡了我一晚上,也没找到原因,地址是过滤了,但是样式表和JS代码,怎么样都是不执行,最后加了点东西   (虽然不是很明白怎么回事,但是知道是哪里的代码实现的)

    package com.filter;
    
    import java.io.IOException;
    import java.util.*;
    
    
    import javax.servlet.*;
    import javax.servlet.http.*;
    
    
    public class DiZhiGuoLv implements Filter {
    
         ArrayList<String> list=new ArrayList<String>();
        @Override
        public void destroy() {
            // TODO 自动生成的方法存根
    
        }
    
        @Override
        public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2)
                throws IOException, ServletException {
            
            HttpServletRequest request=(HttpServletRequest)arg0;
            HttpServletResponse response=(HttpServletResponse)arg1; 
            
            String s1=request.getRequestURI();
            String s2=request.getContextPath();
            String s3=s1.substring(s2.length()); 
            
             if(s1.contains(".css") || s1.contains(".min.js") ||     s1.contains(".png")|| s1.contains(".jpg")){      //这个判断就是过滤css样式表的
                   
                arg2.doFilter(request, response);
              }
             else{
    
                    if(list.contains(s3)){
                         arg2.doFilter(request, response); 
                    }
                    else{
                        HttpSession session=request.getSession();
                        
                        if(session.getAttribute("adminuser")==null){
                            
                            response.sendRedirect("login.jsp");
                             
                        }else{
                            
                            arg2.doFilter(request, response); 
                        }
                    }
             }
    
            
            
            
            
    
        }
    
        @Override
        public void init(FilterConfig arg0) throws ServletException {
            // TODO 自动生成的方法存根
            String values=arg0.getInitParameter("fangwen"); 
              String[] str=values.split(","); 
              list.addAll(Arrays.asList(str));
             
            
            
    
        }
    
    }
        

    二、项目期间的收获:

    1、从一开始敲代码的速度到最后整合起来的速度比 ,  前期敲代码的速度简直是龟速,找错能力明显提升了很多,好多时候自己能找到一些明显的错误了,知道该怎么去处理错误了。

    2、业务流程实现的不怎么好,但是后台代码和前段页面的结合 ,多少有些感悟了,至少比以前了解页面如何与后端实现交互的了。

    3、整合代码时出现的页面的小bug,可以将核心代码复制出来,其他一样的代码复制过来,确定一下哪里的代码出现的问题。

    4、用了一次ajax,虽然实现的功能很简单,但是对其理解更多了些。

    5、和之前静态页面一样,小组项目之所以叫小组项目,是因为,一个项目并不是由一个人独立完成的,需要的是大家相互之间的沟通,沟通好了,或许你卡住的地方正是别人熟知的地方,可以省去很多时间。

    6、有事找百度,不管是遇见了不懂的单词,或者是不懂的技术,很多时候都可以查得到(虽然偶尔有些搜出来的结果跟我们需要的东西并不是很一致,但是多找找总会有所收获)

    三、项目总结:

    1、还有很多不足的地方,需要巩固,无论是前端,还是后端,经常需要一边查资料一边写。如果可以的话,尽量摆脱这些束缚,真正可以 自己写出来。

    2、需要查资料的时候,一定要确定自己要找的是什么,抓住核心,不然找到的东西,很多都是用不到的,很浪费时间(学会高效的查询资料)。

    3、写代码的时候,一定要认真,很多时候就是因为代码敲错了,或者漏写了或者拼写错误,废了好大劲才找到原因。

    4、变量命名方式需要改一改,有的时候自己都不知道自己写的代码执行的是什么。

    5、注释要多一些,写了之后自己才能知道某块代码执行的是什么

    6、需要再多整理一些以后可能会需要的东西,以后真正需要用的时候,才能找得到。

  • 相关阅读:
    嵌入式移动数据库Oracle Lite
    一生至少应该看的60本书
    似水年华,如梦光阴
    MS SQL Server数据库中合并复制详解
    登录Windows Live Messenger失败,因为服务暂时不可用
    ASCII码表
    写在监考之后
    ASP.NET基本对象
    linux网络命令 vconfig ifconfig
    grep使用
  • 原文地址:https://www.cnblogs.com/zhaotiancheng/p/6481456.html
Copyright © 2011-2022 走看看