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

举报
Bug 终结者 发表于 2023/02/01 15:36:32 2023/02/01
【摘要】 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);
	}
}

絮语

好了,需要源码的小伙伴评论区留言,今日的项目到此结束,每周一篇更新起来,看到这里的小伙伴赏给博主一个大大的赞吧,我们共同进步,虚心学习,努力钻研,成为更好的自己,我们下周见!

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。