首先陈列问题  (等待解决):

1. 界面是使用 H5   iframe 标签合并而成的,当窗口化之后点击任务栏,显示的内容会在任务栏的下边

希望可以找其他方式替代 (其他方法不熟练,不能应用)

如图:

2. 界面的布局不是很美观,需要学习一些和布局有关的插件

3.对于录入界面当前只是简单的手动录入,对于某些条件的限制没有添加,比如需要按照某种格式来添加信息,或者提供一个选择日期的表格等等都没有添加。

4.功能不是很多。需要继续增加,没有一般手机记事本那样的方便(希望界面紧凑一点,将那些文字换成图标)

制作的简单图形效果如下:

效果图如下:

dao 层:

 package com.Dao;

 import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List; import com.Bean.info;
import com.DBUtil.DBUtil; public class dao { public static void add(String name, String money, String place, String shijian) throws Exception {
Connection conn = DBUtil.getConn();
Statement state =null;
String sql="insert into info(name,money,place,shijian) values('"+name+"','"+money+"','"+place+"','"+shijian+"')";
state = conn.createStatement();
state.executeUpdate(sql);
DBUtil.close(state, conn); } public static List<info> show() throws Exception {
List<info> list= new ArrayList<>();
Connection conn=DBUtil.getConn();
Statement state=null; String sql="select * from info"; state = conn.createStatement();
ResultSet rs=state.executeQuery(sql);
info use=null;
while(rs.next()) {
//遍历获取的信息
String name=rs.getString("name");
String cost=rs.getString("money");
String place=rs.getString("place");
String time=rs.getString("shijian"); /*System.out.println(name);
System.out.println(cost);
System.out.println(place);
System.out.println(time);*/
use = new info(name, cost, place, time);
list.add(use);
} rs.close();
state.close();
conn.close();
return list;
} public static void update(String name, String money, String place, String shijian) throws Exception {
Connection conn=DBUtil.getConn();
Statement state=null;
String sql="update info set money='"+money+"',place='"+place+"',shijian='"+shijian+"' where name='"+name+"' ";
state=conn.createStatement();
state.executeUpdate(sql);
state.close();
conn.close();
} public static void delete(String name, String time) throws Exception {
Connection conn = DBUtil.getConn();
Statement state=null;
String sql="delete from info where name='"+name+"' and shijian='"+time+"'";
state=conn.createStatement();
state.executeUpdate(sql);
state.close();
conn.close(); } public static List<info> find(String type1, String info) throws Exception {
Connection conn = DBUtil.getConn();
List<info> list=new ArrayList<>();
Statement state=null;
String sql="select * from info where "+type1+" = '"+info+"'";
state=conn.createStatement();
ResultSet rs=state.executeQuery(sql);
info infos=null;
while(rs.next()) {
String name=rs.getString("name");
String money=rs.getString("money");
String place=rs.getString("place");
String time=rs.getString("shijian");
infos =new info(name,money,place,time);
list.add(infos);
}
return list;
} /*public static void main(String[] args) throws Exception {
dao.show();
}*/ }

Servt 层

 package com.Servlet;

 import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.List; import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import com.Bean.info;
import com.Dao.dao; /**
* Servlet implementation class MainServlet
*/
@WebServlet("/MainServlet")
public class MainServlet extends HttpServlet {
private static final long serialVersionUID = 1L; /**
* @see HttpServlet#HttpServlet()
*/
protected void service(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException
{
req.setCharacterEncoding("UTF-8"); String method = req.getParameter("method");
if(method.equals("add"))
{
try {
add(req,resp);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(method.equals("show"))
{
try {
show(req,resp);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(method.equals("update"))
{
try {
update(req,resp);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(method.equals("delete"))
{
try {
delete(req,resp);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(method.equals("find"))
{
try {
find(req,resp);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} } private void find(HttpServletRequest req, HttpServletResponse resp) throws Exception {
req.setCharacterEncoding("utf-8");
String type1=req.getParameter("type1");
String info=req.getParameter("find");
List<info> list =dao.find(type1,info);
req.setAttribute("list", list);
req.getRequestDispatcher("shownote.jsp").forward(req, resp); } private void delete(HttpServletRequest req, HttpServletResponse resp) throws Exception {
req.setCharacterEncoding("UTF-8");
String name=req.getParameter("name");
String time=req.getParameter("time");
System.out.println(name+time);
dao.delete(name,time); } private void update(HttpServletRequest req, HttpServletResponse resp) throws Exception { req.setCharacterEncoding("UTF-8");
String name=req.getParameter("name");
String money=req.getParameter("cost");
String place=req.getParameter("place");
String shijian=req.getParameter("time");
/*System.out.println(name);
System.out.println(money);
System.out.println(place);
System.out.println(shijian);*/
dao.update(name,money,place,shijian); //req.getRequestDispatcher("updatenote.jsp").forward(req, resp);
} private void show(HttpServletRequest req, HttpServletResponse resp) throws Exception {
req.setCharacterEncoding("UTF-8");
List<info> list =dao.show();
req.setAttribute("list", list);
req.getRequestDispatcher("shownote.jsp").forward(req, resp); } private void add(HttpServletRequest req, HttpServletResponse resp) throws Exception {
req.setCharacterEncoding("UTF-8"); String name=req.getParameter("name");
String money=req.getParameter("cost");
String place=req.getParameter("place");
String shijian=req.getParameter("time");
/*System.out.println(name);
System.out.println(money);
System.out.println(place);
System.out.println(shijian);*/
dao.add(name,money,place,shijian);
req.getRequestDispatcher("addnote.jsp").forward(req, resp);
} }

index.jsp

 <%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>账本管理</title> <style type="text/css"> .headframe{
width:100%;
height:130px;
border:0;
} .leftframe{
float:left;
width:250px;
height:600px;
border:0;
} .mainframe{
float:right;
width:1200px;
height:600px;
border:0;
} </style> <script type="text/javascript"> </script> </head>
<body onload="onload()">
</body> <iframe src="head.jsp" class="headframe" scrolling="no"></iframe>
<iframe src="MenuLeft.jsp" class="leftframe" scrolling="no"></iframe>
<iframe src="main.jsp" name="mainAction" class="mainframe"></iframe> </html>

show.jsp

 <%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>账单浏览</title>
</head> <body onload="onload()">
<div align="left">
<h1>账单浏览:</h1> <form action="MainServlet?method=show" method="post" >
<table border="1">
<tr>
<td>消费名称</td>
<td>消费金额</td>
<td>消费地点</td>
<td>消费时间</td>
<td align="center" colspan="1">操作</td>
</tr>
<c:forEach items="${list}" var="item">
<tr>
<td>${item.name}</td>
<td><a href="updatenote.jsp?name=${item.name}&money=${item.cost}&place=${item.place}&time=${item.time}">${item.cost}</a></td>
<td>${item.place}</td>
<td>${item.time}</td>
<td><a href="MainServlet?method=delete&name=${item.name }&time=${item.time}">删除账单</a></td>
</tr>
</c:forEach>
</table>
</form>
</div> </body>
</html>

2.15 使用web 编写一个简单记事本的更多相关文章

  1. 使用Java编写一个简单的Web的监控系统cpu利用率,cpu温度,总内存大小

    原文:http://www.jb51.net/article/75002.htm 这篇文章主要介绍了使用Java编写一个简单的Web的监控系统的例子,并且将重要信息转为XML通过网页前端显示,非常之实 ...

  2. 编写一个简单的Web Server

    编写一个简单的Web Server其实是轻而易举的.如果我们只是想托管一些HTML页面,我们可以这么实现: 在VS2013中创建一个C# 控制台程序 编写一个字符串扩展方法类,主要用于在URL中截取文 ...

  3. 用Python编写一个简单的Http Server

    用Python编写一个简单的Http Server Python内置了支持HTTP协议的模块,我们可以用来开发单机版功能较少的Web服务器.Python支持该功能的实现模块是BaseFTTPServe ...

  4. javascript编写一个简单的编译器(理解抽象语法树AST)

    javascript编写一个简单的编译器(理解抽象语法树AST) 编译器 是一种接收一段代码,然后把它转成一些其他一种机制.我们现在来做一个在一张纸上画出一条线,那么我们画出一条线需要定义的条件如下: ...

  5. 用 Go 编写一个简单的 WebSocket 推送服务

    用 Go 编写一个简单的 WebSocket 推送服务 本文中代码可以在 github.com/alfred-zhong/wserver 获取. 背景 最近拿到需求要在网页上展示报警信息.以往报警信息 ...

  6. 手把手教你编写一个简单的PHP模块形态的后门

    看到Freebuf 小编发表的用这个隐藏于PHP模块中的rootkit,就能持久接管服务器文章,很感兴趣,苦无作者没留下PoC,自己研究一番,有了此文 0×00. 引言 PHP是一个非常流行的web ...

  7. 用 C 语言编写一个简单的垃圾回收器

    人们似乎觉得编写垃圾回收机制是非常难的,是一种仅仅有少数智者和Hans Boehm(et al)才干理解的高深魔法.我觉得编写垃圾回收最难的地方就是内存分配,这和阅读K&R所写的malloc例 ...

  8. 如何编写一个简单的Linux驱动(二)——设备操作集file_operations

    前期知识 如何编写一个简单的Linux驱动(一)--驱动的基本框架 前言 在上一篇文章中,我们学习了驱动的基本框架.这一章,我们会在上一章代码的基础上,继续对驱动的框架进行完善.要下载上一篇文章的全部 ...

  9. 编写一个简单的C++程序

    编写一个简单的C++程序 每个C++程序都包含一个或多个函数(function),其中一个必须命名为main.操作系统通过调用main来运行C++程序.下面是一个非常简单的main函数,它什么也不干, ...

随机推荐

  1. 「TJOI2013」最长上升子序列

    「TJOI2013」最长上升子序列 传送门 这个 \(\text{DP}\) 应该都会撒: \[dp_i = \max_{j < i,a_j < a_i}\left\{dp_j\right ...

  2. 对于JAVA语言的一点理解

    java作为一门面向对象的语言,现在常常被用于企业服务器端的后台开发.同时,C语言可能更多地是用于嵌入式的开发,所谓的嵌入式就是航天飞机上的设备软件之类的东西.但是,我逐渐发现,我们平时所说的java ...

  3. Node.js 阻塞 回调函数

    回调例程 N所有API都支持回调函数,可以处理大量并发请求.回调函数一般作为最后一个参数出现: function foo1(name, age, callback){ } function foo2( ...

  4. git安装以及gitlib配置

    安装Git:详见http://www.cnblogs.com/xiuxingzhe/p/9300905.html 开通gitlab(开通需要咨询所在公司的gitlab管理员)账号后,本地Git仓库和g ...

  5. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 表格:将悬停的颜色应用在行或者单元格上

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

  6. JAVA 数据库操作工具类----sqllite

    package com.asc.db; import android.content.ContentValues; import android.content.Context; import and ...

  7. django 配置404,500页面

    JSP CURL session COOKIE diango 自定义404 500页面     1.首先将settings设置debug=false;             2.设置static路径 ...

  8. 0. GC 前置知识

    阅读<垃圾回收的算法与实现>时记录的一些笔记. 对象 在GC的世界中,对象表示的是"通过应用程序利用的数据的集合" 头 我们将对象中保存对象本身信息的部分称为头.头主要 ...

  9. centos查找文件\目录\内容命令

    1.查找文件 find / -name 'php.ini'12.查找目录 find / -name 'path' find / -name 'path' -type d13.查找内容 find . | ...

  10. keras人工神经网络构建入门

    //2019.07.29-301.Keras 是提供一些高度可用神经网络框架的 Python API ,能帮助你快速的构建和训练自己的深度学习模型,它的后端是 TensorFlow 或者 Theano ...