### 项目概述
**本项目为一个记账系统,实现用户进行注册登录后,进入主页面,对个人账单数据进行增啥改查,并提供丰富的查询聚合统计功能。**
**项目主要用到JSP做页面展示,使用Servlet,作为做后端数据的处理工作,使用MySql作为数据存储,项目采用标准的MVC架构实现即”模型-视图-控制器“三层架构实现(View--->Controler--->Service--->Dao),开发者可以通过个人需求对页面内容进行分层开发。**
**主要采用技术:**
**前端:bootstrap,javascript,JQuery,html,css**
**后端:Java,SQL,servlet**
### 1.需求说明
**1.用户注册**
用户注册提交表单后需要进行数据的校验功能,输入框不能为空,两次输入的密码必须一致,用户名和密码长度符合需求。
**2.用户登录**
用户输入个人正确的账号密码进入主页。输入数据必须不能为空,且必须符合长度规范才能提交。
**3.用户主页**
用户进入主页后,根据用户的个人ID,在账务数据库中查询,只属于个人的账户信息,并在页面左侧边栏显示账务的聚合信息,在中间部分主页显示具体的数据表单。
**4.用户数据查询**
显示所有数据,当用户进入主页后,直接根据用户ID查询当前用户的所有账务信息,并显示在页面,用户点击类型或时间查询,弹出对应的模态框,用户根据模态框的提示信息,填写对应格式的数据,如果数据格式不匹配,则表单无法进行提交。
**5.用户删除数据**
当用户点击对应信息的删除按钮,弹出模态框,提示用户是否确认删除当前信息,用户点击确认后,则将当前数据删除,并自动刷新当前页面
**6.用户新增数据**
当用户点击新增数据时,弹出对应新增数据表单,用户根据提示信息,将正确的内容输入,点击提交按钮即可提交数据,如果用户输入的数据不符合规范,页面弹出对应的提示,让用户填写符合格式的数据。
**7.用户修改数据**
当用户点击对应数据的修改按钮时,当前数据的信息回显到,修改数据模态框中,用户根据个人情况对数据进行修改,并且提交的数据必须是符合规范的,如果数据不符合格式要求,提示用户填写正确格式的数据。
**8.用户退出登录**
当用户退出登录后,用户不可通过返回页面继续修改页面数据,实现方式为,当用户点击 退出按钮,就销毁当前session,用户无法再修改数据。
### 3.项目展示
#### 1.登录页面
![image-20230319155848386](https://pic-1313413291.cos.ap-nanjing.myqcloud.com/image-20230414231510732.png)
#### 2.注册页面
![image-20230414231527743](https://pic-1313413291.cos.ap-nanjing.myqcloud.com/image-20230414231527743.png)
#### 3.主页面
![image-20230319155935318](https://pic-1313413291.cos.ap-nanjing.myqcloud.com/image-20230319155935318.png)
#### 4.增删改查模态框
![image-20230319155957094](https://pic-1313413291.cos.ap-nanjing.myqcloud.com/image-20230319155957094.png)
![image-20230319160027208](https://pic-1313413291.cos.ap-nanjing.myqcloud.com/image-20230319160027208.png)
![image-20230319160048627](https://pic-1313413291.cos.ap-nanjing.myqcloud.com/image-20230319160048627.png)
![image-20230319160107824](https://pic-1313413291.cos.ap-nanjing.myqcloud.com/image-20230319160107824.png)
![image-20230319160128063](https://pic-1313413291.cos.ap-nanjing.myqcloud.com/image-20230319160128063.png)
### 4.运行环境说明
MySql:5.7版本
Tomcat:7(使用Maven插件,在Pom.xml文件中配置即可使用,无需个人下载)
JDK:1.8版本
### 5.开发问题
#### **1.servlet如何向另外一个servlet传值?**
将数据放入到对应的请求体中,通过页面的转发和重定向可以实现,两个servlrt的数据传输
```
request.setAttribute("list",zhangWu);
request.getAttribute("list",zhangWu);
```
#### **2.servlet如何向JSP页面传值?**
1.servlet将数据放入到session中,jsp页面可以从session获取数据
2.Servlet将数据放到请求体重,并进行转发
```java
request.setAttribute("data", "this is a data to send");
request.getRequestDispatcher("next.jsp").forward(request, response);
```
#### **3.JSP如何向Servlet传值?**
1.form表单
2.URL 发送get请求即可
3.session:jsp页面直接将数据存入到session中就可以了
#### **4.JS如何将数据回显到修改模态框中**
下面是本项目的表单回显
主要说明:
1.获取到需要回显的值
2.将数据打包成一个对象
3.普通数据回显根据dom的name直接将数据写回
```
$("#money1").attr("value",strings1[2]);
```
4.下拉菜单回显
遍历下拉菜单的元素信息,当信息与当前相等的时候进行数据回显即可
```
let options = document.getElementById("xiaofei").options;
for(let i = 0;i<options.length;i++){
if(options[i].value==strings1[1]){//根据id选中阿里
options[i].selected = true;
}
}
```
```
<script type="text/javascript">
var Zhanghu=new Object();
function upimg(id){
var res=id;
//将当前ID数据传递给删除模态框提交到servlet中
var box = document.getElementById("s")
box.innerText=res
//box1.innerText=res
//将id值传给input标签
$("#imgtalk").attr("value",res);
$("#imgtalk1").attr("value",res);
var attribute = document.getElementById(id).getAttribute("value");
console.log(attribute)
var strings1 = attribute.split("=");
console.log(strings1[0]);
Zhanghu.zwid=strings1[0];
Zhanghu.flname=strings1[1];
Zhanghu.money=strings1[2];
Zhanghu.zhanghu=strings1[3];
Zhanghu.createtime=strings1[4];
Zhanghu.description=strings1[5];
Zhanghu.userid=strings1[6];
huixian(strings1);
}
function huixian(strings1){
console.log(strings1[0]);
console.log(strings1[1]);
$("#money1").attr("value",strings1[2]);
$("#type1").attr("value",strings1[3]);
$("#time1").attr("value",strings1[4]);
$("#desc").attr("value",strings1[5]);
let options = document.getElementById("xiaofei").options;
for(let i = 0;i<options.length;i++){
if(options[i].value==strings1[1]){//根据id选中阿里
options[i].selected = true;
}
}
let options1 = document.getElementById("type1").options;
for(let i = 0;i<options.length;i++){
if(options1[i].value==strings1[3]){//根据id选中阿里
options1[i].selected = true;
}
}
}
</script>
```
#### 5.如何向JSP页面直接写数据
这应该是最直接的写入方式
```
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
request.setCharacterEncoding("utf-8");//解决中文乱码的问题
String name = request.getParameter("uname");
String password = request.getParameter("pwd");
String sex = request.getParameter("sex");
String []favour = request.getParameterValues("duo");
String email = request.getParameter("email");
%>
<p>账号:<%=name %></p>
<p>密码:<%=password %></p>
<p>性别:<%=sex %></p>
爱好:
<%
/* for(String c : favour){
out.println(c + " ");
}
*/
for(int i = 0 ; i < favour.length ; i++){
String message = favour[i];
out.print(message+" ");
}
%>
<p>邮箱:<%=email %></p>
</body>
</html>
```
#### 6.maven中tomcat7插件配置的问题?
不能在</pluginManagement>标签内引入
```
<plugins>
没有合适的资源?快使用搜索试试~ 我知道了~
Javaweb项目之记账系统项目源码带视频教程
共113个文件
class:48个
java:24个
xml:13个
1 下载量 60 浏览量
2024-06-16
21:14:52
上传
评论 1
收藏 67.74MB ZIP 举报
温馨提示
Javaweb项目之记账系统项目源码带视频教程,实现用户进行注册登录后,进入主页面,对个人账单数据进行增啥改查,并提供丰富的查询聚合统计功能。 项目主要用到JSP做页面展示,使用Servlet,作为做后端数据的处理工作,使用MySql作为数据存储,项目采用标准的MVC架构实现即”模型-视图-控制器“三层架构实现(View--->Controler--->Service--->Dao),开发者可以通过个人需求对页面内容进行分层开发。 主要采用技术: 前端:bootstrap,javascript,JQuery,html,css 后端:Java,SQL,servlet
资源推荐
资源详情
资源评论
收起资源包目录
Javaweb项目之记账系统项目源码带视频教程 (113个子文件)
ZhangWuDaoimpl.class 6KB
ZhangWuDaoimpl.class 6KB
ZhangHuShowServlet.class 5KB
ZhangHuShowServlet.class 5KB
LeftList.class 4KB
LeftList.class 4KB
UpZhangWuServlet.class 3KB
UpZhangWuServlet.class 3KB
AddListServlet.class 3KB
AddListServlet.class 3KB
ZhangWuServiceImpl.class 3KB
ZhangWuServiceImpl.class 3KB
SelectAllZhangHuServlet.class 3KB
SelectAllZhangHuServlet.class 3KB
SelectTimeServlet.class 3KB
SelectTimeServlet.class 3KB
RegisterServlet.class 3KB
RegisterServlet.class 3KB
SelectTwoDayServlet.class 3KB
SelectTwoDayServlet.class 3KB
LoginUserServlet.class 2KB
LoginUserServlet.class 2KB
ZhangWu.class 2KB
ZhangWu.class 2KB
DeleteZhangWuServlet.class 2KB
DeleteZhangWuServlet.class 2KB
SelectTypeServlet.class 2KB
SelectTypeServlet.class 2KB
UserDaoImpl.class 2KB
UserDaoImpl.class 2KB
LoginFilter.class 2KB
LoginFilter.class 2KB
User.class 2KB
User.class 2KB
ExitServlet.class 1KB
ExitServlet.class 1KB
JDBCUtils.class 1KB
JDBCUtils.class 1KB
UserServiceImpl.class 1019B
UserServiceImpl.class 1019B
ZhangWuService.class 962B
ZhangWuService.class 962B
ZhangWuDao.class 949B
ZhangWuDao.class 949B
UserService.class 285B
UserService.class 285B
UserDao.class 273B
UserDao.class 273B
.gitignore 223B
gjpd.iml 80B
gjpd.iml 80B
mysql-connector-java-5.1.47.jar 984KB
jstl-1.2.jar 405KB
standard-1.1.2.jar 384KB
junit-4.11.jar 239KB
commons-dbcp-1.4.jar 157KB
commons-pool-1.5.6.jar 98KB
commons-dbutils-1.6.jar 76KB
hamcrest-core-1.3.jar 44KB
ZhangWuDaoimpl.java 6KB
ZhangHuShowServlet.java 4KB
LeftList.java 4KB
AddListServlet.java 2KB
UpZhangWuServlet.java 2KB
ZhangWuServiceImpl.java 2KB
ZhangWu.java 2KB
LoginFilter.java 2KB
RegisterServlet.java 2KB
SelectAllZhangHuServlet.java 2KB
UserDaoImpl.java 2KB
SelectTypeServlet.java 2KB
LoginUserServlet.java 2KB
SelectTwoDayServlet.java 2KB
SelectTimeServlet.java 2KB
User.java 2KB
DeleteZhangWuServlet.java 1KB
JDBCUtils.java 946B
ExitServlet.java 790B
ZhangWuDao.java 714B
ZhangWuService.java 693B
UserServiceImpl.java 633B
UserDao.java 375B
UserService.java 236B
list.jsp 30KB
list.jsp 30KB
login.jsp 7KB
login.jsp 7KB
register.jsp 6KB
register.jsp 6KB
LICENSE 9KB
inputFiles.lst 2KB
createdFiles.lst 1008B
README.md 18KB
information_schema.FNRwLQ.meta 76B
管家婆项目展示.mp4 64.34MB
pom.properties 88B
gjp.sql 13KB
gjp.sql 13KB
gjpd.war 2.19MB
gjpd.war 2.18MB
共 113 条
- 1
- 2
资源评论
酷爱码
- 粉丝: 8728
- 资源: 1901
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功