当前位置:实例文章 » JAVA Web实例» [文章]JavaWeb课程设计项目实战(08)——项目编码实践5

JavaWeb课程设计项目实战(08)——项目编码实践5

发布人:shili8 发布时间:2025-02-12 16:35 阅读次数:0

**JavaWeb课程设计项目实战(08)——项目编码实践5**

在前面的章节中,我们已经完成了项目的需求分析、设计和开发准备工作。现在,它是时候开始编写项目的核心代码了。

###1. 登录功能实现登录功能是任何一个Web应用程序的基本组成部分。在我们的项目中,用户需要通过用户名和密码来登录系统。

#### **LoginServlet.java**

javapackage com.example.login;

import javax.servlet.ServletException;
import javax.servlet. />import javax.servlet. />import javax.servlet. />import java.io.IOException;

public class LoginServlet extends HttpServlet {
 @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
 // 获取用户名和密码 String username = req.getParameter("username");
 String password = req.getParameter("password");

 // 验证用户名和密码 if (username.equals("admin") && password.equals("123456")) {
 // 登录成功,跳转到首页 resp.sendRedirect("/index.jsp");
 } else {
 // 登录失败,显示错误信息 req.setAttribute("error", "用户名或密码错误!");
 req.getRequestDispatcher("/login.jsp").forward(req, resp);
 }
 }

 @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
 doGet(req, resp);
 }
}

#### **LoginServlet.java**注释* `doGet()`和`doPost()`方法分别处理GET和POST请求。
* 获取用户名和密码的参数。
* 验证用户名和密码,如果正确,则跳转到首页,否则显示错误信息。

###2. 注册功能实现注册功能是用户可以创建新的账户以登录系统。在我们的项目中,用户需要填写基本信息并选择一个用户名和密码来注册。

#### **RegisterServlet.java**
javapackage com.example.register;

import javax.servlet.ServletException;
import javax.servlet. />import javax.servlet. />import javax.servlet. />import java.io.IOException;

public class RegisterServlet extends HttpServlet {
 @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
 // 获取用户信息 String username = req.getParameter("username");
 String password = req.getParameter("password");

 // 验证用户名和密码 if (username.length() >=3 && password.length() >=6) {
 // 注册成功,跳转到登录页面 resp.sendRedirect("/login.jsp");
 } else {
 // 注册失败,显示错误信息 req.setAttribute("error", "用户名或密码不合法!");
 req.getRequestDispatcher("/register.jsp").forward(req, resp);
 }
 }

 @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
 doGet(req, resp);
 }
}

#### **RegisterServlet.java**注释* `doGet()`和`doPost()`方法分别处理GET和POST请求。
* 获取用户信息的参数。
* 验证用户名和密码,如果正确,则跳转到登录页面,否则显示错误信息。

###3. 首页功能实现首页是系统中最基本的界面。在我们的项目中,首页需要显示一些基本信息,如系统名称、版本号等。

#### **IndexServlet.java**
javapackage com.example.index;

import javax.servlet.ServletException;
import javax.servlet. />import javax.servlet. />import javax.servlet. />import java.io.IOException;

public class IndexServlet extends HttpServlet {
 @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
 // 获取系统名称和版本号 String systemName = "My System";
 String version = "1.0";

 // 显示首页信息 req.setAttribute("systemName", systemName);
 req.setAttribute("version", version);

 // 转发到index.jsp页面 req.getRequestDispatcher("/index.jsp").forward(req, resp);
 }

 @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
 doGet(req, resp);
 }
}

#### **IndexServlet.java**注释* `doGet()`和`doPost()`方法分别处理GET和POST请求。
* 获取系统名称和版本号的参数。
* 显示首页信息并转发到index.jsp页面。

###4. 登出功能实现登出功能是用户可以退出登录状态。在我们的项目中,用户需要点击一个按钮来完成登出操作。

#### **LogoutServlet.java**
javapackage com.example.logout;

import javax.servlet.ServletException;
import javax.servlet. />import javax.servlet. />import javax.servlet. />import java.io.IOException;

public class LogoutServlet extends HttpServlet {
 @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
 // 删除登录信息 req.getSession().removeAttribute("username");
 req.getSession().removeAttribute("password");

 // 转发到login.jsp页面 req.getRequestDispatcher("/login.jsp").forward(req, resp);
 }

 @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
 doGet(req, resp);
 }
}

#### **LogoutServlet.java**注释* `doGet()`和`doPost()`方法分别处理GET和POST请求。
* 删除登录信息并转发到login.jsp页面。

###5. 其他功能实现其他功能包括显示系统时间、显示系统信息等。在我们的项目中,我们可以使用Java的API来完成这些功能。

#### **TimeServlet.java**
javapackage com.example.time;

import javax.servlet.ServletException;
import javax.servlet. />import javax.servlet. />import javax.servlet. />import java.io.IOException;
import java.util.Date;

public class TimeServlet extends HttpServlet {
 @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
 // 获取系统时间 Date date = new Date();

 // 显示系统时间 req.setAttribute("time", date.toLocaleString());

 // 转发到time.jsp页面 req.getRequestDispatcher("/time.jsp").forward(req, resp);
 }

 @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
 doGet(req, resp);
 }
}

#### **TimeServlet.java**注释* `doGet()`和`doPost()`方法分别处理GET和POST请求。
* 获取系统时间的参数。
* 显示系统时间并转发到time.jsp页面。

#### **SystemInfoServlet.java**
javapackage com.example.systeminfo;

import javax.servlet.ServletException;
import javax.servlet. />import javax.servlet. />import javax.servlet. />import java.io.IOException;
import java.lang.management.ManagementFactory;
import java.lang.management.MemoryMXBean;

public class SystemInfoServlet extends HttpServlet {
 @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
 // 获取系统信息 MemoryMXBean memoryMXBean = ManagementFactory.getMemoryMXBean();
 long heapUsed = memoryMXBean.getHeapMemoryUsage().getUsed();

 // 显示系统信息 req.setAttribute("heapUsed", heapUsed);

 // 转发到systeminfo.jsp页面 req.getRequestDispatcher("/systeminfo.jsp").forward(req, resp);
 }

 @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
 doGet(req, resp);
 }
}

#### **SystemInfoServlet.java**注释* `doGet()`和`doPost()`方法分别处理GET和POST请求。
* 获取系统信息的参数。
* 显示系统信息并转发到systeminfo.jsp页面。

以上就是本篇文章的全部内容。通过阅读本篇文章,读者应该能够了解如何编写JavaWeb项目的核心代码,并且能够完成登录、注册、首页、登出和其他功能的实现。

其他信息

其他资源

Top