jsp 语言 宠物服务平台疫苗接种提醒实战

JSP阿木 发布于 2025-06-26 7 次阅读


宠物服务平台疫苗接种提醒实战:使用JSP技术实现

随着宠物经济的蓬勃发展,宠物服务平台应运而生。为了提高服务质量,许多宠物服务平台开始关注宠物健康问题,特别是疫苗接种提醒。本文将围绕宠物服务平台疫苗接种提醒这一主题,使用JSP技术实现一个简单的疫苗接种提醒系统。

系统需求分析

在开始编写代码之前,我们需要明确系统的需求:

1. 用户注册与登录:用户需要注册并登录系统,以便管理自己的宠物信息。

2. 宠物信息管理:用户可以添加、修改和删除自己的宠物信息。

3. 疫苗接种提醒:系统根据宠物的疫苗接种记录,自动提醒用户进行疫苗接种。

4. 界面友好:系统界面简洁明了,易于操作。

技术选型

为了实现上述需求,我们选择以下技术:

- 前端:HTML、CSS、JavaScript

- 后端:Java、JSP、Servlet

- 数据库:MySQL

系统设计

数据库设计

我们需要设计数据库表结构。以下是宠物信息表和疫苗接种记录表的简单设计:

sql

CREATE TABLE pets (


pet_id INT PRIMARY KEY AUTO_INCREMENT,


user_id INT,


pet_name VARCHAR(50),


pet_type VARCHAR(50),


pet_birth DATE,


pet_gender VARCHAR(10)


);

CREATE TABLE vaccinations (


vaccination_id INT PRIMARY KEY AUTO_INCREMENT,


pet_id INT,


vaccine_name VARCHAR(50),


due_date DATE,


reminder_date DATE,


FOREIGN KEY (pet_id) REFERENCES pets(pet_id)


);


JSP页面设计

接下来,我们设计JSP页面。以下是几个关键页面的简单代码示例:

用户注册页面(register.jsp)

jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>


<!DOCTYPE html>


<html>


<head>


<title>用户注册</title>


</head>


<body>


<form action="registerServlet" method="post">


用户名:<input type="text" name="username" /><br/>


密码:<input type="password" name="password" /><br/>


确认密码:<input type="password" name="confirm_password" /><br/>


<input type="submit" value="注册" />


</form>


</body>


</html>


宠物信息管理页面(petManage.jsp)

jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>


<%@ page import="java.sql." %>


<!DOCTYPE html>


<html>


<head>


<title>宠物信息管理</title>


</head>


<body>


<h1>宠物信息管理</h1>


<form action="addPetServlet" method="post">


宠物名称:<input type="text" name="pet_name" /><br/>


宠物类型:<input type="text" name="pet_type" /><br/>


宠物生日:<input type="date" name="pet_birth" /><br/>


宠物性别:<input type="text" name="pet_gender" /><br/>


<input type="submit" value="添加宠物" />


</form>


<table border="1">


<tr>


<th>宠物名称</th>


<th>宠物类型</th>


<th>宠物生日</th>


<th>宠物性别</th>


<th>操作</th>


</tr>


<%


Connection conn = null;


PreparedStatement pstmt = null;


ResultSet rs = null;


try {


Class.forName("com.mysql.jdbc.Driver");


conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/pet_service", "root", "password");


pstmt = conn.prepareStatement("SELECT FROM pets");


rs = pstmt.executeQuery();


while (rs.next()) {


out.println("<tr>");


out.println("<td>" + rs.getString("pet_name") + "</td>");


out.println("<td>" + rs.getString("pet_type") + "</td>");


out.println("<td>" + rs.getDate("pet_birth") + "</td>");


out.println("<td>" + rs.getString("pet_gender") + "</td>");


out.println("<td><a href='deletePetServlet?pet_id=" + rs.getInt("pet_id") + "'>删除</a></td>");


out.println("</tr>");


}


} catch (Exception e) {


e.printStackTrace();


} finally {


try {


if (rs != null) rs.close();


if (pstmt != null) pstmt.close();


if (conn != null) conn.close();


} catch (SQLException e) {


e.printStackTrace();


}


}


%>


</table>


</body>


</html>


Servlet设计

接下来,我们设计Servlet来处理用户请求。

用户注册Servlet(registerServlet.java)

java

import java.io.;


import javax.servlet.;


import javax.servlet.http.;

public class RegisterServlet extends HttpServlet {


public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {


String username = request.getParameter("username");


String password = request.getParameter("password");


// ...此处省略数据库操作代码...


response.sendRedirect("login.jsp");


}


}


宠物信息管理Servlet(petManageServlet.java)

java

import java.io.;


import javax.servlet.;


import javax.servlet.http.;

public class PetManageServlet extends HttpServlet {


public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {


String pet_name = request.getParameter("pet_name");


String pet_type = request.getParameter("pet_type");


String pet_birth = request.getParameter("pet_birth");


String pet_gender = request.getParameter("pet_gender");


// ...此处省略数据库操作代码...


response.sendRedirect("petManage.jsp");


}


}


疫苗接种提醒实现

为了实现疫苗接种提醒功能,我们需要在数据库中添加一个字段来记录疫苗接种提醒日期,并在宠物信息管理页面中添加一个按钮来设置提醒日期。

修改数据库表结构

sql

ALTER TABLE vaccinations ADD COLUMN reminder_date DATE;


修改宠物信息管理页面

在宠物信息管理页面中,添加一个设置提醒日期的按钮:

jsp

<input type="button" value="设置提醒日期" onclick="setReminderDate()" />


在JavaScript中添加设置提醒日期的函数:

javascript

function setReminderDate() {


var pet_id = document.getElementById("pet_id").value;


var reminder_date = prompt("请输入提醒日期(格式:YYYY-MM-DD)", "");


if (reminder_date != null) {


// ...此处省略发送请求到Servlet的代码...


}


}


疫苗接种提醒Servlet(vaccinationReminderServlet.java)

java

import java.io.;


import javax.servlet.;


import javax.servlet.http.;

public class VaccinationReminderServlet extends HttpServlet {


public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {


String pet_id = request.getParameter("pet_id");


String reminder_date = request.getParameter("reminder_date");


// ...此处省略数据库操作代码...


response.sendRedirect("petManage.jsp");


}


}


总结

本文通过使用JSP技术,实现了一个简单的宠物服务平台疫苗接种提醒系统。在实际开发中,我们可以根据需求进一步完善系统功能,如添加宠物健康档案、在线咨询等。希望本文能对您有所帮助。