EasyUI CRUD应用Java改造版本

EasyUI的CRUD应用采用的是php实现后台功能,将其改造为java版本实现数据表格的增删改功能。

EasyUI的教程及代码https://www.jeasyui.com/tutorial/app/crud.php

源代码结构:

1、建立数据库表,将users.sql导入mysql即可

2、修改index.html,将index.html中url的get_user.php替换为自己写的jsp代码

<table id="dg" title="My Users" class="easyui-datagrid" style="width:700px;height:250px"
            url="get_users.php"
            toolbar="#toolbar" pagination="true"
            rownumbers="true" fitColumns="true" singleSelect="true">

3、get_user.jsp,其中page和rows是翻页的参数,offset是用于分页查询使用的参数,需要返回总的记录数和数据库数据,采用json数据返回

<%@ page import="org.json.*" %>
<%@ page import="java.sql.Connection" %>
<%@ page import="java.sql.ResultSet" %>
<%@ page import="java.sql.ResultSetMetaData" %>
<%@ page import="java.sql.Statement" %>

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%
     //获取页数、显示记录参数
      int page1=Integer.parseInt(request.getParameter("page"));
      int rows1=Integer.parseInt(request.getParameter("rows"));
      int offset=(page1-1)*rows1;
      int total=0;

      String DB_driver="com.mysql.jdbc.Driver";
      String u="jdbc:mysql://localhost/test?user=root&password=root&useUnicode=true&characterEncoding=GBK";

     Class.forName(DB_driver);
        java.sql.Connection con = java.sql.DriverManager.getConnection(u);
     java.sql.Statement stmt =con.createStatement(); 

        String sql="select count(*)  total from users";
        java.sql.ResultSet rs = stmt.executeQuery(sql);
    if(rs.next())
        total=rs.getInt("total");
    JSONArray array = new JSONArray();
    JSONObject jsonObj2 = new JSONObject();

     sql="select * from users limit "+offset+","+rows1;
         rs = stmt.executeQuery(sql);
        ResultSetMetaData metaData = rs.getMetaData();
    int columnCount = metaData.getColumnCount(); 

        while (rs.next()) {
             JSONObject jsonObj = new JSONObject();
            for(int i=1;i<columnCount+1;i++)    {
                String columnName =metaData.getColumnLabel(i);
                String value = rs.getString(columnName);
                jsonObj.put(columnName, value); 

            }
              array.put(jsonObj); 

        }

    jsonObj2.put("total",total);
    jsonObj2.put("rows",array);

    rs.close();
    stmt.close();
    con.close();
    out.write(jsonObj2.toString());
%>

4、添加用户

<%@ page import="org.json.*" %>
<%@ page import="java.sql.Connection" %>
<%@ page import="java.sql.ResultSet" %>
<%@ page import="java.sql.ResultSetMetaData" %>
<%@ page import="java.sql.Statement" %>

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%

    //获取user参数
    String firstname= request.getParameter("firstname");
    String lastname= request.getParameter("lastname");
    String phone= request.getParameter("phone");
    String email= request.getParameter("email");
     JSONObject result = new JSONObject();
    int id=0;
    String DB_driver="com.mysql.jdbc.Driver";
    String u="jdbc:mysql://localhost/test?user=root&password=root&useUnicode=true&characterEncoding=GBK";

    Class.forName(DB_driver);
       java.sql.Connection con = java.sql.DriverManager.getConnection(u);
    java.sql.Statement stmt =con.createStatement(); 

    String sql="insert into users(firstname,lastname,phone,email) values(‘"+firstname+"‘,‘"+lastname+"‘,‘"+phone+"‘,‘"+email+"‘)";

     int flag=stmt.executeUpdate(sql, Statement.RETURN_GENERATED_KEYS);
     java.sql.ResultSet rs =  stmt.getGeneratedKeys();
     if (rs.next()) {
            id = rs.getInt(1);
     }
     sql="select * from users where id="+id;
     rs=stmt.executeQuery(sql);
     if(rs.next()){
        result.put("id",rs.getInt("id"));
        result.put("firstname",rs.getString("firstname"));
        result.put("lastname",rs.getString("lastname"));
        result.put("phone",rs.getString("phone"));
        result.put("email",rs.getString("email"));
     }
    else{
        result.put("errorMsg","insert data failed");
    }
    stmt.close();
    con.close();
    out.write(result.toString());
%>

5、删除用户

<%@ page import="org.json.*" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%

    //获取user参数
    String firstname= request.getParameter("firstname");
    String lastname= request.getParameter("lastname");
    String phone= request.getParameter("phone");
    String email= request.getParameter("email");
    int id=Integer.parseInt(request.getParameter("id"));
    JSONObject result = new JSONObject();
    String DB_driver="com.mysql.jdbc.Driver";
    String u="jdbc:mysql://localhost/test?user=root&password=root&useUnicode=true&characterEncoding=GBK";

    Class.forName(DB_driver);
       java.sql.Connection con = java.sql.DriverManager.getConnection(u);
    java.sql.Statement stmt =con.createStatement(); 

    String sql="delete from users  where id=‘"+id+"‘";

     int flag=stmt.executeUpdate(sql);
  if(flag>0){
      result.put("success","true");
  }
   else{
      result.put("errorMsg","this is wrong");
   }

    stmt.close();
    con.close();
    out.write(result.toString());
%>

6、最终效果

修改用户

删除用户

时间: 2024-11-05 02:24:16

EasyUI CRUD应用Java改造版本的相关文章

SpringMVC+easyUI CRUD 增加数据C

接一篇文章,今天上午实现了增加数据.下面是Jsp,里面主要是看newUser()和saveUser().注意这函数里的url,newUser()里面去掉url属性.还要注意的一个问题 <div id="toolbar"> <a href="javascript:void(0);" class="easyui-linkbutton" iconCls="icon-add" plain="true&quo

切换Java jdk版本脚本

电脑上须安装需要互相切换版本的JDK,不能用绿色包代替.复制以下内容至新建的文本文件,后缀再修改为bat格式,右击已管理员身份运行 @echo off rem 切换Java jdk版本 echo 请以管理员来进行切换 echo 当前版本 java -version :menu echo ============================================= echo 请选择要切换的jdk版本 echo 1:Java jdk 1.7 echo 2:Java jdk 1.8 ec

java三大版本解析

JAVA三大版本代表着JAVA技术的三个应用领域:JAVASE.JAVAME.JAVAEE. JAVA以前很长一段时间被称为JAVA2,所以现在很多人习惯称为J2SE.J2ME.J2EE,它们表示的含义是一样的. 首先我们来看看JAVASE,它是JAVA的标准版,是整个JAVA的基础和核心,也是JAVAEE和JAVAME技术的基础,主要用于开发桌面应用程序. 然后我们来看看JAVAME,它叫做JAVA的微缩版,主要应用于嵌入式开发,比如手机程序的开发. JAVAEE叫做JAVA的企业版,它提供了

Atitit..jdk&#160;java&#160;各版本新特性&#160;1.0&#160;1.1&#160;1.2&#160;1.3&#160;1.4&#160;1.5(5.0)&#160;1.6(6.0)&#160;7.0&#160;8.0&#160;9.0&#160;attilax&#160;大总结

Atitit..jdk java 各版本新特性 1.0 1.1 1.2 1.3 1.4 1.5(5.0) 1.6(6.0) 7.0 8.0 9.0 attilax 大总结 1.1. Java的编年史2 1.2. Java版本:JDK 1.02 1.3. Java版本:JDK 1.13 1.4. Java版本:JDK 1.2 (Java 2)4 1.4.1. 1999年5 1.4.2. 2000年5 1.5. Java版本:JDK 1.35 1.5.1. 2001年6 1.5.2. 2002年7

什么是函数响应式编程(Java&amp;Android版本)

什么是函数响应式编程(Java&Android版本) 原文链接:http://www.bignerdranch.com/blog/what-is-functional-reactive-programming/ 函数响应式编程(FRP)为解决现代编程问题提供了全新的视角.一旦理解它,可以极大地简化你的项目,特别是处理嵌套回调的异步事件,复杂的列表过滤和变换,或者时间相关问题. 我将尽量跳过对函数响应式编程学院式的解释(网络上已经有很多),并重点从实用的角度帮你理解什么是函数响应式编程,以及工作中

Android4.0-4.4 添加实体按键振动支持的方法(java + smali版本)

有些手机比如泛泰A820L, 泛泰A890 A900 以及Nubia Z5S 和Z5S mini具有实体按键(这里所说的实体按键是相对于虚拟按键而言, 包含物理按键和触摸屏上多出来的触摸实体按键), 当编译第三方ROM比如CM或者Mokee或者Omni时就会发现如果不做修改的话默认触摸实体按键时是没有振动支持的, 甚至有些patchrom的MIUI或者ColorOS等系统也可能不支持. 不知道是CM代码的问题还是编译的Config没写完全造成的, 后来经过本人修改后是可以支持按键振动, 不过只能

改变Eclipse中java编译器版本出现错误:Java compiler level does not match the version of the installed Java project facet.

改变Eclipse中java编译器版本出现错误:Java compiler level does not match the version of the installed Java project facet. 错误原因:Project Facts中的Java版本设定与项目的Java版本设定不一致. 解决方案:在Eclipse环境中 1. 鼠标右键选择项目,点击Properties,选择Java Build Path查看或修改JRE System Library的jre或jdk的版本. 2.

Java JDK 版本的区别

jdk6和jdk5相比的新特性有: 1.instrumentation 在 Java SE 6 里面,instrumentation 包被赋予了更强大的功能:启动后的 instrument.本地代码 instrument,以及动态改变 classpath 等等. 2.Http有所增强 3. Java 管理扩展(JMX) 架构及其框架,以及在 Java SE 5 中新引入的 JMX API -- java.lang.management 包 4.JDK 6 中新增加编译器 API(JSR 199)

java swing版本打飞机源码

原文:java swing版本打飞机源码 源代码下载地址:http://www.zuidaima.com/share/1553224165755904.htm 运行效果图