Java Web 之8月总结

来源:互联网 发布:矩阵开根号 编辑:程序博客网 时间:2024/06/05 07:07

月考总结:增删改查的速度真垃圾,12点半结束的考试15点半终于调错调完了… 啊 贼垃圾。

总结一下问题:

1) 多表联查的 update方法不熟练,浪费时间;

public interface GoodsDAO {    List<Goods> FindGoodListByStatus(int status);    List<Goods> FindGoodListByDistrict(int districtnum);    int update(Goods g);}
    /**     * 更新 district 以外的内容     */    @Override    public int update(Goods g) {        StringBuffer sql = new StringBuffer("update goods set ");        sql.append("goods_name=?,goods_price=?,goods_count=?,bill_status=? ");        sql.append("where id=?");        Object[] param = {g.getName(),g.getPrice(),g.getCount(),g.getStatus().getStatus(),g.getId()};        int num = executeUpdate(sql.toString(),param);            if(rs!=null){            System.out.println("更新成功!");        }else{            System.out.println("更新失败!");        }        return num;    }
public class Update {    public static void main(String[] args) {        GoodsDAO dao = new GoodsIMP();        Goods goods1 = dao.FindGoodsById(10);        // 根据id获取 goods1的 对象        BillStatus status = new BillStatus(0);        // 设置 BillStatus 对象(为了添加goods的status参数)        Goods goods = new Goods(goods1.getId(),"啦啦",status,100,10,goods1.getTime());        // goods1.getTime()是获取时间,修改方法不需要修改 time,延续本身的 time        int num = dao.update(goods);        if(num>0){            System.out.println("成功!");        }else{            System.out.println("失败了!");        }    }}

2) 后台获取了 getParameter(“id”),但是前台没有写 name,于是报null 异常

<td>商品编号</td><td><input type="text" value="<%=request.getAttribute("id")%>" name="id"></td>

3)在获取 statusList 时,居然脑抽使用了

List<BillStatus> statusList = new ArrayList<BillStatus>();

这个创建的是空 list 啊!!!
应该调用 FindList 的方法:

List<BillStatus> statusList = bill.SFindStatus();

4) 默认订单状态的显示

<td>订单状态</td><td>    <select name="status">    <%        // 获得 statusList        List<BillStatus> statusList = (List<BillStatus>)request.getAttribute("statusList");        // 获得 后台中特定对象的BillStatus 对象        BillStatus mystatus = (BillStatus)request.getAttribute("bill_status");        for(BillStatus s:statusList){        // 如果statusList中 s 的状态数字等于mystatus的状态数字,就选定状态,剩余都没有选中        if(s.getStatus()==mystatus.getStatus()){    %>        <option value="<%=s.getStatus()%>" selected><%=s.getStatusName()%></option>    <%        }else {    %>       <option value="<%=s.getStatus()%>"><%=s.getStatusName()%></option>    <%       }         }    %>    </select></td>

5)要分清是FindByStatus 还是 FindByDistrict

List<Goods> FindGoodListByStatus(int status);List<Goods> FindGoodListByDistrict(int districtnum);
原创粉丝点击