EasyUI的CRUD应用采用的是php实现后台功能,将其改造为java版本实现数据表格的增删改功能。
源代码结构:
1、建立数据库表,将users.sql导入mysql即可
2、修改index.html,将index.html中url的get_user.php替换为自己写的jsp代码
3、get_user.jsp,其中page和rows是翻页的参数,offset是用于分页查询使用的参数,需要返回总的记录数和数据库数据,采用json数据返回
//获取页数、显示记录参数
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= newJSONArray();
JSONObject jsonObj2= newJSONObject();
sql="select * from users limit "+offset+","+rows1;
rs=stmt.executeQuery(sql);
ResultSetMetaData metaData=rs.getMetaData();int columnCount =metaData.getColumnCount();while(rs.next()) {
JSONObject jsonObj= newJSONObject();for(int i=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、添加用户
//获取user参数
String firstname= request.getParameter("firstname");
String lastname= request.getParameter("lastname");
String phone= request.getParameter("phone");
String email= request.getParameter("email");
JSONObject result= newJSONObject();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、删除用户
//获取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= newJSONObject();
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、最终效果
修改用户
删除用户