正文之前

在学习了一段时间的Java Web的内容之后,当然需要有个项目来练练手,我相信大多数人的首选项目都是信息管理系统吧,所以我选择了商品信息管理系统

目前项目源码已全部上传至GitHub,欢迎大家来fork —— 商品信息管理系统


正文

项目构思

简易的管理系统,结构为 Servlet + JSP + MySQL,使用IntelliJ IDEA,搭建起了这个项目,源码中有很详细的注释,如果刚开始学习JavaWeb的内容,学一下Servlet,再搭配这个项目,岂不是美滋滋,有需要就拿去,如果能够有帮助,在fork的同时也赏一个Star吧!

接下来就介绍一下过程:

1. 数据库连接

在这个项目中,并不是单独编写Java程序来连接数据库,而是使用c3p0-config.xml文件来配置数据库连接池,使用 QueryRunner 来执行数据库操作

在运行项目之前,需要在图中所示文件中设置你自己的本地数据库名称和密码,否则,无法连接数据库

2. JAR文件

在构建项目时,需要导入所需的Library

3. 建表

在创建数据库时,也需要一张表来配合运行项目,在项目中也给出了这张表的结构

4. 建包

采用MVC设计模式,建包时我分成了这几个方面:

dao
page
product
service
servlet
以及在测试时的用例:demo

接下来介绍这几个包的内容:

  1. dao包:
    内含有一个Java文件:ProductDao,编写对于数据库的操作,增删改查之类

  2. page包:
    查询后的数据需要分页显示,否则看起来很麻烦,page包中包含有一个Java文件:PageBean,配合content.jsp文件将查询结果分页显示

  3. product包:
    内含有Product类,将商品的基本信息封装,便于其他类使用

  4. service包
    内含有一个Java文件:ProductService,实现了ProductDao类中定义的方法,并封装,降低程序中的代码重复性,更加简洁

  5. servlet包
    内含有ProductServlet,实现了ProductService类中定义的方法,并和JSP页面进行通信

  6. demo包
    在完成项目后,需要测试用例来进行测试

5. MVC模式

MVC模式:Model,View,Controller:

Model:ProductDao类,PageBean类和Product类作为基本的模型

View:JSP文件,系统的页面

Controller:ProductServlet,作为用户输入和数据库操作的控制者

这样就使得代码较为简洁

6. 运行前需要的准备

在Github上fork项目,并且clone至本地后,用IDEA打开,并按照这篇配置教程来配置web项目
【JavaWeb】IDEA如何创建及配置Web项目(多图)

配置后,将src目录下的 c3p0-config.xml 文件中的数据库信息改为自己的数据库信息,运行Tomcat,岂不是美滋滋。

7. 思维导图

结合这篇文章和项目根目录中的 README.md 文档,开始自己的JavaWeb之旅吧!

【Java Web】简易商品信息管理系统——首个Web项目的更多相关文章

  1. 简易商品信息管理系统——首个Web项目

    正文之前 在学习了一段时间的Java Web的内容之后,当然需要有个项目来练练手,我相信大多数人的首选项目都是信息管理系统吧,所以我选择了商品信息管理系统 目前项目源码已全部上传至GitHub,欢迎大 ...

  2. PHP基础示例:商品信息管理系统v1.1[转]

      实现目标:使用php和mysql写一个商品信息管理系统,并带有购物车功能 一.创建数据库和表 1.创建数据库和表:demodb 2.创建表格:goods 字段:商品编号,商品名称,商品类型,商品图 ...

  3. PHP基础示例:商品信息管理系统v1.1

    实现目标:使用php和mysql写一个商品信息管理系统,并带有购物车功能 一.创建数据库和表 1.创建数据库和表:demodb 2.创建表格:goods 字段:商品编号,商品名称,商品类型,商品图片, ...

  4. 用C语言制作小型商品信息管理系统过程中的问题

    大神请默默飘过... 以下是第一次制作时的源码: // 商品信息管理.cpp : 定义控制台应用程序的入口点. // // 小型商品信息管理系统.cpp : 定义控制台应用程序的入口点. // #in ...

  5. Java Swing设计简单商品信息管理系统(java swing+mysql+eclipse)

    一.概述 为了管理好商店库存信息,提升店铺管理工作效率,结合实际工作需要,设计和开发本系统,主要用于商店商品信息维护出入库等.包含商品库存信息查看.商品信息修改,新增商品信息,删除信息等功能. 二.功 ...

  6. 基于数据库MySQL的简易学生信息管理系统

    通过这几天学习Mysql数据库,对其也有了基本的了解,为了加深印象,于是就写了一个最简易的学生信息管理系统. 一:基本要求 1.通过已知用户名和密码进行登录: 2.可以显示菜单: 3.可以随时插入学生 ...

  7. Java用户名登录学生信息管理系统并对其进行增删改查操作

    package zzzzzzzz; import java.io.*;//作者:凯鲁嘎吉 - 博客园//http://www.cnblogs.com/kailugaji/ public class T ...

  8. Java课程设计---学生信息管理系统需求分析及总体设计

    按照软件工程实践的原则,开发大型程序需要经历需求分析.总体设计.详细设计.编码实现.系统测试.系统维护等几个阶段. 1.需求分析 本阶段是整个软件开发过程中最重要的环节.通过了解实际运行的系统或与用户 ...

  9. c#简易学生信息管理系统

    在近期的学习中,我们学习了泛型及泛型集合的概念和使用,泛型是c#中的一个重要概念,为了巩固我们学习的成果,我们可以使用一个实例来进行练习 题目及要求 要求使用Windows窗体应用程序,制作出如上图的 ...

随机推荐

  1. PAT B1037 在霍格沃兹找零钱

    AC代码 #include <cstdio> #include <algorithm> using namespace std; char flag = 0; //判断付钱数是 ...

  2. C# HttpWebRequest向远程地址Post文件

    HttpWebRequest向远程地址Post文件 /// <summary> /// 上传文件到远程服务器 /// </summary> /// <param name ...

  3. JS基础_对象的简介、对象的基本操作

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  4. 题解luoguP2054 BZOJ1965【[AHOI2005]洗牌】

    题目链接: https://www.luogu.org/problemnew/show/P2054 https://www.lydsy.com/JudgeOnline/problem.php?id=1 ...

  5. LeetCode 腾讯精选50题--有效的括号

    根据题意,第一反应就是使用栈,左右括号相匹配,则将左括号出栈,否则将左括号入栈. 这里我用数组配合“指针”模拟栈的入栈与出栈操作,初始时指针位置指向0,表示空栈,凡遇上左括号则直接入栈,若遇上有括号, ...

  6. vuex用法

    // 配置vuex的步骤 // 1. 运行 cnpm i vuex -S // 2. 导入包 import Vuex from 'vuex' // 3. 注册vuex到vue中 Vue.use(Vue ...

  7. 9 java 笔记

    1 所有的java对象都可以和字符串进行连接运算 2 在java中判断两个变量是否相等时:==运算符适用于基本类型的判断 3 JVM常量池保证相同的字符串直接量只有一个,不会产生多个相同的副本 4 O ...

  8. mac下JDK的安装路径

    苹果系统已经包含完整的J2SE,其中就有JDK和JVM(苹果叫VM).当然如果要升级JDK,那当然要自己下载安装了. 在MAC系统中,jdk的安装路径与windows不同,默认目录是:/System/ ...

  9. idea 党用快捷键

    实用快捷键: Ctrl+/ 或 Ctrl+Shift+/ 注释(// 或者/*...*/ )Ctrl+D 复制行Ctrl+X 删除行快速修复 alt+enter (modify/cast)代码提示 a ...

  10. 读micro8的一些记录与思考

    最近做了一段时间的攻击,个人对于整个攻击链相对来说还是比较熟悉.看了侯师傅的文章还是学到一些,做个备忘. 1.