MySQL+JavaWeb+Druid连接池实现简单的商品管理系统(超详细滴~)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: MySQL+JavaWeb+Druid连接池实现简单的商品管理系统(超详细滴~)
Hello,大家好,一周一更到了,今日专题:一个简单的商品管理系统,下面就开始步入正题

技术栈:JavaWeb+MySQL+Druid连接池

准备

sql数据表

用户表:

CREATE TABLE `t_user` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `username` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `password` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci

商品表

CREATE TABLE `t_goods` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `buyer_name` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `buyer_phone` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `goods_name` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL,
  `buy_count` int(11) DEFAULT NULL,
  `goods_price` decimal(10,2) DEFAULT NULL,
  `buyer_addr` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `goods_sum_price` decimal(10,3) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci

@TOC

简介

该系统基于JavaWeb,数据库MySQL
系统采用三层架构编写,即web层,service层,dao层
系统主要功能:注册,登录,增删改查商品,列表页支持多条件搜索

Druid简介

DRUID是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0、DBCP、PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,据说是目前最好的连接池。

使用druid需要导入jar包

项目结构
在这里插入图片描述
源码结构:
在这里插入图片描述

效果展示

注册页

在这里插入图片描述

点击注册后跳转至登录页
在这里插入图片描述
登录外加了防跳墙功能,即在未登录时访问主页自动定向到登录页

添加商品:
在这里插入图片描述
添加完毕商品后自动跳转至商品列表页
在这里插入图片描述
搜索姓李的买家的订单
在这里插入图片描述

项目部分代码

UserDao

    public interface UserDao {

    /**
     * 将用户名,密码保存至数据库
     * @param username
     * @param userpass
     */
    void save(String username, String password);
    
    /**
     * 查询用户是否存在
     * @param username
     * @param password
     * @return
     */
    User queryByUser(String username, String password);
}

UserDaoImpl实现类:

public class UserDaoImpl implements UserDao{

    @Override
    public void save(String username, String password) {
        // TODO Auto-generated method stub
        //拼接sql语句,保存用户名与密码
        String sql = "insert into t_user(username, password) values(?, ?)";
        try {
            QueryRunner qur = DBConnUtil.initQueryRunner();
            qur.execute(sql, username, password);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    @Override
    public User queryByUser(String username, String password) {
        // TODO Auto-generated method stub
        User user = null;
        try {
            String sql = "select * from t_user where username = ? and password = ?";
            QueryRunner qur = DBConnUtil.initQueryRunner();
            user = qur.query(sql, new BeanHandler<User>(User.class), username, password);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return user;
    }

}

UserService:

public interface UserService {

    void save(String username, String password);
    
    User queryByUser(String username, String password);
}

UserServiceImpl

public class UserServiceImpl implements UserService{
    
    UserDao userDao = new UserDaoImpl();

    @Override
    public void save(String username, String password) {
        // TODO Auto-generated method stub
        //直接调用dao层, 将用户名,密码保存
        userDao.save(username, password);
    }

    @Override
    public User queryByUser(String username, String password) {
        // TODO Auto-generated method stub
        return userDao.queryByUser(username, password);
    }
}

絮语

好了,需要源码的小伙伴评论区留言,今日的项目到此结束,每周一篇更新起来,看到这里的小伙伴赏给博主一个大大的赞吧,我们共同进步,虚心学习,努力钻研,成为更好的自己,我们下周见!
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
安全 关系型数据库 MySQL
如何将数据从MySQL同步到其他系统
【10月更文挑战第17天】如何将数据从MySQL同步到其他系统
176 0
|
25天前
|
关系型数据库 MySQL Linux
Linux系统如何设置自启动服务在MySQL数据库启动后执行?
【10月更文挑战第25天】Linux系统如何设置自启动服务在MySQL数据库启动后执行?
70 3
|
1月前
|
存储 关系型数据库 MySQL
PACS系统 中 dicom 文件在mysql 8.0 数据库中的 存储和读取(pydicom 库使用)
PACS系统 中 dicom 文件在mysql 8.0 数据库中的 存储和读取(pydicom 库使用)
34 2
|
1月前
|
Ubuntu 关系型数据库 MySQL
Linux系统MySQL安装
【10月更文挑战第19天】本文介绍了在 Linux 系统上安装 MySQL 的步骤,包括安装前准备、安装 MySQL、启动 MySQL 服务、配置 MySQL 以及验证安装。适用于 Ubuntu/Debian 和 CentOS/Fedora 系统,提供了详细的命令示例。
186 1
|
1月前
|
SQL JSON 关系型数据库
MySQL是一个广泛使用的开源关系型数据库管理系统,它有许多不同的版本
【10月更文挑战第3天】MySQL是一个广泛使用的开源关系型数据库管理系统,它有许多不同的版本
149 5
|
1月前
|
关系型数据库 MySQL Linux
Linux系统绿色安装MySQL 8.0.39
Linux系统绿色安装MySQL 8.0.39
|
2月前
|
SQL 关系型数据库 MySQL
JavaWeb基础1——MySQL
SQL语句、DDL、DML、DQL(分组查询、子查询等)、Navicat、约束、 一对多等数据库设计、多表查询(联合查询/连接查询)、事务、函数
JavaWeb基础1——MySQL
|
1月前
|
关系型数据库 Unix MySQL
MySQL是一种关系型数据库管理系统
MySQL是一种关系型数据库管理系统
45 2
|
2月前
|
数据采集 中间件 关系型数据库
Mac系统通过brew安装mysql5.7后,启动报错的解决办法
Mac系统通过brew安装mysql5.7后,启动报错的解决办法
|
1月前
|
关系型数据库 MySQL Linux
Navicat 连接 Windows、Linux系统下的MySQL 各种错误,修改密码。
使用Navicat连接Windows和Linux系统下的MySQL时可能遇到的四种错误及其解决方法,包括错误代码2003、1045和2013,以及如何修改MySQL密码。
219 0
下一篇
无影云桌面