学习主题:JSP和Servlet配合使用
学习目标:
1 掌握 JSP访问原理
2 掌握JSP引擎
3 掌握JSP指令
01登录页面创建和模版介绍和使用
1.1上机练习
1.1.1根据视频讲解添加前段标签快捷插件
1.1.2下载模板资源,熟悉模板中提供资源
02系统页面创建&系统需求分析
2.2 简答题
2.2.1 根据视频,请写出登录功能的实现思路?
项目名称:
卡塞尔学院后台管理
项目需求:
用户登录
用户退出
用户注册
功能分析:
用户登录:根据用户名和密码查询用户信息。查到则登录成功,查不到则登录失败。
用户退出:销毁session
用户注册:将该用户的信息存储到数据库
数据库设计:
创建用户表 t_user
用户 id uid
用户姓名 uname
用户密码 pwd
用户性别 sex
用户年龄 age
出生日期 birthday
SQL语句设计:
用户登录
select * from t_user where name=? and pwd=?
用户注册
insert into t_user values(default,?,?,?,?,?)
代码实现:
查看源代码
2.2.2 视频中要完成的三个功能需求分别是?
用户登录:根据用户名和密码查询用户信息。查到则登录成功,查不到则登录失败。
用户退出:销毁session
用户注册:将该用户的信息存储到数据库
2.3 编程题
2.3.1 根据视频讲解,独立完成主页面模板的套用实现。
03登录Servlet创建和MVC思想
3.1 编程题
3.2.1 根据视频中的需求分析,使用MySQL完成用户信息表的创建,将表创建语句和测试数据SQL作为答案
3.2.2 修改登录页面数据提交的action地址
截图作为答案
3.2.3 创建登录Servlet,并在Servlet完成编码设置,已经登录信息的获取的代码的编写,将实现代码粘贴作为答案
public class UserServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
//设置请求编码格式
req.setCharacterEncoding("utf-8");
//设置响应编码格式
resp.setContentType("text/html;charset=utf-8");
//获取请求信息
String uname=req.getParameter("uname");
String pwd=req.getParameter("pwd");
//处理请求信息
System.out.println(uname+"--"+pwd);
//响应处理结果
}
}
3.2.4 修改登录页面中表单中用户名和密码提交的键名,,将修改后的表单代码粘贴作为答案
<input type="text" class="input input-big" name="uname" placeholder="登录账号" data-validate="required:请填写账号" />
<input type="password" class="input input-big" name="pwd" placeholder="登录密码" data-validate="required:请填写密码" />
3.2.5 简述MVC的编程思想及其好处
M:model service层和dao层和实体类层
V:view 视图层jsp页面等
C:controller 控制层servlet
04MVC实现登录查询用户信息(A)
4.3编程题
4.3.1 根据视频讲解,在项目中完成MVC中service层和Dao的创建,只需要完成接口及其实现类的创建,先不声明功能方法。
4.3.2 根据视频创建User实体类
package com.bjsxt.pojo;
import java.io.Serializable;
public class User implements Serializable {
private int uid;
private String uname;
private String pwd;
private String sex;
private int age;
private String birthday;
public int getUid() {
return uid;
}
public void setUid(int uid) {
this.uid = uid;
}
public String getUname() {
return uname;
}
public void setUname(String uname) {
this.uname = uname;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getBirthday() {
return birthday;
}
public void setBirthday(String birthday) {
this.birthday = birthday;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + age;
result = prime * result
+ ((birthday == null) ? 0 : birthday.hashCode());
result = prime * result + ((pwd == null) ? 0 : pwd.hashCode());
result = prime * result + ((sex == null) ? 0 : sex.hashCode());
result = prime * result + uid;
result = prime * result + ((uname == null) ? 0 : uname.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
User other = (User) obj;
if (age != other.age)
return false;
if (birthday == null) {
if (other.birthday != null)
return false;
} else if (!birthday.equals(other.birthday))
return false;
if (pwd == null) {
if (other.pwd != null)
return false;
} else if (!pwd.equals(other.pwd))
return false;
if (sex == null) {
if (other.sex != null)
return false;
} else if (!sex.equals(other.sex))
return false;
if (uid != other.uid)
return false;
if (uname == null) {
if (other.uname != null)
return false;
} else if (!uname.equals(other.uname))
return false;
return true;
}
@Override
public String toString() {
return "User [uid=" + uid + ", uname=" + uname + ", pwd=" + pwd