基于Java+SSM+MySQL的网上花店系统

末尾获取源码
作者介绍:大家好,我是何时,本人4年开发经验,专注定制项目开发[python、Java、PHP、大数据、小程序、大屏可视化、爬虫等]

更多项目:CSDN主页曾几何时

我欲乘风归去 又恐琼楼玉宇  高处不胜寒 -苏轼


项目简介

进入21世纪网络和计算机得到了飞速发展,并和生活进行了紧密的结合。目前,网络的运行速度以达到了千兆,覆盖范围更是深入到生活中的角角落落。这就促使网上购物系统的发展。网上购物可以实现远程购物,远程选择喜欢的商品和随时追踪订单的状态。网上购物给人们带来前所未有的体验,满足了新时代人们的购物需求,所以网上购物模式得到大力发展。

    本系统为基于Javaweb的网上花店系统,是采用计算机和网络技术进行开发的在线购物平台,可以实现鲜花的展示、购买、评价以及留言等。本系统采用JAVA语言,数据库为Mysql,运行环境为Idea。使用角色分为注册用户、游客、管理员,本系统的功能包括公告信息、鲜花信息展示以及管理、注册用户管理、订单管理、鲜花评价、论坛、购物车管理等。其中,游客负责浏览信息,注册用户可以购买鲜花、评价鲜花、管理订单、在线论坛交流,管理员可以管理所有功能以及个人信息。本系统实现了鲜花的在线销售与购买,方便了购买者和销售者双方的利益,提高销量和购买效率,更符合现代人生活。


效果图

登录功能的界面实现

用户注册成功后,需要登录。登录界面设计的目的是保证当前的使用角色等级。管理员同样需要登录后才可以进行操作。用户登录和管理员登录的界面分为两个,在登录时只需要填写用户账号和密码就可以实现。用户登录的时候需要输入注册时候的账号密码,然后系统会自动的跟数据库存储好的数据进行信息比对,如果比对成功就可以成功登录,如果比对错误,那么会跳出来相应的错误提示 

 管理员登录的界面中包含的元素有系统题目、输入框、登录按钮。管理员登录的条件是需要账号、密码、身份。

 

管理员功能的设计实现

注册用户管理功能的实现界面

用户注册后的资料管理员可以在注册用户管理功能里看到,本功能设计的目的是审核注册用户的资料,当发现不当的使用用户可以删除其账号。当删除注册用户信息后相对应的用户信息表里的信息也会随着删除掉。

 

会员等级管理功能的实现界面

   本功能可以实现对会员的等级进行管理,不同的会员等级可以享受不同的优惠折扣。

 

公告信息管理功能的实现界面

   当管理员添加、编辑公告信息后,数据库表中的供应商信息表也会发生改变。

 

鲜花分类管理功能的实现界面

本功能可以管理鲜花的分类,实现鲜花的条理管理。

 

订单管理功能的实现界面

用户下订单后,管理员都可以在本功能里收到。当审核订单无误后可以进行下一步操作。然后可以安排发货,输入订单号。

 

鲜花信息管理功能的界面实现

   鲜花信息由管理员进行更新,在发布鲜花信息时可以显示发布时间。

 

论坛管理功能的界面实现

管理员可以查看论坛信息,然后可以进行回复。

 

用户角色功能的界面实现

鲜花浏览功能的界面实现

   用户的功能主要展示在前台,在前台可以浏览所有分类的鲜花。鲜花详情中主要展示鲜花的图片、价格、标题。

 

提交订单功能的实现界面

    选择鲜花点击购买可以跳转到提交订单界面,在本界面里需要填写收货地址。

订单管理功能的实现界面

用户在提交订单后可以在个人后台里看到订单后的订单信息,可以进行一定的修改。 

 

购物车管理功能的界面实现

用户可以在购物车里选择购买我清空。

收藏管理功能的界面实现

  用户可以把商品加入收藏,然后可以查看自己收藏的商品信息 

 


核心代码


package com.controller;


import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

import com.annotation.IgnoreAuth;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.entity.TokenEntity;
import com.entity.UserEntity;
import com.service.TokenService;
import com.service.UserService;
import com.utils.CommonUtil;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.ValidatorUtils;

/**
 * 登录相关
 */
@RequestMapping("users")
@RestController
public class UserController{
	
	@Autowired
	private UserService userService;
	
	@Autowired
	private TokenService tokenService;

	/**
	 * 登录
	 */
	@IgnoreAuth
	@PostMapping(value = "/login")
	public R login(String username, String password, String captcha, HttpServletRequest request) {
		UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
		if(user==null || !user.getPassword().equals(password)) {
			return R.error("账号或密码不正确");
		}
		String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
		return R.ok().put("token", token);
	}
	
	/**
	 * 注册
	 */
	@IgnoreAuth
	@PostMapping(value = "/register")
	public R register(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);
    	if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
    		return R.error("用户已存在");
    	}
        userService.insert(user);
        return R.ok();
    }

	/**
	 * 退出
	 */
	@GetMapping(value = "logout")
	public R logout(HttpServletRequest request) {
		request.getSession().invalidate();
		return R.ok("退出成功");
	}
	
	/**
     * 密码重置
     */
    @IgnoreAuth
	@RequestMapping(value = "/resetPass")
    public R resetPass(String username, HttpServletRequest request){
    	UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
    	if(user==null) {
    		return R.error("账号不存在");
    	}
    	user.setPassword("123456");
        userService.update(user,null);
        return R.ok("密码已重置为:123456");
    }
	
	/**
     * 列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,UserEntity user){
        EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
    	PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));
        return R.ok().put("data", page);
    }

	/**
     * 列表
     */
    @RequestMapping("/list")
    public R list( UserEntity user){
       	EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
      	ew.allEq(MPUtil.allEQMapPre( user, "user")); 
        return R.ok().put("data", userService.selectListView(ew));
    }

    /**
     * 信息
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") String id){
        UserEntity user = userService.selectById(id);
        return R.ok().put("data", user);
    }
    
    /**
     * 获取用户的session用户信息
     */
    @RequestMapping("/session")
    public R getCurrUser(HttpServletRequest request){
    	Long id = (Long)request.getSession().getAttribute("userId");
        UserEntity user = userService.selectById(id);
        return R.ok().put("data", user);
    }

    /**
     * 保存
     */
    @PostMapping("/save")
    public R save(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);
    	if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
    		return R.error("用户已存在");
    	}
        userService.insert(user);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody UserEntity user){
//        ValidatorUtils.validateEntity(user);
        userService.updateById(user);//全部更新
        return R.ok();
    }

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        userService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
}

文章目录

第1章 绪论  
1.1 研究背景与意义  
1.2 开发现状 
1.3 论文组成结构 
第2章 开发工具及相关技术介绍  
2.1 框架描述 
2.2 MySQL数据库 
2.3 JAVA语言 
第3章 系统分析  
3.1 可行性分析   
3.1.1 经济可行性 
3.1.2 技术可行性 
3.1.3 操作可行性 
3.2 功能性需求分析  
3.3 性能分析 
3.4 系统操作流程 
3.4.1 用户登录流程  
3.4.2 信息添加流程  
3.4.3 信息删除流程  
第4章 系统设计  
4.1 系统架构设计 
4.2 开发流程设计 
4.3 数据库设计   
4.3.1 实体ER图  
4.3.2 数据表 
第5章 系统实现  
5.1 管理员主要功能实现  
5.2 教师用户主要功能实现
5.3 学生用户主要功能实现
5.4 PC端主要功能实现
第6章 系统测试  
6.1 软件测试的概念  
6.2 软件测试过程 
6.3 系统测试阶段 
6.4 测试结果 
第7章 总结与展望
参考文献  
致谢  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值