1. 学习内容
主要对服务器相关内容进行学习,了解掌握了对请求消息和响应消息,初步了解开发B/S架构的流程,主要初步实现了对服务端的开发。完成数据库、服务器和浏览器三者的交互。
2.成果展示
完成登录页面
- 项目目录
- 主要代码
登录实现代码
//设置编码
req.setCharacterEncoding("utf-8");
//获取所有请求参数
Map<String, String[]> map = req.getParameterMap();
//创建User对象
User loginUser = new User();
//使用BeanUtils封装
try {
BeanUtils.populate(loginUser,map);
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
//调用UserDao的login方法
UserDao dao = new UserDao();
User user = dao.login(loginUser);
//判断user
if (user == null){
//登录失败 转发数据
req.getRequestDispatcher("/failServlet").forward(req,resp);
}else {
//登录成功 保存数据后转发
req.setAttribute("user",user);
req.getRequestDispatcher("/successServlet").forward(req,resp);
}
实现与数据库连接
public class JDBCUtils {
private static DataSource ds;
static {
//加载配置文件
Properties pro = new Properties();
try {
String path = JdbcUtils.class.getResource("/").getPath();
//将无法识别的空格字符转换成空格
String replace = path.replace("%20", " ");
pro.load(new FileReader(replace+"druid.properties"));
//初始化连接对象
ds = DruidDataSourceFactory.createDataSource(pro);
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
//获取连接池对象
public static DataSource getDataSource(){
return ds;
}
//获取Connection连接对象
public static Connection getConnection() throws SQLException {
return ds.getConnection();
}
}
等等。
3. 效果展示