Java+Servlet+JSP实现Web宠物诊所管理系统(上)

简介: Java+Servlet+JSP实现Web宠物诊所管理系统

一、系统介绍


软件环境

IDEA:2018.2

Java:jdk1.8

Mysql:8.0.13

Tomcat:8.5.23


系统功能

1.用户的注册与登录

2.宠物信息的增删改查

3.医生信息的增删改查。


数据库涉及的表

userinfo

petdoctor

petdetalis


二、系统展示


1.登录


20210124183149417.jpg


2.注册


20210124183318402.jpg



3.宠物查询主页面


20210124183407568.jpg


4.宠物查询结果


20210124183443251.jpg


5.宠物信息修改


20210124183511764.jpg



6.宠物信息新增


20210124183545296.jpg


7.医生查询主界面


20210124183639230.jpg


8.医生查询结果


20210124183748247.jpg


9.医生信息修改


20210124183803192.jpg


10.医生信息新增


20210124183816245.jpg


三、代码实现


1.前端


init.jsp

<%@ page language="java" pageEncoding="UTF-8" %>
<%
    session.setAttribute("error", "test");
%>
<jsp:forward page="login.jsp"></jsp:forward>

login.jsp

<%@ page language="java" pageEncoding="UTF-8" %>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <base href="<%=basePath%>">
    <title>请登录</title>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <link href="css/css.css" rel="stylesheet" type="text/css">
    <style type="text/css">
        #content {
            position: relative;
            top: 3px;
            width: 80%;
            height: 380px;
            margin: auto;
            overflow: hidden;
            z-index: 2;
        }
        .tab1 {
            position: relative;
            top: 100px;
            font-size: 24px;
        }
        #in1 {
            width: 250px;
            height: 30px;
            font-size: 24px;
        }
        #in3 {
            width: 250px;
            height: 30px;
            font-size: 24px;
        }
        #in2 {
            width: 80px;
            height: 28px;
        }
    </style>
    <script type="text/javascript">
        function checkId() {
            if (document.getElementById("in1").value == ""
                && document.getElementById("in3").value == "") {
                alert("请输入用户名和密码!");
                return false;
            } else if (document.getElementById("in1").value == "") {
                alert("请输入用户名");
                return false;
            } else if (document.getElementById("in3").value == "") {
                alert("请输入密码!");
                return false;
            } else {
                return true;
            }
        }
    </script>
</head>
<body>
<%
    if (session.getAttribute("error").equals("error")) {
%>
<script type="text/javascript">
    alert("用户名或密码错误请重新登录!");
</script>
<%
    }
    session.setAttribute("error", "test");
%>
<div id="top">
    <font class="topc">宠物诊所</font>
</div>
<center>
    <div id="content">
        <form action="servlet/loginservlet" method="post" onsubmit="return checkId()">
            <table border="0" cellpadding="0" cellspacing="2" class="tab1">
                <tr align="center">
                    <td>用户名</td>
                    <td><input type="text" name="username" id="in1"/></td>
                </tr>
                <tr align="center">
                    <td>密 &nbsp;码</td>
                    <td><input type="password" name="password" id="in3"/></td>
                </tr>
                <tr>
                    <td align="center" colspan="2">
                        <input type="submit" value="登录" id="in2"/>
                        <input type="reset" value="重置" id="in2"/>
                        <a href="adduser.jsp"><font color="gray" size="3"><i>注册</i></font></a>
                    </td>
                </tr>
            </table>
        </form>
    </div>
</center>
<!-- include footer -->
<jsp:include page="footer.jsp"></jsp:include>
</body>
</html>

adduser.jsp

<%@ page language="java" pageEncoding="UTF-8" %>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <base href="<%=basePath%>">
    <title>注册</title>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <link href="css/css.css" rel="stylesheet" type="text/css">
    <style type="text/css">
        #content {
            position: relative;
            top: 3px;
            width: 80%;
            height: 380px;
            margin: auto;
            overflow: hidden;
            z-index: 2;
        }
        .tab1 {
            position: relative;
            top: 60px;
            font-size: 24px;
        }
        #in1, #in2, #in3, #in4 {
            width: 250px;
            height: 30px;
            font-size: 24px;
        }
        #in5 {
            width: 80px;
            height: 28px;
            margin-top: 10px;
        }
    </style>
    <script type="text/javascript">
        function checkId() {
            if (document.getElementById("in1").value == ""
                && document.getElementById("in3").value == "" && document.getElementById("in2").value == "") {
                alert("请输入注册用户名和密码!");
                return false;
            } else if (document.getElementById("in1").value == "") {
                alert("请输入用户名");
                return false;
            } else if (document.getElementById("in3").value == "") {
                alert("请输入密码!");
                return false;
            } else if (document.getElementById("in2").value == "") {
                alert("请输入确认密码!");
                return false;
            } else if (document.getElementById("in3").value != document.getElementById("in2").value) {
                alert("您两次的密码不相同!");
                document.getElementById("in2").value = "";
                document.getElementById("in3").value = "";
                return false;
            } else {
                return true;
            }
        }
    </script>
</head>
<body>
<div id="top">
    <font class="topc">注册</font>
</div>
<center>
    <div id="content">
        <br/>
        <form action="servlet/addUserSer" method="post" onsubmit="return checkId()">
            <table border="0" cellpadding="0" cellspacing="2" class="tab1">
                <tr align="center">
                    <td>用户名&nbsp;</td>
                    <td><input type="text" name="name" id="in1"/>*
                    </td>
                </tr>
                <tr align="center">
                    <td>密 码&nbsp;</td>
                    <td><input type="password" name="password" id="in3"/>*
                    </td>
                </tr>
                <tr align="center">
                    <td>确认密码&nbsp;</td>
                    <td><input type="password" id="in2"/>*
                    </td>
                </tr>
                <tr align="center">
                    <td>电 话&nbsp;</td>
                    <td><input type="text" name="phone" id="in4"/>&nbsp;&nbsp;
                    </td>
                </tr>
                <tr align="center">
                    <td colspan="2">
                        <input type="submit" value="提交" id="in5"/>
                        <input type="reset" value="重置" id="in5"/>
                    </td>
                </tr>
            </table>
        </form>
    </div>
</center>
<!-- include footer -->
<jsp:include page="footer.jsp"></jsp:include>
</body>
</html>

adderr.jsp

<%@ page language="java" pageEncoding="UTF-8" %>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <base href="<%=basePath%>">
    <title>失败</title>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <link href="css/css.css" rel="stylesheet" type="text/css">
    <style type="text/css">
        #content {
            position: relative;
            top: 3px;
            width: 80%;
            height: 380px;
            margin: auto;
            overflow: hidden;
            font-size: 30px;
            z-index: 2;
        }
    </style>
</head>
<body>
<div id="top">
    <font class="topc">注册失败</font>
</div>
<center>
    <div id="content">
        <br/><br/>
        <br/>(╯﹏╰) 注册失败,返回重新注册 <a href="adduser.jsp">
        <font color="blue">
            <i>返回</i>
        </font>
    </a>
    </div>
</center>
<!-- include footer -->
<jsp:include page="footer.jsp"></jsp:include>
</body>
</html>

addsuc.jsp

<%@ page language="java" pageEncoding="UTF-8" %>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <base href="<%=basePath%>">
    <title>恭喜注册成功</title>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta http-equiv="refresh" content="3;url=../init.jsp">
    <link href="css/css.css" rel="stylesheet" type="text/css">
    <style type="text/css">
        #content {
            position: relative;
            top: 3px;
            width: 80%;
            height: 380px;
            margin: auto;
            overflow: hidden;
            font-size: 30px;
            z-index: 2;
        }
    </style>
</head>
<body>
<div id="top">
    <font class="topc">注册成功</font>
</div>
<center>
    <div id="content">
        <br/><br/>
        <br/> (*^__^*)恭喜您注册成功!3s后返回登录页面 <a href="init.jsp">
        <font color="red">
            <i>立即返回</i>
        </font>
    </a>
    </div>
</center>
<!-- include footer -->
<jsp:include page="footer.jsp"></jsp:include>
</body>
</html>

petadd.jsp

<%@ page language="java" pageEncoding="UTF-8" %>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <base href="<%=basePath%>">
    <title>宠物新增</title>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <link href="css/css.css" rel="stylesheet" type="text/css">
    <style type="text/css">
        #content {
            position: relative;
            top: 3px;
            width: 80%;
            height: 380px;
            margin: auto;
            overflow: hidden;
            z-index: 2;
        }
        .tab1 {
            position: relative;
            top: 60px;
            font-size: 24px;
        }
        #in1, #in2, #in3, #in4 ,#in6{
            width: 250px;
            height: 30px;
            font-size: 24px;
        }
        #in5 {
            width: 80px;
            height: 28px;
            margin-top: 10px;
        }
    </style>
    <script type="text/javascript">
        function checkId() {
            if (document.getElementById("in1").value == ""
                && document.getElementById("in3").value == ""
                && document.getElementById("in2").value == ""
                && document.getElementById("in6").value == "") {
                alert("请输入宠物名相关信息!");
                return false;
            } else if (document.getElementById("in1").value == "") {
                alert("请输入宠物名!");
                return false;
            } else if (document.getElementById("in3").value == "") {
                alert("请输入主人!");
                return false;
            }else if (document.getElementById("in6").value == "") {
                alert("请输入电话!");
                return false;
            }
            else {
                return true;
            }
        }
    </script>
</head>
<body>
<jsp:include page="top.jsp"></jsp:include>
<!-- include top -->
<center>
    <div id="content">
        <br/>
        <form action="servlet/petadd" method="post" onsubmit="return checkId()">
            <table border="0" cellpadding="0" cellspacing="2" class="tab1">
                <tr align="center">
                    <td>宠物名&nbsp;</td>
                    <td><input type="text" name="petname" id="in1"/>*
                    </td>
                </tr>
                <tr align="center">
                    <td>主人&nbsp;</td>
                    <td><input type="text" name="petmaster" id="in3"/>*
                    </td>
                </tr>
                <tr align="center">
                    <td>城市&nbsp;</td>
                    <td><input type="text" name="petcity" id="in4"/>&nbsp;&nbsp;
                    </td>
                </tr>
                <tr align="center">
                    <td>地址&nbsp;</td>
                    <td><input type="text" name="petadress" id="in2"/>&nbsp;&nbsp;
                    </td>
                </tr>
                <tr align="center">
                    <td>电话&nbsp;</td>
                    <td><input type="text" name="petphone" id="in6"/>*
                    </td>
                </tr>
                <tr align="center">
                    <td colspan="2">
                        <input type="submit" value="提交" id="in5"/>
                        <input type="reset" value="重置" id="in5"/>
                    </td>
                </tr>
            </table>
        </form>
    </div>
</center>
<!-- include footer -->
<jsp:include page="footer.jsp"></jsp:include>
</body>
</html>
相关文章
|
5月前
|
SQL 监控 安全
Java Web应用的安全防护与攻防策略
Java Web应用的安全防护与攻防策略
|
2月前
|
Java 容器
【学习笔记】Jsp与Servlet技术
【学习笔记】Jsp与Servlet技术
82 0
|
4月前
|
SQL Java 数据库
jsp中使用Servlet查询SQLSERVER数据库中的表的信息,并且打印在屏幕上
该博客文章介绍了在JSP应用中使用Servlet查询SQL Server数据库的表信息,并通过JavaBean封装图书信息,将查询结果展示在Web页面上的方法。
jsp中使用Servlet查询SQLSERVER数据库中的表的信息,并且打印在屏幕上
|
4月前
|
Java
`<jsp:getProperty>`动作和`<jsp:setProperty>`动作的使用在一个静态页面填写图书的基本信息,页面信息提交给其他页面,并且在其页面显示。要去将表单元素的值赋值给Java
该博客文章讲解了JSP中`<jsp:getProperty>`和`<jsp:setProperty>`动作的使用方法,包括它们的语法格式和如何在页面中使用这些动作来获取和设置JavaBean对象的属性值,并通过图书信息的填写和展示示例进行了演示。
`<jsp:getProperty>`动作和`<jsp:setProperty>`动作的使用在一个静态页面填写图书的基本信息,页面信息提交给其他页面,并且在其页面显示。要去将表单元素的值赋值给Java
|
4月前
|
存储 缓存 前端开发
Servlet与JSP在Java Web应用中的性能调优策略
Servlet与JSP在Java Web应用中的性能调优策略
42 1
|
4月前
|
供应链 前端开发 Java
JSP+servlet+mybatis+layui服装库存管理系统(大三上学期课程设计)
这篇文章通过一个服装库存管理系统的实例,展示了在Spring Boot项目中使用Ajax、JSON、layui、MVC架构和iframe等技术,涵盖了注册登录、权限管理、用户管理、库存管理等功能,并提供了系统运行环境和技术要求的详细说明。
JSP+servlet+mybatis+layui服装库存管理系统(大三上学期课程设计)
|
4月前
|
安全 前端开发 Java
Web端系统开发解决跨域问题——以Java SpringBoot框架配置Cors为例
在Web安全上下文中,源(Origin)是指一个URL的协议、域名和端口号的组合。这三个部分共同定义了资源的来源,浏览器会根据这些信息来判断两个资源是否属于同一源。例如,https://www.example.com:443和http://www.example.com虽然域名相同,但由于协议和端口号不同,它们被视为不同的源。同源(Same-Origin)是指两个URL的协议、域名和端口号完全相同。只有当这些条件都满足时,浏览器才认为这两个资源来自同一源,从而允许它们之间的交互操作。
Web端系统开发解决跨域问题——以Java SpringBoot框架配置Cors为例
|
4月前
|
Java Maven Android开发
解锁Web开发新技能:从零开始的Struts 2之旅——让你的Java编程之路更加宽广,首个应用实例带你飞!
【8月更文挑战第31天】对于初学者,掌握 Struts 2 框架不仅能提升 Web 开发能力,还能深入了解 MVC 架构。Struts 2 是一个基于 Servlet 的 Java 框架,提供表单验证、文件上传、国际化等功能,便于快速构建易维护的 Web 应用。本文通过示例演示如何从零开始搭建环境并创建一个简单的 Struts 2 项目,包括配置 `struts.xml`、编写 Action 类及视图文件,并配置 web.xml。通过这些步骤,你将学会基本的开发流程,为进一步学习高级功能打下基础。
66 0
|
4月前
|
存储 Java 关系型数据库
基于Servlet和JSP的Java Web应用开发指南
基于Servlet和JSP的Java Web应用开发指南
79 0
|
4月前
|
前端开发 安全 Java
在Java服务器端开发的浩瀚宇宙中,Servlet与JSP犹如两颗璀璨的明星,它们联袂登场,共同编织出动态网站的绚丽篇章。
在Java服务器端开发的浩瀚宇宙中,Servlet与JSP犹如两颗璀璨的明星,它们联袂登场,共同编织出动态网站的绚丽篇章。
31 0
下一篇
DataWorks