wishes.jsp
上传用户:shjgzm
上传日期:2017-08-31
资源大小:2757k
文件大小:5k
源码类别:

Ajax

开发平台:

Java

  1. <%@ page contentType="text/plain; charset=UTF-8"%>
  2. <%@ page language="java"%>
  3. <%@ page import="java.sql.*,ajax.db.DBUtils,org.json.simple.JSONObject,org.json.simple.JSONArray"%>
  4. <%!
  5.     //取得所有愿望
  6.     String getWishes() {
  7.         JSONArray array = new JSONArray();      //声明JSON数组
  8.         String sql = "select id, username, wish, wishtime, colorsuit from wishes order by id asc";   //定义查询数据库的SQL语句
  9.         Connection conn = null;                 //声明Connection对象
  10.         PreparedStatement pstmt = null;         //声明PreparedStatement对象
  11.         ResultSet rs = null;                    //声明ResultSet对象
  12.         try {
  13.             conn = DBUtils.getConnection();     //获取数据库连接
  14.             pstmt = conn.prepareStatement(sql); //根据sql创建PreparedStatement
  15.             rs = pstmt.executeQuery();
  16.             while (rs.next()) {
  17.                 //使用数据库结果集生成JSON对象,并加入到JSON数组中
  18.                 JSONObject obj = new JSONObject();
  19.                 obj.put("id", rs.getString(1));
  20.                 obj.put("username", rs.getString(2));
  21.                 obj.put("wish", rs.getString(3));
  22.                 obj.put("wishtime", rs.getString(4));
  23.                 obj.put("colorsuit", new Integer(rs.getInt(5)));
  24.                 array.add(obj);
  25.             }
  26.         } catch (SQLException e) {
  27.             System.out.println(e.toString());
  28.         } finally {
  29.             DBUtils.close(rs);                  //关闭结果集
  30.             DBUtils.close(pstmt);               //关闭PreparedStatement
  31.             DBUtils.close(conn);                //关闭连接
  32.         }
  33.         return array.toString();
  34.     }
  35.     //记录新愿望
  36.     void addWish(String username, String wish, String color) {
  37.         String sql = "insert into wishes(username, wish, wishtime, colorsuit) values(?,?,now(),?)";   //定义SQL语句
  38.         Connection conn = null;                 //声明Connection对象
  39.         PreparedStatement pstmt = null;         //声明PreparedStatement对象
  40.         try {
  41.             conn = DBUtils.getConnection();     //获取数据库连接
  42.             pstmt = conn.prepareStatement(sql); //根据sql创建PreparedStatement
  43.             pstmt.setString(1, username);       //设置参数
  44.             pstmt.setString(2, wish);           //设置参数
  45.             pstmt.setString(3, color);          //设置参数
  46.             pstmt.executeUpdate();              //执行插入
  47.         } catch (SQLException e) {
  48.             System.out.println(e.toString());
  49.         } finally {
  50.             DBUtils.close(pstmt);               //关闭PreparedStatement
  51.             DBUtils.close(conn);                //关闭连接
  52.         }
  53.     }
  54.     //获取数据库时间
  55.     String getDBTime() {
  56.         String dbTime = "";                     //返回结果
  57.         String sql = "select now()";            //定义查询数据库的SQL语句
  58.         Connection conn = null;                 //声明Connection对象
  59.         PreparedStatement pstmt = null;         //声明PreparedStatement对象
  60.         ResultSet rs = null;                    //声明ResultSet对象
  61.         try {
  62.             conn = DBUtils.getConnection();     //获取数据库连接
  63.             pstmt = conn.prepareStatement(sql); //根据sql创建PreparedStatement
  64.             rs = pstmt.executeQuery();
  65.             if (rs.next()) {
  66.                 dbTime = rs.getString(1);
  67.             }
  68.         } catch (SQLException e) {
  69.             System.out.println(e.toString());
  70.         } finally {
  71.             DBUtils.close(rs);                  //关闭结果集
  72.             DBUtils.close(pstmt);               //关闭PreparedStatement
  73.             DBUtils.close(conn);                //关闭连接
  74.         }
  75.         return dbTime;
  76.     }
  77. %>
  78. <%
  79.     out.clear();                                        //清空当前的输出内容(空格和换行符)
  80.     request.setCharacterEncoding("UTF-8");              //设置请求字符集为UTF-8
  81.     String action = request.getParameter("action");     //获取action参数
  82.     //根据action不同执行不同操作
  83.     if ("getWishes".equals(action)) {
  84.         out.print(getWishes());
  85.     } else if ("sendWish".equals(action)) {             //记录新愿望
  86.         String username = request.getParameter("username");
  87.         String wish = request.getParameter("wish");
  88.         String color = request.getParameter("color");
  89.         addWish(username, wish, color);
  90.         out.print(getDBTime());                         //返回保存时间
  91.     }
  92. %>