基于javaweb的网上花店商城系统(java+jsp+servlert+mysql+ajax)

2024-01-23 20:50

本文主要是介绍基于javaweb的网上花店商城系统(java+jsp+servlert+mysql+ajax),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

基于javaweb的网上花店商城系统(java+jsp+servlert+mysql+ajax)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

20220519001904

20220519001906

20220519001907

20220519001908

20220519001909

20220519001910

基于javaweb+jsp的网上花店商城系统鲜花商城(java+jsp+servlert+mysql+ajax)

一、项目简述

功能: 一套完整的网上花店商场系统,系统支持前台会员的注册 登陆系统留言,花朵的品种选择,详情浏览,加入购物 车,购买花朵等;后台支持管理员的花朵种类添加,花朵 详情的添加修改,用户管理,留言管理,商场新闻管理等。

二、项目运行

环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)

项目技术: JSP + Servlert + html+ css + JavaScript + JQuery + Ajax + Fileupload等等。

用户信息控制层:

/**

  • 用户

**/

@RestController

@RequestMapping(“user”)

public class UserController {

@Autowired

UserService userService;

@Autowired

UserDao dao;

@RequestMapping(“/test”)

R test() {

R r = new R();

return r.setCode(4000).setMsg(Constant.IMG_PATH).setData(dao.findAll());

@RequestMapping(“/queryInfoByAccount”)

R queryInfoByAccount(@RequestParam(“account”) String account) {

R r = new R();

if (StringUtil.isEmpty(account)){

return r.setCode(4000).setMsg(HttpMsg.INVALID_PARAM);

User loginUser = userService.queryInfo(account);

if (loginUser == null){

return r.setCode(4000).setMsg(HttpMsg.INVALID_USER);

return r.setCode(2000).setData(loginUser);

@RequestMapping(“/find”)

R find(@RequestParam(“page”) int page, @RequestParam(“searchKey”) String searchKey) {

R r = new R();

Map<String, Object> map = new HashMap<>();

List users = userService.find(searchKey);

if (users == null) {

return r.setCode(2000);

List items = users.size() >= page * Constant.PAGE_SIZE ?

users.subList((page - 1) * Constant.PAGE_SIZE, page * Constant.PAGE_SIZE)

: users.subList((page - 1) * Constant.PAGE_SIZE, users.size());

int len = users.size() % Constant.PAGE_SIZE == 0 ? users.size() / Constant.PAGE_SIZE

: (users.size() / Constant.PAGE_SIZE + 1);

map.put(“items”, items);

map.put(“len”, len);

return r.setCode(2000).setData(map);

@RequestMapping(“/create”)

R create(@RequestBody User user) {

R r = new R();

int ans = userService.add(user);

if (ans == 1) {

return r.setCode(2000).setMsg(HttpMsg.ADD_USER_OK);

return r.setCode(4000).setMsg(HttpMsg.ADD_USER_FAILED);

@RequestMapping(“/update”)

R update(@RequestBody User user) {

R r = new R();

int ans = userService.update(user);

if (ans >= 0) {

return r.setCode(2000).setMsg(HttpMsg.UPDATE_USER_OK);

return r.setCode(4000).setMsg(HttpMsg.UPDATE_USER_FAILED);

@DeleteMapping(“/delete”)

R delete(@RequestParam(“id”) int id) {

R r = new R();

int ans = userService.delete(id);

if (ans == 1) {

return r.setCode(2000).setMsg(HttpMsg.DELETE_USER_OK);

return r.setCode(4000).setMsg(HttpMsg.DELETE_USER_FAILED);

订单控制层:

/**

  • 订单控制层

**/

@RestController

@RequestMapping(“order”)

public class OrderController {

@Autowired

OrderService orderService;

@Autowired

UserDao userDao;

@Autowired

OrderDao orderDao;

@Autowired

FlowersDao flowersDao;

@RequestMapping(“/test”)

R test() {

R r = new R();

return r.setCode(4000).setMsg(Constant.IMG_PATH).setData(orderDao.findAll(null));

@RequestMapping(“/queryByAccount”)

R queryByAccount(@RequestParam(“account”) String account) {

R r = new R();

if (StringUtil.isEmpty(account)) {

return r.setCode(4000).setMsg(HttpMsg.INVALID_PARAM);

List orders = orderService.queryByAccount(account);

return r.setCode(2000).setData(orders);

@RequestMapping(“/find”)

R find(@RequestParam(“page”) int page, @RequestParam(“searchKey”) String searchKey, @RequestParam(“account”) String account) {

R r = new R();

Map<String, Object> map = new HashMap<>();

List orders = orderService.find(searchKey, account);

if (orders == null) {

return r.setCode(2000);

map.put(“items”, orders);

map.put(“len”, orders.size());

return r.setCode(2000).setData(map);

@RequestMapping(“/findAll”)

R findAll(@RequestParam(“page”) int page, @RequestParam(“searchKey”) String searchKey) {

R r = new R();

Map<String, Object> map = new HashMap<>();

List orders = orderService.findAll(searchKey);

if (orders == null) {

return r.setCode(2000);

List items = orders.size() >= page * Constant.PAGE_SIZE ?

orders.subList((page - 1) * Constant.PAGE_SIZE, page * Constant.PAGE_SIZE)

: orders.subList((page - 1) * Constant.PAGE_SIZE, orders.size());

int len = orders.size() % Constant.PAGE_SIZE == 0 ? orders.size() / Constant.PAGE_SIZE

: (orders.size() / Constant.PAGE_SIZE + 1);

List vos = new ArrayList<>();

for (Order item : items) {

User user = userDao.queryById(item.getUid());

OrderVo vo = new OrderVo();

vo.setAddress(user.getAddress()).setPhone(user.getPhone()).setUsername(user.getName())

.setAmount(item.getAmount()).setFlower(item.getFlower()).setId(item.getId())

.setUid(item.getUid()).setOrder_guid(item.getOrder_guid()).setPrice(item.getPrice())

.setState(item.getState());

vos.add(vo);

map.put(“items”, vos);

map.put(“len”, len);

return r.setCode(2000).setData(map);

@RequestMapping(“/update”)

R update(@RequestBody Order order) {

R r = new R();

int ans = orderService.update(order);

if (ans >= 0) {

return r.setCode(2000).setMsg(HttpMsg.UPDATE_USER_OK);

return r.setCode(4000).setMsg(HttpMsg.UPDATE_USER_FAILED);

@RequestMapping(“/changeState”)

R changeState(@RequestBody Order order) {

orderDao.changeState(order);

return new R().setCode(2000).setMsg(HttpMsg.UPDATE_ORDER_OK);

@DeleteMapping(“/delete”)

R delete(@RequestParam(“id”) int id) {

R r = new R();

int ans = orderService.delete(id);

if (ans == 1) {

return r.setCode(2000).setMsg(HttpMsg.DELETE_USER_OK);

return r.setCode(4000).setMsg(HttpMsg.DELETE_USER_FAILED);

用户登录控制层:

/**

  • 登录

**/

@RestController

@RequestMapping(“login”)

public class LoginController {

@Autowired

LoginDao loginDao;

@RequestMapping(“/doLogin”)

R doLogin(@RequestBody LoginForm form) {

R r = new R();

if (!VerifyUtil.verifyLoginForm(form)) {

return r.setCode(4000).setMsg(HttpMsg.ERROR_INPUT);

User loginUser = loginDao.login(form);

if (loginUser != null) {

return r.setCode(2000).setMsg(“欢迎您:” + loginUser.getName()).setData(loginUser);

return r.setCode(4000).setMsg(HttpMsg.ERROR_VERIFY);

@RequestMapping(“/test”)

R test() {

R r = new R();

return r.setCode(4000).setMsg(Constant.IMG_PATH);


这篇关于基于javaweb的网上花店商城系统(java+jsp+servlert+mysql+ajax)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/637481

相关文章

Spring Boot中WebSocket常用使用方法详解

《SpringBoot中WebSocket常用使用方法详解》本文从WebSocket的基础概念出发,详细介绍了SpringBoot集成WebSocket的步骤,并重点讲解了常用的使用方法,包括简单消... 目录一、WebSocket基础概念1.1 什么是WebSocket1.2 WebSocket与HTTP

SpringBoot+Docker+Graylog 如何让错误自动报警

《SpringBoot+Docker+Graylog如何让错误自动报警》SpringBoot默认使用SLF4J与Logback,支持多日志级别和配置方式,可输出到控制台、文件及远程服务器,集成ELK... 目录01 Spring Boot 默认日志框架解析02 Spring Boot 日志级别详解03 Sp

java中反射Reflection的4个作用详解

《java中反射Reflection的4个作用详解》反射Reflection是Java等编程语言中的一个重要特性,它允许程序在运行时进行自我检查和对内部成员(如字段、方法、类等)的操作,本文将详细介绍... 目录作用1、在运行时判断任意一个对象所属的类作用2、在运行时构造任意一个类的对象作用3、在运行时判断

java如何解压zip压缩包

《java如何解压zip压缩包》:本文主要介绍java如何解压zip压缩包问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java解压zip压缩包实例代码结果如下总结java解压zip压缩包坐在旁边的小伙伴问我怎么用 java 将服务器上的压缩文件解压出来,

MySQL 中的 CAST 函数详解及常见用法

《MySQL中的CAST函数详解及常见用法》CAST函数是MySQL中用于数据类型转换的重要函数,它允许你将一个值从一种数据类型转换为另一种数据类型,本文给大家介绍MySQL中的CAST... 目录mysql 中的 CAST 函数详解一、基本语法二、支持的数据类型三、常见用法示例1. 字符串转数字2. 数字

SpringBoot中SM2公钥加密、私钥解密的实现示例详解

《SpringBoot中SM2公钥加密、私钥解密的实现示例详解》本文介绍了如何在SpringBoot项目中实现SM2公钥加密和私钥解密的功能,通过使用Hutool库和BouncyCastle依赖,简化... 目录一、前言1、加密信息(示例)2、加密结果(示例)二、实现代码1、yml文件配置2、创建SM2工具

Spring WebFlux 与 WebClient 使用指南及最佳实践

《SpringWebFlux与WebClient使用指南及最佳实践》WebClient是SpringWebFlux模块提供的非阻塞、响应式HTTP客户端,基于ProjectReactor实现,... 目录Spring WebFlux 与 WebClient 使用指南1. WebClient 概述2. 核心依

Mysql实现范围分区表(新增、删除、重组、查看)

《Mysql实现范围分区表(新增、删除、重组、查看)》MySQL分区表的四种类型(范围、哈希、列表、键值),主要介绍了范围分区的创建、查询、添加、删除及重组织操作,具有一定的参考价值,感兴趣的可以了解... 目录一、mysql分区表分类二、范围分区(Range Partitioning1、新建分区表:2、分

MySQL 定时新增分区的实现示例

《MySQL定时新增分区的实现示例》本文主要介绍了通过存储过程和定时任务实现MySQL分区的自动创建,解决大数据量下手动维护的繁琐问题,具有一定的参考价值,感兴趣的可以了解一下... mysql创建好分区之后,有时候会需要自动创建分区。比如,一些表数据量非常大,有些数据是热点数据,按照日期分区MululbU

SQL Server配置管理器无法打开的四种解决方法

《SQLServer配置管理器无法打开的四种解决方法》本文总结了SQLServer配置管理器无法打开的四种解决方法,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录方法一:桌面图标进入方法二:运行窗口进入检查版本号对照表php方法三:查找文件路径方法四:检查 S