jsp SSM宠物网站系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

news2024/11/25 22:41:00

一、源码特点
    jsp 宠物网站系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为
TOMCAT7.0,eclipse开发,数据库为Mysql5.0,使用java语言开发。

jsp 宠物网站系统Myeclipse开发mysql数据库w


二、功能介绍
1、用户模块:
1)游客:(1)浏览网页信息 (2)注册成为用户,填写个人信息,包括姓名、性别、联系电话、邮箱等,并设置密码。
2)注册用户:(1)浏览网页信息 (2)登录,修改个人信息及密码 (3)发布帖子,录入宠物信息,包括宠物的照片或视频以及(以下将作为筛选的关键字)品种、毛色、性别、体型、年龄、是否节
育和所在地,并选择出售或招领 (4)修改及删除帖子 (5)在宠物帖子下留言及回复留言 (6)收藏宠物 (7)添加宠物进宠物车,查看及修改宠物车信息,结算宠物车 (8)查看订单信息,查询及删
除订单 (9)查看派送专员的评分及评价,下单时可自主选择派送专员为其派送宠物,收货后可评价专员并为其打分。
2、检索模块:(1)根据用户输入的内容查询并显示所有相关结果 (2)根据用户选择的关键字筛选出相应结果。
3、留言板模块:注册用户可在宠物帖子下留言,发帖的宠物主可选择回复留言。
4、收藏夹模块:(1)注册用户可将自己感兴趣的宠物帖子收藏进自己的收藏夹,便于以后查看 (2)删除收藏夹里的宠物帖子 (3)查询收藏夹里的帖子。
5、宠物车模块:(1)显示添加进宠物车的宠物基本信息 (2)修改宠物数量 (3)删除宠物 (4)统计金额,不包括派送专员的额外派送费用 (5)结算并生成订单。
6、订单模块:(1)选择派送方式:专员派送或自行交付,专员派送需提供取货地址、收货地址、双方姓名及联系电话,向买方收取额外派送费用;自行交付可双方协商,私下完成 (2)选择交
易方式,自行线下交易或在线第三方支付平台支付 (3)统计金额,包括额外派送费用 (4)收货后用户可选择对派送专员进行评分评价 (5)收货后订单显示交易成功 (6)显示所有订单信息 (7)
查询订单 (8)删除订单。
7、物流模块:(1)显示所有派送专员信息供用户参考,包括编号、照片、姓名、性别、联系电话、所在地区、评分、评价以及工作状态(派送工作中或空闲待机) (2)在用户下单并选择专员派
送宠物时,系统会为其自动选择其所在地处于空闲状态且评分最高的派送专员,订单会额外显示物流信息,包括收货地址和派送专员的编号、姓名以及联系电话 (3)用户选择专员派送并下单
成功后,专员的工作状态显示派送工作中,当用户收货成功结束订单后,专员的工作状态转为空闲待机。
8、管理员模块:(1)登录 (2)查阅管理平台上的公开信息,包括用户信息和宠物帖子信息,对不适当的信息进行修改和删除 (3)及时删除交易成功的宠物帖子,避免网页上信息冗余 (4)查阅
管理派送专员的个人信息,对人员信息进行增加、修改和删除 (5)管理派送专员的评价,删除不适当的言论 (6)根据派送专员的评分和评价情况,后台调整各个专员收取的派送费用 (7)管理
订单,包括查询和删除。

数据库设计

(1)用户信息表如表5.1所示:

表5.1 用户信息表

序号

字段名称

数据类型

长度

主键

描述

1

yhid

INTEGER

11

用户编号

2

yhm

VARCHAR

40

用户名

3

mm

VARCHAR

40

密码

4

xm

VARCHAR

40

姓名

5

lxdh

VARCHAR

40

联系电话

6

lxdz

VARCHAR

40

联系地址

(2)管理员信息表如表5.2所示:

表5.2 管理员信息表

序号

字段名称

数据类型

长度

主键

描述

1

glyid

INTEGER

11

管理员编号

2

yhm

VARCHAR

40

用户名

3

mm

VARCHAR

40

密码

4

xm

VARCHAR

40

姓名

(3)派送专员信息表如表5.3所示:

表5.3 派送专员信息表

序号

字段名称

数据类型

长度

主键

描述

1

pszyid

INTEGER

11

派送专员编号

2

yhm

VARCHAR

40

用户名

3

mm

VARCHAR

40

密码

4

xm

VARCHAR

40

姓名

5

lxdh

VARCHAR

40

联系电话

6

lxdz

VARCHAR

40

联系地址

7

zt

VARCHAR

40

状态

8

dq

VARCHAR

40

地区

(4)留言信息表如表5.4所示:

表5.4 留言信息表

序号

字段名称

数据类型

长度

主键

描述

1

lyid

INTEGER

11

留言编号

2

ly

VARCHAR

40

留言

3

yh

VARCHAR

40

用户

4

sj

VARCHAR

40

时间

(5)帖子信息表如表5.5所示:

表5.5 帖子信息表

序号

字段名称

数据类型

长度

主键

描述

1

tzid

INTEGER

11

帖子编号

2

bt

VARCHAR

40

标题

3

nr

VARCHAR

40

内容

4

fbr

VARCHAR

40

发布人

5

fbsj

VARCHAR

40

发布时间

(6)帖子回复信息表如表5.6所示:

表5.6 帖子回复信息表

序号

字段名称

数据类型

长度

主键

描述

1

tzhfid

INTEGER

11

帖子回复编号

2

tz

VARCHAR

40

帖子

3

hf

VARCHAR

40

回复

(7)宠物信息表如表5.7所示:

表5.7 宠物信息表

序号

字段名称

数据类型

长度

主键

描述

1

cwid

INTEGER

11

宠物编号

2

cwmc

VARCHAR

40

宠物名称

3

js

VARCHAR

40

介绍

4

tp

VARCHAR

40

图片

5

bz

VARCHAR

40

备注

6

sl

VARCHAR

40

数量

7

jg

VARCHAR

40

价格

8

psfy

VARCHAR

40

派送费用

(8)收藏夹信息表如表5.8所示:

表5.8 收藏夹信息表

序号

字段名称

数据类型

长度

主键

描述

1

wlid

INTEGER

11

物流编号

2

dd

VARCHAR

40

订单

3

wlxx

VARCHAR

40

物流信息

4

sj

VARCHAR

40

时间

5

zt

VARCHAR

40

状态

(9)订单信息表如表5.9所示:

表5.9 订单信息表

序号

字段名称

数据类型

长度

主键

描述

1

ddid

INTEGER

11

订单编号

2

ddls

VARCHAR

40

订单流水

3

yh

VARCHAR

40

用户

4

ddsj

VARCHAR

40

订单时间

5

zt

VARCHAR

40

状态

6

cwjg

VARCHAR

40

宠物价格

7

cw

VARCHAR

40

宠物

8

sl

VARCHAR

40

数量

9

sfzt

VARCHAR

40

是否自提

10

shdz

VARCHAR

40

收货地址

11

shxm

VARCHAR

40

收货姓名

12

psfy

VARCHAR

40

派送费用

13

zfy

VARCHAR

40

总费用

(10)物流信息表如表5.10所示:

表5.10 物流信息表

序号

字段名称

数据类型

长度

主键

描述

1

wlid

INTEGER

11

物流编号

2

dd

VARCHAR

40

订单

3

qs

VARCHAR

40

起始

4

md

VARCHAR

40

目的

5

sj

VARCHAR

40

时间

6

zt

VARCHAR

40

状态

7

pszy

VARCHAR

40

派送专员

(11)评价信息表如表5.11所示:

表5.11 评价信息表

序号

字段名称

数据类型

长度

主键

描述

1

pjid

INTEGER

11

评价编号

2

dd

VARCHAR

40

订单

3

pszy

VARCHAR

40

派送专员

4

pf

VARCHAR

40

评分

5

pj

VARCHAR

40

评价

6

fy

VARCHAR

40

费用

7

sj

VARCHAR

40

时间

(12)类型信息表如表5.12所示:

表5.12类型信息表

序号

字段名称

数据类型

长度

主键

描述

1

lxid

INTEGER

11

类型编号

2

lx

VARCHAR

40

类型

代码设计

@RequestMapping(value="/add")
	public String add(chongwu chongwu,HttpServletRequest request){
		Map<String,Object> map= new HashMap<String,Object>();
		//String name=(String)request.getParameter("name");

		map.put("cwid", chongwu.getCwid());//宠物编号

		map.put("cwmc", chongwu.getCwmc());//宠物名称

		map.put("js", chongwu.getJs());//介绍

		map.put("tp", chongwu.getTp());//图片

		map.put("bz", chongwu.getBz());//备注

		map.put("sl", chongwu.getSl());//数量

		map.put("jg", chongwu.getJg());//价格

		map.put("psfy", chongwu.getPsfy());//派送费用
		
		map.put("lx", chongwu.getLx());
		chongwudao.save(map);
		
		
		request.setAttribute("msg", "<script>alert('添加成功');</script>");
		System.out.println("addok");
		return "chongwu/chongwuadd";
	}
	
	/**删除 
	 * 
	 */
	@RequestMapping(value="/del")
	public String  del(Integer id,HttpServletRequest request,Map<String,Object> map){
	//	Map<String,Object> map= new HashMap<String,Object>();
		String a=(String)request.getParameter("keyid");
		id=Integer.parseInt(a);
		request.setAttribute("msg", "<script>alert('删除成功');</script>");
		chongwudao.del(id);
		return selectall(null,map);
	}
	/**
	 * 修改chongwu信息
	 */
	@RequestMapping(value="/update")
	public String update(chongwu chongwu,HttpServletRequest request,Map<String,Object> map1){
		Map<String,Object> map= new HashMap<String,Object>();
		map.put("cwid", chongwu.getCwid());//宠物编号

		map.put("cwmc", chongwu.getCwmc());//宠物名称

		map.put("js", chongwu.getJs());//介绍

		map.put("tp", chongwu.getTp());//图片

		map.put("bz", chongwu.getBz());//备注

		map.put("sl", chongwu.getSl());//数量

		map.put("jg", chongwu.getJg());//价格

		map.put("psfy", chongwu.getPsfy());//派送费用

		request.setAttribute("msg", "<script>alert('修改成功');</script>");
		chongwudao.update(map);
		return selectall(null,map1);
	}
	/**
	 * 查询chongwu信息
	 */
	@RequestMapping(value="/modify")
	public String modify(Integer id,Map<String,Object> map,HttpServletRequest request){
		String keyid=(String)request.getParameter("keyid");
		List<Map<String,Object>> list= new  ArrayList<Map<String,Object>>();
		list=chongwudao.select(Integer.parseInt(keyid));
		request.setAttribute("cwid", list.get(0).get("cwid"));//宠物编号

		request.setAttribute("cwmc", list.get(0).get("cwmc"));//宠物名称

		request.setAttribute("js", list.get(0).get("js"));//介绍

		request.setAttribute("tp", list.get(0).get("tp"));//图片

		request.setAttribute("bz", list.get(0).get("bz"));//备注

		request.setAttribute("sl", list.get(0).get("sl"));//数量

		request.setAttribute("jg", list.get(0).get("jg"));//价格

		request.setAttribute("psfy", list.get(0).get("psfy"));//派送费用

		
		return "chongwu/chongwumodify";
	}
	
	@RequestMapping(value="/detail")
	public String detail(Integer id,Map<String,Object> map,HttpServletRequest request){
		String keyid=(String)request.getParameter("keyid");
		List<Map<String,Object>> list= new  ArrayList<Map<String,Object>>();
		list=chongwudao.select(Integer.parseInt(keyid));
		request.setAttribute("cwid", list.get(0).get("cwid"));//宠物编号

		request.setAttribute("cwmc", list.get(0).get("cwmc"));//宠物名称

		request.setAttribute("js", list.get(0).get("js"));//介绍

		request.setAttribute("tp", list.get(0).get("tp"));//图片

		request.setAttribute("bz", list.get(0).get("bz"));//备注

		request.setAttribute("sl", list.get(0).get("sl"));//数量

		request.setAttribute("jg", list.get(0).get("jg"));//价格

		
		request.setAttribute("lx", list.get(0).get("lx"));//价格
		request.setAttribute("psfy", list.get(0).get("psfy"));//派送费用

		return "chongwu/chongwudetail";
	}
	
	@RequestMapping(value="/achongwu")
	public String achongwu(Integer id,Map<String,Object> map,HttpServletRequest request){
		String keyid=(String)request.getParameter("keyid");
		
		System.out.println("keyid="+keyid);
		List<Map<String,Object>> list= new  ArrayList<Map<String,Object>>();
		
		int a=0;
		try{
			a=Integer.parseInt(keyid);
		}catch(Exception e){
			e.printStackTrace();
		}
		list=chongwudao.select(a);
		request.setAttribute("cwid", list.get(0).get("cwid"));//宠物编号

		request.setAttribute("cwmc", list.get(0).get("cwmc"));//宠物名称

		request.setAttribute("js", list.get(0).get("js"));//介绍

		request.setAttribute("tp", list.get(0).get("tp"));//图片

		request.setAttribute("bz", list.get(0).get("bz"));//备注

		request.setAttribute("sl", list.get(0).get("sl"));//数量

		request.setAttribute("jg", list.get(0).get("jg"));//价格

		
		request.setAttribute("lx", list.get(0).get("lx"));//价格
		request.setAttribute("psfy", list.get(0).get("psfy"));//派送费用

		return "achongwu";
	}
	
	/**
	 * 查询chongwu信息
	 */
	@RequestMapping(value="/selectall")
	public String selectall(Integer id,Map<String,Object> map){
		List<Map<String,Object>> list= new  ArrayList<Map<String,Object>>();
		list=chongwudao.selectAll();
		System.out.println("listsize="+list.size());
		
		map.put("mylist", list);
		return "chongwu/chongwulist";

三、注意事项
    1、管理员账号:admin密码:admin 数据库配置文件DBO.java
     2、开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。
    3、数据库文件名是jspchongwu.sql ,系统名称chongwu
    4、系统首页地址:http://127.0.0.1:8080/chongwu/

四 系统实现

 

 

 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/704958.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JavaScript 中有趣的 9 个常用编码套路

大厂面试题分享 面试题库 前后端面试题库 &#xff08;面试必备&#xff09; 推荐&#xff1a;★★★★★ 地址&#xff1a;前端面试题库 web前端面试题库 VS java后端面试题库大全 我今天仔细研究了一下掘金上的热门文章数据和内容。我发现你们真是热衷于学习&#xff0c;喜…

#10045. 「一本通 2.2 练习 1」Radio Transmission(内附封面)

[BOI2009] Radio Transmission 无线传输 题目描述 给你一个字符串 s 1 s_1 s1​&#xff0c;它是由某个字符串 s 2 s_2 s2​ 不断自我连接形成的&#xff08;保证至少重复 2 2 2 次&#xff09;。但是字符串 s 2 s_2 s2​ 是不确定的&#xff0c;现在只想知道它的最短长度…

springboot流浪动物救助系统-计算机毕设 附源码78174

springboot流浪动物救助系统 摘 要 21世纪的今天&#xff0c;随着社会的不断发展与进步&#xff0c;人们对于信息科学化的认识&#xff0c;已由低层次向高层次发展&#xff0c;由原来的感性认识向理性认识提高&#xff0c;管理工作的重要性已逐渐被人们所认识&#xff0c;科学…

目标检测算法-YOLOV8解析(附论文和源码)

目标检测算法-YOLOV8解析&#xff08;附论文和源码&#xff09;

LeetCode刷题 | 300. 最长递增子序列、674. 最长连续递增序列、718. 最长重复子数组

300. 最长递增子序列 给你一个整数数组 nums &#xff0c;找到其中最长严格递增子序列的长度。 子序列 是由数组派生而来的序列&#xff0c;删除&#xff08;或不删除&#xff09;数组中的元素而不改变其余元素的顺序。例如&#xff0c;[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子…

地图可视化开发的平台如何选择?

地图数据的日益丰富和人们对数据可视化需求不断提高&#xff0c;地图可视化已经成为了信息化建设中重要的组成部分&#xff0c;在各个行业和领域中都有广泛的应用。地图可视化开发平台选择至关重要&#xff0c;不仅会影响到可视化效果&#xff0c;还会影响到开发难度、维护成本…

我国没有根服务器,那么别人可以控制中国的网络吗?

服务器没想象的那么重要。 根服务器简单理解就是一个密码对应一个访问地址。 就像小时候座机电话刚兴起的时候&#xff0c;那时候给有座机的每家都会发一个全市各部门的联系电话的通讯录。 而发布这个电话通讯录的地方就类似根服务器的作用。 然后每家都自己弄一本一样的&am…

AMEYA360:太阳诱电导电性高分子混合铝电解电容器

太阳诱电导电性高分子混合铝电解电容器&#xff0c;最适合需要大容量和高耐压的车载装置和产业设备。电解质使用导电性高分子和电解液&#xff0c;兼具高性能和高可靠性&#xff0c;满足客户需求。 混合结构在阳极箔表面生成电介质(氧化铝)。用隔膜隔开阳极箔与阴极箔&#xff…

Python基础教程:Turtle绘制图形

前言 在Python中&#xff0c;绘图是一个非常有趣的领域。其中比较流行的绘图库就有 Turtle。Python Turtle模块是一个基于Tkinter图形库的绘图工具&#xff0c;Turtle库可以让你在一个窗口中创建和操纵它的画布&#xff0c;通过学习Turtle库的使用&#xff0c;刚好可以为提供了…

python3开发-AI智能联系人管理系统

目录 背景 1. 数据收集与存储&#xff1a; 2. 搜索与过滤&#xff1a; 3. AI智能功能&#xff1a; 4. 用户界面与交互&#xff1a; 5. 数据备份与恢复&#xff1a; 6. 安全与权限管理&#xff1a; 7. 测试与部署&#xff1a; 代码示例 1. 数据收集与存储&#xff08;…

基于Java+Swing+Mysql物流跟踪管理系统

基于JavaSwingMysql物流跟踪管理系统 一、系统介绍二、功能展示1.主页2.新增物流信息3.删除物流信息 三、数据库四、其他系统实现五、获取源码 一、系统介绍 该系统实现了查看物流列表、新增物流信息、删除物流信息 运行环境&#xff1a;eclipse、idea、jdk1.8 二、功能展示…

字节码原理浅析 —— 基于栈的执行引擎

概要 字节码是运行在 JVM 上的&#xff0c;为了能弄懂字节码&#xff0c;需要对 JVM 的运行原理有所了解。这篇文章将以栈帧为切入点理解字节码在 JVM 上执行的细节。 虚拟机 虚拟机常见的实现方式有两种&#xff1a;Stack based 的和 Register based。比如基于 Stack 的虚拟机…

一次线上事故,我顿悟了异步的精髓

在高并发的场景下&#xff0c;异步是一个极其重要的优化方向。 前段时间&#xff0c;生产环境发生一次事故&#xff0c;笔者认为事故的场景非常具备典型性 。 写这篇文章&#xff0c;笔者想和大家深入探讨该场景的架构优化方案。希望大家读完之后&#xff0c;可以对异步有更深…

Linux 环境变量 命令行参数

文章目录 问题引入环境变量环境变量相关操纵&#xff08;附源码&#xff09;命令行参数问题解释 问题引入 Linux下&#xff0c;为什么我们自己写的可执行文件需要写明路径才可以执行&#xff0c;而系统的命令不需要&#xff1f; 如何使自己的命令也可以不带路径执行&#xff…

MioIO笔记01

视频地址&#xff1a;分布式文件系统MinIO教程&#xff0c;2021最新版【通俗易懂】_哔哩哔哩_bilibili 目录 1【分布式文件存储系统Minio实战】 P001【1.课程介绍】05:08 P002【2.Minio优点和基础概念】19:29 P003【3.Minio的EC码和文件存储结构】11:33 2【Minio环境搭建】…

【youcans动手学模型】ShuffleNet 模型

欢迎关注『youcans动手学模型』系列 本专栏内容和资源同步到 GitHub/youcans 【youcans动手学模型】ShuffleNet 模型 1. ShuffleNet 网络模型1.1 模型简介1.2 论文介绍 2. 在 PyTorch 中定义 ShuffleNet V1 模型类2.1 分组卷积与通道混洗2.2 ShuffleNet 单元2.3 自定义 Shuffle…

0、如何用运python成为顶级黑客

前言 黑客攻击可以导致个人、组织或公司的机密信息被窃取、破坏或泄露&#xff0c;造成财务损失、声誉受损、系统崩溃等各种问题 一、为什么Python编程语言适合网络安全工作&#xff1f; Python编程语言在网络安全工作中具有许多优势&#xff0c;以下是一些详细介绍&#xf…

性能测试中的随机数性能问题探索

目录 缘起 多线程 单线程 末了 总结&#xff1a; 在软件测试中&#xff0c;经常会遇到随机数。我简单分成了两类&#xff1a; 简单取随机数&#xff1b; 从一个集合中随机取值。 其实第二个场景包含在第一个场景内。对于接口测试来说&#xff0c;通常我们直接使用第二种…

springboot定时任务详解

文章目录 一、基于注解&#xff08;静态&#xff09;1、添加依赖2、创建定时任务3、参数说明 二、基于接口&#xff08;动态&#xff09;1、添加依赖2、添加数据库记录3、创建定时器4、启动测试 三、Quartz1、添加依赖2、编写任务类3、编写配置类4、启动项目 在我们开发项目过程…

css基础知识十四:什么是响应式设计?响应式设计的基本原理是什么?如何做?

一、是什么 响应式网站设计&#xff08;Responsive Web design&#xff09;是一种网络页面设计布局&#xff0c;页面的设计与开发应当根据用户行为以及设备环境(系统平台、屏幕尺寸、屏幕定向等)进行相应的响应和调整 描述响应式界面最著名的一句话就是“Content is like wat…