“综合”web项目编写------手把手0基础教学(一)

news2025/2/28 11:20:23

我们平常看到的项目代码一般都是分段单独的功能,但如何将功能汇总成一个完整的项目呢,下面我将利用IDEA来介绍一个基础的综合web项目

目录

一.创建项目

二.为项目建包

1.了解构建项目的思路

(1)构建模型(模型包括数据模型和功能模型)

(2)编写视图

(3)编写控制器

(4)创建工具包until

2.开始构建包

 三.创建数据库,数据表

 四.编写程序,实现具体功能

1.数据模型的构建


一.创建项目

打开IDEA,我们首先要新建一个项目文件,如图 :

 

二.为项目建包

我们在最开始编写项目时,要创建一系列的包来为以后写程序做铺垫,可能会比较麻烦,建好后后续写代码时结构会很清晰

1.了解构建项目的思路

(1)构建模型(模型包括数据模型和功能模型)

数据模型:构建实体类,创建entity包,我们把数据库中的数据转化为项目中可操作的Java对象

功能模型:构建dao包,里面存放Java对象可以实现的功能

(2)编写视图

视图即客户端页面,jsp页面,放在web文件夹下

(3)编写控制器

构建servlet包,编写控制器即编写servlet,用来连接客户端和模型

(4)创建工具包until

一个项目总有很多要重复使用的功能,比如连接数据库,我们在工具包里存放要重复使用很多次的代码,避免重复写

2.开始构建包

如图:

 三.创建数据库,数据表

我们可以通过sql语句对数据库等信息进行创建,也可以通过客户端。我们对系统的数据建表。

这里我们创建一个users表,里面存放id,userName,userPwd属性,如图示:

 四.编写程序,实现具体功能

我们前面几步已经做好了前期准备,下面就可以开始实现具体的功能

这次介绍的项目仅能实现用户基本的登录,用户信息的编辑删除,账号注销等基础功能

下面将分开介绍具体实现

1.数据模型的构建

编写entity包,创建实体类

实体类是根据数据表进行创建的,我们在先前的数据库中构建了一个users表,那么我们可以相应的构建用户(user)类

用户类此时实现序列化接口,然后据数据库中的表定义属性,自动生成方法getter()和setter()

具体代码和注释如下:

package com.my.entity;

import java.io.Serializable;

//Serializable是序列化接口,实现序列化是为了数据库表中的每一条数据保存到对象中,不再在控制台输出,在客户端显示

public class Users implements Serializable {//实现一个序列化接口
    //属性:
    //根据数据库表中的属性构建
     private Integer id;
     private String userName;
     private String userPwd;
    //方法:getter和setter方法,alt+insert自动生成
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getUserName() {
        return userName;
    }
    public void setUserName(String userName) {
        this.userName = userName;
    }
    public String getUserPwd() {
        return userPwd;
    }
    public void setUserPwd(String userPwd) {
        this.userPwd = userPwd;
    }
}

构建完数据模型,接下来该构建功能模型......

本文到此结束,下一篇将继续介绍后续代码实现!👀👀👀

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/9516.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

集线器与交换机、虚拟局域网(3.3)

集线器与交换机 传输门:b站湖科大教书匠 集线器 使用集线器的以太网或者局域网其实本质还是一个总线网 工作方式 集线器只工作在物理层,每个接口仅仅用来转发比特,不进行碰撞检测(不使用CSMA/CD协议),由…

如何自定义代码生成器(上)

1 概述 1.1 介绍 ​ 在项目开发过程中,有很多业务模块的代码是具有一定规律性的,例如controller控制器、service接口、service实现类、mapper接口、model实体类等等,这部分代码可以使用代码生成器生成,我们就可以将更多的时间放…

深度学习中激活函数的用途

深度学习中激活函数的概念 激活函数,即Activation Function,有时候也称作激励函数。它是为了解决线性不可分的问题引出的。但是也不是说线性可分就不能用激活函数,也是可以的。它的目的是为了使数据更好的展现出我们想要的效果。激活函数是一种非线性的…

SAP UI5 SmartTable 控件本地运行时进行 Excel 导出的单步调试

点击 SmartTable 控件生成的表格控件的 Export to Excel 时,遇到如下错误消息: The following error has occurred during export: Unexpected server response: SmartTable 基于的是 OData V4 的模型了: Excel export 操作,触发的…

接口(上)

🐷1.接口的概念 🐱‍🚀2.接口的语法规则 💚3.接口的使用 🚀4.接口的特性 🎆5.实现多个接口 🐶6.接口间的继承 🎊7.接口使用的实例 1.什么是接口呢??&a…

【https】lighttpd增加https支持及openssl生成CA(Certificate Authority)和使用CA来制作签名证书操作说明

环境说明 ubuntu18.04.1、openssl指令需要支持 openssl生成CA(Certificate Authority) 生成RSA Private Key openssl genrsa -out ca.key 输出信息 $ openssl genrsa -out ca.key Generating RSA private key, 2048 bit long modulus (2 primes) ...…

Scala008--Scala中的数据结构【集合】

目录 一,概述 二,set的声明 1,不可变set集合 1)向不可变集合中添加元素 【需要新的set集合接收】 2)对两个set集合进行合并 【需要新的set集合接收】 2,不可变的HashSet集合 2,可变HashSet集合 1&…

http-only原理与防御XSS实践

目录预备知识XSS攻击实验目的实验环境实验步骤一触发XSS漏洞实验步骤二引入Http-only实验步骤三验证http–only在防御XSS攻击时的作用预备知识 XSS攻击 http-only的设计主要是用来防御XSS攻击,所以学习本实验的读者应首先了解XSS攻击的相关原理内容。 跨站点脚本攻…

Vue 2 如何添加 register-service-worker 以实现缓存请求的目的

Vue 2 如何添加 register-service-worker 以实现缓存请求的目的 一、问题描述 现在 vue 3 的模板中是自带 register-service-worker 的。 用这个的好处是,它会自动将项目中的所有文件请求缓存到 service-worker 中,以实现再次打开网站的时候会非常非常…

2023最新SSM计算机毕业设计选题大全(附源码+LW)之java校园二手物品交易系统051x4

做毕业设计一定要选好题目。毕设想简单,其实很简单。这里给几点建议: 1:首先,学会收集整理,年年专业都一样,岁岁毕业人不同。很多人在做毕业设计的时候,都犯了一个错误,那就是不借鉴…

HTB-Tier1

HTB-Tier1 Appointment Task 1 What does the acronym SQL stand for? ********** ***** *******e Structured Query Language Hide Answer Task 2 What is one of the most common type of SQL vulnerabilities? *** ********n sql injection Hide Answer Task …

汉字风格迁移篇----EasyFont:一个基于风格学习的系统,可以轻松构建大规模手写字体

文章目录abstract1 INTRODUCTION2 RELATED WORK3 METHOD DESCRIPTION3.1 Selecting Input Character Set3.2 Learning Font Skeleton Manifold3.2.1 Character Matching.3.2.2 Training the GP-LVM3.3 Text Segmentation3.4 Stroke Extraction3.5 Overall Style Learning3.5.1 …

UNet - 数据加载 Dataset

目录 1. 介绍 2. 数据处理 dataset 2.1 预处理 2.2 加载数据 2.2.1 初始化 2.2.2 返回数据 2.2.3 样本数量 3. 测试一下 4. 完整代码 1. 介绍 之前介绍完了Unet网络的搭建,接下来说一下要解决的任务。 本章介绍的是:数据的加载处理 下面是整…

hadoop 3.3大数据集群搭建系列1-安装hadoop

文章目录一. 软硬件配置1.1 主机配置及规划1.2 软件配置1.3 安装常用的工具二. 安装前准备2.1 设置主机名2.2 设置hosts2.3 关闭防火墙2.4 ssh免密登陆2.5 ntpdate时间同步三. 安装3.1 安装hadoop3.1.1 下载hadoop并解压3.1.2 配置hadoop_home环境变量3.1.3 编辑etc/hadoop/had…

【毕业设计】图像识别垃圾分类系统 - python 深度学习

文章目录0 前言1 简介2 识别效果3 实现3.1 数据集3.2 实现原理和方法3.3 网络结构4 最后0 前言 🔥 Hi,大家好,这里是丹成学长的毕设系列文章! 🔥 对毕设有任何疑问都可以问学长哦! 这两年开始,各个学校对…

信息熵,交叉熵,KL散度,互信息一网打尽

talk 一直以来都是自己有时候 想去搞明白就搜搜博客看,模棱两可,记忆也比较模糊,这次直接较为系统的记录一下,之后忘了也能看看~ 1. 信息熵 这个概念是从信息论出现的,是香农定义的,根据事件发生的概率进…

excel怎么设置密码?加密文件这么做!

我们都知道,很多时候需要我们在电脑上保存很多excel文件。为了避免在工作中出现意外,我们需要在文件中设置一个安全密码。那么,电子表格excel怎么设置密码呢?如果我们设置了密码,想要取消原本的密码或者重新设置一个密…

Windows无法启动这个硬件设备(代码19)怎么办?

在我们使用电脑的过程中,遇到“由于其配置信息(注册表中的)不完整或已损坏,Windows无法启动这个硬件设备(代码19)”的提示时该如何解决呢? Windows无法启动这个硬件设备(代码19),如何…

干货整理| 深度学习入门知识

一、深度学习的定义 深度学习(Deep Learning),简称:DL,是一种实现机器学习的技术。 人工智能(AI)的概念是在1955 年提出的;机器学习(ML)概念是在1990 年提出…

springboot 整合clickhouse

最近需要做一个项目 需要整合clickhouse 本来有现成的项目,复制一下就好了。但是想自己从头开始一个个文件搭建 但是还是遇到了很多坑, 这就是传说中的约定优于配置吗 1 首先第一步application启动的时候 启动完了,就会退出&#xff0c…