在Java基础练习题、Java基础练习题文章中,提供了详细的解题思路以及答案,文章还在更新中,本篇文章再给大家安利一些关于 Java EE框架相关知识点的练习题,每道题同样都附有答案链接,答案解题的每个步骤到运行结果都十分详细,十分适合小白拿来练习,也十分适合准备面试的各位复习下 Java EE框架相关知识的部分,这篇文章我会不断更新。
使用 IntelliJ IDEA 工具,创建一个简单的 Servlet。
题目解决思路
Servlet 代码:
public class Servlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 设置响应的内容类型和编码
response.setContentType("text/html;charset=utf-8");
// 通过响应对象获取打印流
PrintWriter pw = response.getWriter();
pw.write("嗨客网(www.haicoder.net)\n");
// 输出内容到网页
pw.write("XML方式创建Servlet
");
pw.write("第一个Servlet程序
");
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
web.xml 文件配置:
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<servlet>
<servlet-name>servlet1servlet-name>
<servlet-class>net.haicoder.servlet01.Servletservlet-class>
servlet>
<servlet-mapping>
<servlet-name>servlet1servlet-name>
<url-pattern>/demo01url-pattern>
servlet-mapping>
web-app>
Servlet 代码:
@WebServlet("/demo02")
public class Servlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
// 通过响应对象获取打印流
PrintWriter pw = response.getWriter();
pw.write("嗨客网(www.haicoder.net)\n");
// 输出内容到网页
pw.write("注解方式创建Servlet
");
pw.write("第二个Servlet程序
");
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-servlet.html
使用 继承 GenericServlet 的方式,创建一个简单的 Servlet。
Servlet 代码:
@WebServlet("/demo03")
public class Servlet extends GenericServlet {
@Override
public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
// 通过响应对象获取打印流
PrintWriter pw = response.getWriter();
pw.write("嗨客网(www.haicoder.net)\n");
// 输出内容到网页
pw.write("注解方式创建Servlet
");
pw.write("这是继承GenericServlet实现Servlet程序
");
}
}
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-generic-servlet.html
通过 HttpServletRequest 对象,获取请求行中相关信息。
Servlet 代码:
@WebServlet("/demo01")
public class Servlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 设置响应的内容类型和编码
response.setContentType("text/html;charset=utf-8");
// 通过响应对象获取打印流
PrintWriter pw = response.getWriter();
pw.print("嗨客网(www.haicoder.net)
");
pw.print("
");
// 获取请求行的信息
pw.print("获取请求的方式:" + request.getMethod() + "
");
pw.print("获取请求的URI:" + request.getRequestURI() + "
");
pw.print("获取协议和版本:" + request.getProtocol() + "
");
pw.print("获取查询字符串:" + request.getQueryString() + "
");
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-httpservlet-request.html
通过 HttpServletRequest 对象,获取请求头中相关信息
Servlet 代码:
@WebServlet("/demo02")
public class Servlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 设置响应的内容类型和编码
response.setContentType("text/html;charset=utf-8");
// 通过响应对象获取打印流
PrintWriter pw = response.getWriter();
pw.print("嗨客网(www.haicoder.net)
");
pw.print("
");
// 获取请求头的名称
Enumeration<String> headerNames = request.getHeaderNames();
// 遍历所有请求头
while(headerNames.hasMoreElements()){
// 获取请求头名称
String name = headerNames.nextElement();
// 根据头查询信息
String value = request.getHeader(name);
// 输出信息
pw.print("名称:" + name + " 值:" + value + "
");
}
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-httpservlet-request2.html
通过 HttpServletRequest 对象,获取请求头 user-agent 的值,可以得出浏览器类型。
Servlet 代码:
@WebServlet("/demo03")
public class Servlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 设置响应的内容类型和编码
response.setContentType("text/html;charset=utf-8");
// 通过响应对象获取打印流
PrintWriter pw = response.getWriter();
pw.print("嗨客网(www.haicoder.net)
");
pw.print("
");
// 获取浏览器类型
String userAgent = request.getHeader("user-agent");
if (userAgent.contains("Edg")) {
//3.输出浏览器的类型
pw.print("您的浏览器是:Edge" );
}
else if(userAgent.contains("OPR")) {
pw.print("您的浏览器是:Opera" );
}
else if(userAgent.contains("Chrome")) {
pw.print("您的浏览器是:Chrome" );
}
else if(userAgent.contains("Safari")) {
pw.print("您的浏览器是:Safari" );
}
else if(userAgent.contains("Firefox")) {
pw.print("您的浏览器是:Firefox" );
}
else {
pw.print("您的浏览器是:IE浏览器或其它");
}
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-httpservlet-request3.html
通过 HttpServletRequest 对象,获取表单提交的数据。
注册页面代码:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>注册界面title>
head>
<body>
<h2>用户注册h2>
<form action="demo05" method="post">
用户名: <input type="text" name="name"><br/>
性别: <input type="radio" name="gender" value="男" checked="checked"/>男
<input type="radio" name="gender" value="女"/>女 <br/>
城市:
<select name="city">
<option value="广州">广州option>
<option value="深圳">深圳option>
<option value="上海">上海option>
select>
<br/>
爱好:
<input type="checkbox" name="hobby" value="篮球"/>篮球
<input type="checkbox" name="hobby" value="游泳"/>游泳
<input type="checkbox" name="hobby" value="跑步"/>跑步
<br/>
<input type="submit" value="注册"/>
form>
body>
html>
Servlet 代码:
@WebServlet("/demo04")
public class Servlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 设置响应的内容类型和编码
response.setContentType("text/html;charset=utf-8");
// 通过响应对象获取打印流
PrintWriter pw = response.getWriter();
pw.print("嗨客网(www.haicoder.net)
");
pw.print("
");
// 获取单个参数的值
pw.print("getParameter方法
");
String name = request.getParameter("name");
pw.print("用户名参数:" + name + "
");
// 获取多选框内的内容
String[] hobbies = request.getParameterValues("hobby");
pw.print("爱好多选框:" + Arrays.toString(hobbies) + "
");
// 获取所有参数名
pw.print("getParameterNames方法
");
Enumeration<String> parameterNames = request.getParameterNames();
// 遍历参数名
while(parameterNames.hasMoreElements()){
String parameterName = parameterNames.nextElement();
// 得到参数值
String parameterValue = request.getParameter(parameterName);
// 输出结果
pw.print("参数名:" + parameterName + " 参数值:" + parameterValue + "
");
}
// 获取所有参数
pw.print("getParameterMap方法
");
Map<String, String[]> parameterMap = request.getParameterMap();
parameterMap.forEach((k,v) -> pw.print("参数名:" + k + " 参数值:" + Arrays.toString(v) + "
"));
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-httpservlet-request4.html
使用 HttpServletRequest 对象,获取表单提交数据,并使用 BeanUtils 工具类封装数据。
注册界面:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>注册界面title>
head>
<body>
<h2>用户注册h2>
<form action="demo05" method="post">
用户名: <input type="text" name="name"><br/>
性别: <input type="radio" name="gender" value="男" checked="checked"/>男
<input type="radio" name="gender" value="女"/>女 <br/>
城市:
<select name="city">
<option value="广州">广州option>
<option value="深圳">深圳option>
<option value="上海">上海option>
select>
<br/>
爱好:
<input type="checkbox" name="hobby" value="篮球"/>篮球
<input type="checkbox" name="hobby" value="游泳"/>游泳
<input type="checkbox" name="hobby" value="跑步"/>跑步
<br/>
<input type="submit" value="注册"/>
form>
body>
html>
User 类代码:
public class User {
// 属性
private String name;
private String gender;
private String city;
private String hobby[];
@Override
public String toString() {
return "User{" +
"name='" + name + '\'' +
", gender='" + gender + '\'' +
", city='" + city + '\'' +
", hobby=" + Arrays.toString(hobby) +
'}';
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public String[] getHobby() {
return hobby;
}
public void setHobby(String[] hobby) {
this.hobby = hobby;
}
}
Servlet 代码:
@WebServlet("/demo05")
public class Servlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
// 获取表单提交数据
Map<String, String[]> map = request.getParameterMap();
// 创建User对象
User user = new User();
// 使用BeanUtils工具类封装表单数据
try {
BeanUtils.populate(user,map);
} catch (Exception e) {
e.printStackTrace();
}
// 打印User对象
System.out.println("嗨客网(www.haicoder.net)\n");
System.out.println("【表单数据】:" + user);
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-httpservlet-request5.html
使用 HttpServletRequest 对象,完成对请求域数据的设置、获取、删除等操作。
Servlet 代码:
@WebServlet("/demo06")
public class Servlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
PrintWriter pw = response.getWriter();
pw.print("嗨客网(www.haicoder.net)
");
pw.print("
");
// 请求域中创建键和值
request.setAttribute("user","HaiCoder");
request.setAttribute("password",123);
// 获取请求域中的键和值
pw.write("获取请求域的键和值
");
String user = (String) request.getAttribute("user");
Integer password = (Integer) request.getAttribute("password");
// 在页面显示
pw.write("用户名:" + user + "
");
pw.write("密码:" + password + "
");
// 删除请求域的键和值
pw.write("删除请求域的键和值
");
request.removeAttribute("user");
// 再次获取请求域中的键和值
pw.write("再次获取请求域中的键和值
");
user = (String) request.getAttribute("user");
password = (Integer) request.getAttribute("password");
// 页面显示
pw.write("用户名:" + user + "
");
pw.write("密码:" + password + "
");
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-httpservlet-request6.html
使用 HttpServletRequest 对象,完成请求转发的功能。
ServletDemoOne 代码:
@WebServlet("/one")
public class ServletDemoOne extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
// 请求域设值
request.setAttribute("user","haicoder");
// 请求转发
request.getRequestDispatcher("/two").forward(request,response);
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
ServletDemoTwo 代码:
@WebServlet("/two")
public class ServletDemoTwo extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
// 获取请求域数据
PrintWriter pw = response.getWriter();
pw.print("嗨客网(www.haicoder.net)
");
pw.print("
");
String username = (String) request.getAttribute("user");
pw.println("页面二获取请求域数据:" + username);
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-httpservlet-request7.html
使用 HttpServletResponse 对象,设置响应的内容类型和编码,设置响应码以及错误信息。
@WebServlet("/demo01")
public class ServletDemo extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
// 设置响应的内容类型和编码
response.setContentType("text/html;charset=utf-8");
// 设置响应码以及错误信息
response.sendError(404,"找不到页面");
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-httpservlet-response.html
使用 HttpServletResponse 对象,实现重定向跳转新页面。
@WebServlet("/demo02")
public class ServletDemo extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
// 设置响应的内容类型和编码
response.setContentType("text/html;charset=utf-8");
// 重定向
response.sendRedirect("http://www.haicoder.net");
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-httpservlet-response2.html
使用 HttpServletResponse 对象,实现 3 秒后跳转到 嗨客网。
@WebServlet("/demo03")
public class ServletDemo extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
// 设置响应的内容类型和编码
response.setContentType("text/html;charset=utf-8");
PrintWriter pw = response.getWriter();
pw.print("嗨客网(www.haicoder.net)
");
pw.print("
");
pw.print("3秒后跳转到嗨客网");
// 设置过3秒跳转新页面
response.setHeader("refresh","3;url=http://www.haicoder.net");
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-httpservlet-response3.html
使用 HttpServletResponse 对象,通过设置响应头的方式,实现页面跳转。
@WebServlet("/demo04")
public class ServletDemo extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
// 设置响应的内容类型和编码
response.setContentType("text/html;charset=utf-8");
// 跳转新页面
response.setHeader("location","http://www.haicoder.net");
// 设置响应码
response.setStatus(302);
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-httpservlet-response4.html
使用 Cookie 对象,创建 Cookie 并将其添加到浏览器。
@WebServlet("/addCookie")
public class ServletDemo extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
// 创建Cookie对象
Cookie cookie = new Cookie("user","haicoder");
// 往浏览器中添加Cookie对象
response.addCookie(cookie);
PrintWriter pw = response.getWriter();
pw.print("嗨客网(www.haicoder.net)\n");
pw.print("添加Cookie成功!
");
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-cookie.html
使用 Cookie 对象,实现登录模块的记住账号、密码的功能。
登录界面代码:
DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>用户登录title>
<script src="js/commons.js">script>
head>
<body>
<h2>用户登录h2>
<form action="login" method="post" id="loginForm">
<table>
<tr>
<td width="60">用户名td>
<td><input type="text" name="username" id="username"/>td>
tr>
<tr>
<td>密码td>
<td><input type="password" name="password" id="password"/>td>
tr>
<tr>
<td>记住我td>
<td><input type="checkbox" name="remember"/>td>
tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="登录"/>td>
tr>
table>
form>
body>
html>
登录成功界面代码:
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>登录成功title>
head>
<body>
嗨客网(www.haicoder.net)<br/>
<h2>登录成功,欢迎你!h2>
body>
html>
登录失败界面代码:
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>登录失败title>
head>
<body>
嗨客网(www.haicoder.net)<br/>
<h2>登录失败h2>
<a href="login.html">请重试a>
body>
html>
前端 commos.js 代码
// 页面加载完毕以后执行
window.onload = function () {
// 读取浏览器端的cookie,读取用户名和密码
let username = getCookieValue("username");
let password = getCookieValue("password");
// 判断用户名和密码是否有值
if (username!="" && password!="") {
// 如果有值就把表单中设置用户名和密码
document.getElementById("username").value = username;
document.getElementById("password").value = password;
// 提交表单
document.getElementById("loginForm").submit();
}
}
/*
编写方法,通过键获取Cookie的值
*/
function getCookieValue(name) {
// 读取浏览器端的所有的Cookie,返回字符串
let cookies = document.cookie;
// 判断cookie是否是空串
if (cookies != "") {
//得到:username=admin; password=123
//按分号拆分
let arr = cookies.split(";");
//遍历每个元素
for (let cookie of arr) {
//按等号拆分
let strings = cookie.split("=");
//表示键
let key = strings[0].trim();
//表示值
let value = strings[1].trim();
//查找name是否与key相同,如果相同就返回value
if (key == name) {
return value;
}
}
}
//没有找到,返回空串
return "";
}
LoginServlet 代码:
@WebServlet("/login")
public class LoginServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
// 获取用户输入
String username = request.getParameter("username");
String password = request.getParameter("password");
// 登录
if("haicoder".equals(username) && "123".equals(password)){
String remember = request.getParameter("remember");
if(remember != null){
Cookie cookie = new Cookie(username,password);
response.addCookie(cookie);
}
// 登录成功
response.sendRedirect("success.html");
}else{
// 登录失败
response.sendRedirect("failure.html");
}
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-cookie2.html
使用 Cookie 对象,实现记住账号密码,下次登录时自动登录。
登录界面代码:
DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>用户登录title>
<script src="js/commons.js">script>
head>
<body>
<h2>用户登录h2>
<form action="login" method="post" id="loginForm">
<table>
<tr>
<td width="60">用户名td>
<td><input type="text" name="username" id="username"/>td>
tr>
<tr>
<td>密码td>
<td><input type="password" name="password" id="password"/>td>
tr>
<tr>
<td>记住我td>
<td><input type="checkbox" name="remember"/>td>
tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="登录"/>td>
tr>
table>
form>
body>
html>
登录成功界面代码:
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>登录成功title>
head>
<body>
嗨客网(www.haicoder.net)<br/>
<h2>登录成功,欢迎你!h2>
body>
html>
登录失败界面代码:
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>登录失败title>
head>
<body>
嗨客网(www.haicoder.net)<br/>
<h2>登录失败h2>
<a href="login.html">请重试a>
body>
html>
commons.js 代码
//页面加载完毕以后执行
window.onload = function () {
//读取浏览器端的cookie,读取用户名和密码
let username = getCookieValue("username");
let password = getCookieValue("password");
//判断用户名和密码是否有值
if (username!="" && password!="") {
//如果有值就把表单中设置用户名和密码
document.getElementById("username").value = username;
document.getElementById("password").value = password;
//提交表单
document.getElementById("loginForm").submit();
}
}
/*
编写方法,通过键获取Cookie的值
*/
function getCookieValue(name) {
//1.读取浏览器端的所有的Cookie,返回字符串
let cookies = document.cookie;
//2.判断cookie是否是空串
if (cookies != "") {
//得到:username=admin; password=123
//按分号拆分
let arr = cookies.split(";");
//遍历每个元素
for (let cookie of arr) {
//按等号拆分
let strings = cookie.split("=");
//表示键
let key = strings[0].trim();
//表示值
let value = strings[1].trim();
//查找name是否与key相同,如果相同就返回value
if (key == name) {
return value;
}
}
}
//没有找到,返回空串
return "";
}
LoginServlet 代码:
@WebServlet("/login")
public class LoginServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
// 获取用户输入
String username = request.getParameter("username");
String password = request.getParameter("password");
// 登录
if("haicoder".equals(username) && "123".equals(password)){
String remember = request.getParameter("remember");
if(remember != null){
Cookie cookie1 = new Cookie("username",username);
Cookie cookie2 = new Cookie("password",password);
response.addCookie(cookie1);
response.addCookie(cookie2);
}
// 登录成功
response.sendRedirect("success.html");
}else{
// 登录失败
response.sendRedirect("failure.html");
}
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-cookie3.html
使用 JSP 相关知识,在浏览器上输出当前时间。
<%@ page import="java.text.SimpleDateFormat" %>
<%@ page import="java.util.Date" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
当前时间
现在的时间是:
<%
// 获取当前时间
Date date = new Date();
// 创建格式化对象
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// 格式化当前时间
String dateStr = dateFormat.format(date);
out.print(dateStr);
%>
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-jsp.html
使用 JSP 相关知识,创建集合并添加元素,再循环遍历集合,将元素输出到页面。
<%@ page import="java.util.ArrayList" %>
<%@ page import="java.util.List" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
有序列表
嗨客网(www.haicoder.net)
<%--定义一个集合存入元素--%>
<%
List users = new ArrayList<>();
users.add("张三");
users.add("李四");
users.add("王五");
%>
<%--遍历集合--%>
<% for(String user : users) {%>
- <%=user%>
<%}%>
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-jsp2.html
请分别存入数据到 JSP 四大作用域中,再取出四大作用域中的值,显示在页面上。
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
JSP四大作用域
嗨客网(www.haicoder.net)
<%--存入数据到四大作用域中--%>
<%
pageContext.setAttribute("name","张三");
request.setAttribute("name","李四");
session.setAttribute("name","王五");
application.setAttribute("name","赵六");
%>
<%--取出四大作用域中的值--%>
页面域:<%=pageContext.getAttribute("name")%>
请求域:<%=request.getAttribute("name")%>
会话域:<%=session.getAttribute("name")%>
上下文域:<%=application.getAttribute("name")%>
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-jsp3.html
使用 JSP 的 include 指令,包含其他的 JSP 页面。
head.jsp 页面:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
头部
嗨客网(www.haicoder.net)
这里是头部文件
index.jsp 页面:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
主页
<%@ include file="head.jsp"%>
这里是网页主体部分
详细步骤与运行结果:https://haicoder.net/case/javaee/javaee-jsp4.html
原文大纲: 链接
更多文章,可以关注下方公众号:
