• 2021 1 22 家庭web记账本 进度二


    家庭web记账本 进度二

    经验总结:

    1、用Chrome打开网页之后动态的效果没用,代码也看不出问题,就应该用F12打开网页编译器寻找错误

    2、jQuery的css函数对图层的可视性能进行操作

    3、js获取url参数问题,可以直接定义函数以便调用,

    4、

    登录之后的界面的添加流水的功能:

     1 <%@ page language="java" contentType="text/html; charset=UTF-8"
     2     pageEncoding="UTF-8" import = "java.util.*"%>
     3 <!DOCTYPE html>
     4 <html>
     5 <head>
     6 <meta charset="UTF-8">
     7 <title>Insert title here</title>
     8 <style type="text/css">
     9     #span1{
    10         visibility: hidden;
    11     }
    12 </style>
    13 </head>
    14 <script type="text/javascript" src="js/jquery-3.5.1.js"></script>  
    15 <script type="text/javascript">
    16     $(document).ready(function(){
    17         $("#add").click(function(){
    18             var a=$("#span1")
    19             a.css("visibility","visible");
    20             var TEMP=1
    21             /* $("#span1").text("")
    22             $("#span1").append("金额<input type='text'id='money'/>元<br><input  type='radio' id='pay' name='pay' value='1' checked='checked'> 支出 <input  type='radio' id='pay' name='pay' value='2'>收入<br>明细<input type='text'id='driction'/><br><input type='button'id='btn' value='提交'/><br> ") */
    23             $("#money").blur(function(){
    24                 var a=/^d{1,}$/
    25                 if(!(a.test($("#money").val()))){
    26                     alert("请输入正确的金额!")
    27                 }else{
    28                     TEMP=0
    29                 }
    30             })
    31             $("#btn").click(function(){
    32                 if(TEMP==0){
    33                     $.get(
    34                             "money_servlet",
    35                             {"money":$("#money").val(),"pay":$("#pay").val(),"driction":$("#driction").val(),"user":GetQueryString("name")},
    36                             function(resp){
    37                                 console.log(resp)
    38                                 var a=$("#span1")
    39                                 a.css("visibility","hidden");
    40                                 alert("添加成功!")
    41                             },
    42                             "json"
    43                         )
    44                     }
    45             })
    46         })
    47         
    48         function GetQueryString(name)
    49                 {
    50                      var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
    51                      var r = window.location.search.substr(1).match(reg);//search,查询?后面的参数,并匹配正则
    52                      if(r!=null)return  unescape(r[2]); return null;
    53                 } 
    54     })
    55 </script>
    56 <body>
    57     <div id="div1" align="center">
    58         <input type="button" value="添加新的账目" id="add" /><br>
    59         <span id="span1" >
    60             金额<input type='text'id='money'/><br>
    61             <input  type='radio' name='pay' value='1' checked='checked'> 支出 
    62             <input  type='radio' name='pay' value='2'>收入<br>
    63             明细<input type='text'id='driction'/><br>
    64             <input type='button'id='btn' value='提交'/><br> 
    65         </span>        
    66         <input type="button" value="查看账目记录" id="look"/>
    67     </div>
    68 </body>
    69 </html>

    后台的money_servlet:

     1 package servlet;
     2 
     3 import java.io.IOException;
     4 import java.io.PrintWriter;
     5 import java.sql.SQLException;
     6 
     7 import javax.servlet.ServletException;
     8 import javax.servlet.annotation.WebServlet;
     9 import javax.servlet.http.HttpServlet;
    10 import javax.servlet.http.HttpServletRequest;
    11 import javax.servlet.http.HttpServletResponse;
    12 
    13 import dao.dao;
    14 
    15 /**
    16  * Servlet implementation class money_servlet
    17  */
    18 @WebServlet("/money_servlet")
    19 public class money_servlet extends HttpServlet {
    20     private static final long serialVersionUID = 1L;
    21        
    22     /**
    23      * @see HttpServlet#HttpServlet()
    24      */
    25     public money_servlet() {
    26         super();
    27         // TODO Auto-generated constructor stub
    28     }
    29 
    30     /**
    31      * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
    32      */
    33     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    34         request.setCharacterEncoding("utf-8");
    35         response.setContentType("text/html;charset=utf-8");    
    36         dao p=new dao();
    37         PrintWriter out=response.getWriter();
    38         String money=null;
    39         String pay=null;
    40         String driction=null;
    41         String name=null;
    42         money=request.getParameter("money");
    43         pay=request.getParameter("pay");
    44         driction=request.getParameter("driction");
    45         name=request.getParameter("user");
    46         try {
    47             p.addmoney(money, pay, driction, name);
    48         } catch (SQLException e) {
    49             // TODO 自动生成的 catch 块
    50             e.printStackTrace();
    51         }
    52         String a="{"boolean":"true"}";
    53         out.println(a);
    54     }
    55 
    56     /**
    57      * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
    58      */
    59     protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    60         // TODO Auto-generated method stub
    61         doGet(request, response);
    62     }
    63 
    64 }

    dao层的相应的函数:

    public boolean addmoney(String money,String pay,String driction,String user) throws SQLException//add matter
        {
            Connection coon=getConnection();
            int row,temp=0;
            String sql;
            sql="insert into money(money,pay,driction,time,user)values(?,?,?,?,?)";//matters' name in table
            PreparedStatement b;
            Date date = new Date();
            SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
            String time = sf.format(date);
            try {
                b = coon.prepareStatement(sql);
                b.setString(1,money);
                b.setString(2,pay);
                b.setString(3,driction);
                b.setString(4,time);
                b.setString(5,user);
                row=b.executeUpdate();
                if(row<0) temp=1;
                b.close();
            } catch (SQLException e) {
                // TODO 自动生成的 catch 块
                e.printStackTrace();
            }
            coon.close();
            if(temp==0) return true;
            else return false;
        }

    mysql的相应表格:

  • 相关阅读:
    Qt:QT右键菜单
    Ubuntu 12.04安装字体
    在ubuntu下关闭笔记本触摸板
    SSL与TLS的区别以及介绍
    隔行扫描与逐行扫描的区别
    Linux下的绘图(流程图、UML、mindmap)工具
    RedHat Linux 下安装MPlayer 编译源代码方式
    循环数组实现队列的四种方式
    Linux内核spin_lock与spin_lock_irq分析
    Oracle 创建同义词
  • 原文地址:https://www.cnblogs.com/fuxw4971/p/14315095.html
Copyright © 2020-2023  润新知