目录

  • 1 概述及环境配置(4学时)
    • 1.1 课程介绍
    • 1.2 基础知识(2学时)
    • 1.3 [T1]环境配置(2学时)
  • 2 MVC(18学时)
    • 2.1 HTML/CSS/JS(2学时)
    • 2.2 JSP语法(2学时)
    • 2.3 JSP内置对象(4学时)
    • 2.4 [T2]JSP实训(2学时)
    • 2.5 M:JavaBean(1学时)
    • 2.6 Servlet(2学时)
    • 2.7 EL/JSTL(1学时)
    • 2.8 Filter(2学时)
    • 2.9 [T3]MVC实训(2学时)
    • 2.10 设计模式(课外)
  • 3 三层架构(12学时)
    • 3.1 JDBC(2学时)
    • 3.2 [T4]JDBC实训(2学时)
    • 3.3 三层架构(2学时)
    • 3.4 数据库连接池(2学时)
    • 3.5 JdbcTemplate(2学时)
    • 3.6 [T5]三层架构实训(2学时)
  • 4 思政专题(12学时)
    • 4.1 信息安全及职业道德
    • 4.2 Ajax数据检验(2学时)
    • 4.3 密码加密(2学时)
    • 4.4 CAPTCHA(2学时)
    • 4.5 Cookies(2学时)
    • 4.6 [T6]安全系统实训(4学时)
  • 5 Framework(12学时)
    • 5.1 Hibernate(课外)
    • 5.2 Mybatis(4学时)
    • 5.3 Spring(4学时)
    • 5.4 SpringMVC(4学时)
    • 5.5 SSM(课外)
  • 6 创新创业专栏
    • 6.1 学生学术论文
    • 6.2 学生开发项目
    • 6.3 大学生创新项目
    • 6.4 学科竞赛获奖
    • 6.5 授权软件著作权
    • 6.6 学生小讲堂
  • 7 资料下载
    • 7.1 开发软件
    • 7.2 开发资源
    • 7.3 帮助文档
    • 7.4 课程讲义
    • 7.5 国家标准
    • 7.6 课外资源
三层架构(2学时)

问题01:三层架构

问题02:DAO设计模式

数据访问对象模式(Data Access Object Pattern)或 DAO 模式用于把低级的数据访问 API 或操作从高级的业务服务中分离出来。

问题03:程序结构示意图

问题04:设计公共DAO接口

public interface GenericDAO<E,PK extends Serializable> {	
	public boolean insert (E data);	
	public boolean delete(PK id);	
	public boolean update(PK id, E data);	
	public ArrayList<E> selectAll();
	public E select(PK id);

}

问题05:设计POJO的DAO接口与实现类

public class User {
	private String username;
	private String password;
        ……
import cn.pzhu.bean.User;

public interface UserDAO extends GenericDAO<User, String>{

}

问题06:设计业务层接口以及实现类

业务层接口

针对业务进行接口设计:参数列表和返回值

业务层实现

  • 依赖于DAO层

  • 实现业务功能

问题07:实现DAO层

1. 获得连接

Connection connection = JDBCUtil.getConnection();

2. 实现CRUD

  • 获得连接

  • 编写SQL

  • 创建命令

  • 执行命令

  • 处理结果

* 返回T
* 返回List<T>
* 返回int或boolean
  • 释放资源

问题08:实现业务层

1. 获得DAO对象

UserDAO dao = new UserDAOImp();
XXXDAO dao = new XXXDAOImp();

2. 实现业务

  • 返回boolean

  • 返回更加详细的信息

  • 返回所需数据List

  • 以“用户注册”为例,业务只需要知道是否注册成功,失败的原因(一个业务)

  • DAO层需要先进行查询,然后再进行插入(两个操作)

问题09:实现表现层

1. 设计JSP页面

以“用户注册”为例

2. 设计Servlet控制器

		PrintWriter out = response.getWriter();
		String username = request.getParameter("username");
		String password = request.getParameter("password");
		Message msg = userService.regist(new User(username,password));
		if (msg.isSuccess()) {
			out.println("<script>alert('"+msg.getMsg()+"!');"
					+ "window.location.href='index.jsp'</script>");
		} else {
			out.println("<script>alert('"+msg.getMsg()+"!');"
					+ "window.location.href='regist.jsp'</script>");
		}

3. 功能测试