JavaWeb项目开发步骤
JavaWeb项目开发步骤
前言:跟着视频学习搭建实现smbms超市管理系统,学习到了很多关于项目实现的一些东西,这里关于javaWeb的smbms进行项目跟着做一遍后的感受,主要讲的是整体感观,记录学习以及发布分享
一、项目需求
1. 需要完成什么功能
- 定义实体类,编写入数据库mysql
- 具体实现功能(如一个超市管理系统)
2. 搭建项目
构建一个javaweb空项目,配置web.xml及pom.xml里面的依赖集
分层:
- Dao层:数据库连接及一些数据的处理
- filter层:过滤器,主要设置请求响应的编码问题
- pojo层(项目层):如放置一些实体类
- service层(业务层):业务层都会调用dao层,实现具体操作,如用户登录操作
- servlet层(控制层):调用业务层,一般用于请求转发或者重定向页面操作,和ui界面交互
- util层(常量层):定义一些常用的数据
- resources(资源文件):放置一些不变的一些数据,比如连接mysql的登录用户及密码属性等
- webapp(显示层):用于视图的效果,放置图片或者jsp,图片,css,js等前端页面样式等
3. 访问顺序
一般情况下:我们编写代码的顺序是上面箭头相反的路径,即
Dao层—>Service层—>Servlet层
即基本的三层架构:(连接数据库,具体业务,web界面)
三层架构通常意义上的三层架构就是将整个业务应用划分为:界面层、业务逻辑层、数据访
问层。区分层次的目的即为了“高内聚低耦合”的思想。在软件体系架构设计中,分层式结构
*是最常见,也是最重要的一种结构。*总体来讲,分层式结构利大于弊。
具体层次如图所示:
二、开发项目的细节
根据需求设计数据库,即需要哪些对象,表结构,命名规范,主键自增等问题考虑设计数据库
连接数据库,使用IDE进行数据库连接,也就是需要操作Dao层,可以编写一个公共类,进行数据库连接获取数据的一些基本操作
进行Dao层的一些数据获取操作,一般自定义一个接口,然后一个实现类,通常以Impl结尾
编写业务层,实现业务,一般自定义一个接口,然后一个实现类,通常以Impl结尾
实现servlet层,调用service层,然后根据需求获取数据展示到前端页面或者实现界面跳转
大概到现在这个位置,项目基本上就搭建好了,这里仅展示一个我自己跟着做的大概流程,具体的需实际开发部署
三、总结
- 这种稍微复杂的项目需要考虑的东西极多,完全自己做花费时间精力极多,若有相关别人已经实现过或者已经比较成熟的方法以及代码,或是基本开发步骤流程,对于新手可以进行借鉴
- 项目流程想要熟悉下来跟着做一遍是个不错的方法
- 边学的时候有一些相关扩展可以多加了解以及涉猎
- 做这个项目难度比较大,还需继续探索,不断学习,有学习动力以及目标,学起来才不会索然无味以及过快疲惫。
这里放两个连接,一个是狂神javaweb学习的链接:
https://www.bilibili.com/video/BV12J411M7Sj
另一个是本人新手仓库的链接:
https://gitee.com/he-ze__-an/projects
JavaWeb项目开发步骤相关推荐
- react项目开发步骤_成为专业React开发人员的31个步骤
react项目开发步骤 我为达到可雇用水平而进行的每个项目和课程. (Every single project and course I took to reach a hireable level. ...
- 20套初级javaweb项目开发案例(适合白小)——计算机毕业设计
20套javaweb项目开发案例,数据库是mysql.有jsp+servlet,ssh和ssm项目.纯项目源码,配套详细项目讲解说明.适合初学者使用.可以用作课题项目,期末作业等
- IDEA创建一个JavaWeb项目详细步骤
刚好最近在写数据库大作业任务书,留了一份,发在博客上 提前说明 使用IDEA+Html5+CSS+JavaWeb+MySql开发,并使用Tomcat部署在本地服务器上. 其中JDK版本为1.8, My ...
- Android app项目开发步骤总结
为什么80%的码农都做不了架构师?>>> 发布了android应用后,虽然功能初期比较简单,但是开发流程已经走通,这里总结项目的基本开发步骤,希望能够交流. 一 应用规划 确定 ...
- 使用Eclipse进行Javaweb项目开发时,如何设置外置浏览器Chrome
使用Eclipse开发Javaweb项目时,在Eclipse中显示页面不是很好,那么如何让它自动打开外置浏览器呢?操作如下
- EJB3.0高速入门项目开发步骤
EJB3.0开发步骤 1. 开发环境 IDE开发工具:Eclipse Java EE IDE for Web Developers EJB容器:jboss-4.2.3.GA 后台数据库:MysQL ...
- javaweb项目开发日志的原理,方式
2019独角兽企业重金招聘Python工程师标准>>> 日志框架可以做什么? 日志框架可以帮助各类项目人员,,记录各种项目运行时信息; 以便其,通过日志信息,了解和监控项目的状态,解 ...
- JavaWeb项目开发案例精粹-第6章报价管理系统-001需求分析及设计
1. 2. 3. 4. 5. 6. 转载于:https://www.cnblogs.com/shamgod/p/5323645.html
- javaweb项目开发案例
前言 我们说 Kafka 是一个消息队列,其实更加确切的说:是 Broker 这个核心部件.为何这么说?你会发现我们可以通过控制台. Java 代码. C++ 代码.甚至是 Socket 向 Brok ...
- JavaWeb项目开发案例精粹-第6章报价管理系统-07View层
1. 2.back_index.html 1 <HTML> 2 <HEAD> 3 <META HTTP-EQUIV="Content-Type" CO ...
最新文章
- vue-router使用入门
- 就mysql command line client刚输入密码立马闪一下退出问题的解决方案
- 【 Linux 】单台服务器上并发TCP连接数(转)
- python 浏览器显示本地文件夹_浏览器读取本地文件
- 【转】DICOM的常用Tag分类和说明
- python绘制矩形图_Python。在底图中绘制矩形
- window添加右键菜单
- postgresql null 值 不受查询条件约束
- rsa算法的java实现,RSA算法的实现——java版
- 如何用计算机录视频,如何用电脑录视频?
- 2020年4月github上最热门项目-python
- pygame坦克大战
- e.Row.RowType == DataControlRowType.DataRow诠释(实例解释)转自孤舟济海,云卷云舒
- 每日一句api Android,Android 图文数据JSON解析,金山词霸每日一句API的调用
- 【Python】关于DataFrame数据类型二三事
- 怎样用好CorelDRAW中的位图颜色遮罩
- 机器学习数据集(Dataset)汇总
- 红孩子副总裁张惠珉:依靠核心竞争力去并购
- 一文详解AIGC:推动元宇宙发展的加速器
- 判断是pc还是移动端浏览器