hibernate开发过程中的问题

在利用Servlet处理增、删、改、读的功能时,有些函数看不懂,能不能解释一下,尽量详细一点。
1、 //显示添加页面
protected void initAdd(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {

    List<Cat> catList = baseDAO.list(" select c from Cat c ");

    request.setAttribute("catList", catList);

    request.getRequestDispatcher("/addCat.jsp").forward(request, response);
}

2、
//向数据库中插入一条数据
protected void add(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

    int motherId = Integer.parseInt(request.getParameter("motherId"));
    String name = request.getParameter("name");
    String description = request.getParameter("description");

    Cat mother = baseDAO.find(Cat.class, motherId);

    Cat cat = new Cat();
    cat.setName(name);
    cat.setMother(mother);
    cat.setDescription(description);
    cat.setCreateDate(new Date());

    baseDAO.create(cat);

    request.setAttribute("msg", "添加 '" + cat.getName() + "' 成功。");
    list(request, response);
}

问题
1、
此两个函数为什么要声明抛出异常,抛出的是那种异常
2、
此两个函数中调用的request的方法作一下介绍,怎样使用帮助文档才能查找到这些函数。