package com.lixa.servlet.order;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.lixa.bean.Order;
import com.lixa.dao.OrderDao;
import com.lixa.dao.impl.OrderDaoImpl;
import com.lixa.util.DBUtil;
public class ClientUpdateOrderServlet extends HttpServlet{
private static final long serialVersionUID = -4701632877664998115L;
private OrderDao dao = new OrderDaoImpl();
/**
* 客户端返回数据统计
* error 为服务器错误
* 返回相应请求的数据
* new update delete error
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
// id-version,id-version
String data = request.getParameter("data").trim();
// new update delete error
String type = request.getParameter("type").trim();
// System.out.println("data: " + data);
// System.out.println("type: " + type);
Connection conn = DBUtil.getConnForMySql();
PreparedStatement pstmt = null;
ResultSet rs = null;
StringBuilder result = new StringBuilder();
String sql = "";
/**
* new 当data为 "" ,则返回当前服务器菜单表中没有删除的信息,如果data不为空,把新增返回数据
*
* update 比对客户端的ID和版本,如果服务器没有删除,而且版本大约客户端版本,返回更新的菜单信息
*
* delete 比对客户端的ID,如果服务器删除,则返回响应的ID
*
* error 比对客户端ID,如果不存在,则返回ID,在客户端进行删除 【传输过程错误等情况可出现此类数据】 *
*/
if("new".equals(type)){
if("".equals(data)){ // 客户端无数据
try {
sql = "select * from orders where is_delete=0";
conn = DBUtil.getConnForMySql();
pstmt = DBUtil.getPreparedStatemnt(conn, sql);
rs = pstmt.executeQuery();
while(rs.next()){
result.append(rs.getString("id")).append("@");
result.append(rs.getString("name")).append("@");
result.append(rs.getString("description")).append("@");
result.append(rs.getString("type")).append("@");
result.append(rs.getString("order_version")).append("@");
result.append(rs.getString("image_path")).append("@");
result.append(rs.getString("price")).append("#");
}
if(result.length()>0)
out.print(result.substring(0, result.length()-1));
else
out.print("");
return;
} catch (SQLException e) {
e.printStackTrace();
} finally {
DBUtil.CloseResources(conn, pstmt, rs);
}
}else{// 客户端有数据
String datas[] = data.split(",");
StringBuilder ids = new StringBuilder();
for(int i = 0; i < datas.length; i ++){
ids.append("'").append(datas[i].split("-")[0]).append("'").append(",");
}
try {
sql = "select * from orders where is_delete=0 and id not in(" + ids.substring(0, ids.length()-1) + ")";
System.out.println(sql);
conn = DBUtil.getConnForMySql();
pstmt = DBUtil.getPreparedStatemnt(conn, sql);
rs = pstmt.executeQuery();
while(rs.next()){
result.append(rs.getString("id")).append("@");
result.append(rs.getString("name")).append("@");
result.append(rs.getString("description")).append("@");
result.append(rs.getString("type")).append(",");
result.append(rs.getString("order_version")).append("@");
result.append(rs.getString("image_path")).append("@");
result.append(rs.getString("price")).append("#");
}
if(result.length()>0)
out.print(result.substring(0, result.length()-1));
else
out.print("");
return;
} catch (SQLException e) {
e.printStackTrace();
} finally {
DBUtil.CloseResources(conn, pstmt, rs);
}
}
} else if ("update".equals(type)){
String datas[] = data.split(",");
String id = "";
String version = "";
for(int i = 0; i < datas.length; i ++){
id = datas[i].split("-")[0];
version = datas[i].split("-")[1];
Order o = dao.getOrderById(id);
if(!o.getVersion().equals(version)&&"0".equals(o.getIs_delete())){
result.append(o.getId()).append("@");
result.append(o.getName()).append("@");
result.append(o.getDescription()).append("@");
result.append(o.getType()).append("@");
result.append(o.getVersion()).append("@");
result.append(o.getImgage_path()).append("@");
result.append(o.getPrice()).append("#");
}
}
if(result.length()>0)
out.print(result.substring(0, result.length()-1));
else
out.print("");
return;
} else if ("delete".equals(type)){
String datas[] = data.split(",");
String id = "";
for(int i = 0; i < datas.length; i ++){
id = datas[i].split("-")[0];
Order o = dao.getOrderById(id);
if("1".equals(o.getIs_delete())){
result.append(o.getId()).append(",");
}
}
if(result.length()>0)
out.print(result.substring(0, result.length()-1));
else
out.print("");
} else if("error".equals(type)){
String datas[] = data.split(",");
String id = "";
for(int i = 0; i < datas.length; i ++){
id = datas[i].split("-")[0];
Order o = dao.getOrderById(id);
if(null == o)
result.append(id).append(",");
}
if(result.length()>0)
out.print(result.substring(0, result.length()-1));
else
out.print("");
} else {
result.append("error");
}
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
@Override
public void destroy() {
super.destroy();
}
@Override
public void init() throws ServletException {
super.init();
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
手机点菜系统源码
共268个文件
class:68个
jpg:47个
gif:43个
4星 · 超过85%的资源 需积分: 18 268 下载量 91 浏览量
2011-12-12
17:21:57
上传
评论 7
收藏 7.18MB RAR 举报
温馨提示
手机点菜系统源码 android点菜系统源码
资源推荐
资源详情
资源评论
收起资源包目录
手机点菜系统源码 (268个子文件)
1285568177372.3gp 2.55MB
order_client_1_0.apk 417KB
UpdateOrderServlet.class 6KB
UpdateOrderServlet.class 6KB
UpdateVideoServlet.class 5KB
UpdateVideoServlet.class 5KB
OrderDaoImpl.class 5KB
OrderDaoImpl.class 5KB
ClientUpdateOrderServlet.class 5KB
ClientUpdateOrderServlet.class 5KB
UserDaoImpl.class 5KB
UserDaoImpl.class 5KB
AddOrderServlet.class 5KB
AddOrderServlet.class 5KB
AddVideoServlet.class 5KB
AddVideoServlet.class 5KB
VideoDaoImpl.class 4KB
VideoDaoImpl.class 4KB
OrderLogDaoImpl.class 4KB
OrderLogDaoImpl.class 4KB
DBUtil.class 4KB
DBUtil.class 4KB
CheckOrderVersionServlet.class 4KB
CheckOrderVersionServlet.class 4KB
MakeOrderServlet.class 3KB
MakeOrderServlet.class 3KB
UserLoginServlet.class 3KB
UserLoginServlet.class 3KB
Order.class 3KB
Order.class 3KB
UserRegisterSerlvet.class 2KB
UserRegisterSerlvet.class 2KB
UserBaseModifyServlet.class 2KB
UserBaseModifyServlet.class 2KB
OrderLogUpdateServlet.class 2KB
OrderLogUpdateServlet.class 2KB
QueryVideoServlet.class 2KB
QueryOrderServlet.class 2KB
QueryVideoServlet.class 2KB
QueryOrderServlet.class 2KB
UserPasswordModifyServlet.class 2KB
UserPasswordModifyServlet.class 2KB
OrderLogListServlet.class 2KB
OrderLogListServlet.class 2KB
ListOrderServlet.class 2KB
ListVideoServlet.class 2KB
ListOrderServlet.class 2KB
ListVideoServlet.class 2KB
DeleteOrderServlet.class 2KB
OverDueVideoServlet.class 2KB
DeleteOrderServlet.class 2KB
OverDueVideoServlet.class 2KB
User.class 2KB
User.class 2KB
OrderLog.class 2KB
OrderLog.class 2KB
EncodingFilter.class 1KB
EncodingFilter.class 1KB
Video.class 1KB
Video.class 1KB
Servlet_Module_Servlet.class 1KB
Servlet_Module_Servlet.class 1KB
UserDao.class 522B
UserDao.class 522B
OrderDao.class 424B
OrderDao.class 424B
VideoDao.class 399B
VideoDao.class 399B
OrderLogDao.class 377B
OrderLogDao.class 377B
.classpath 619B
style_2_common.css 106KB
style_2_forum_viewthread.css 27KB
avatar.gif 8KB
avatar_003.gif 8KB
huffy.gif 4KB
avatar_002.gif 3KB
funk.gif 3KB
cry.gif 3KB
shy.gif 3KB
shutup.gif 2KB
mad.gif 2KB
sleepy.gif 2KB
zip.gif 2KB
shocked.gif 2KB
sweat.gif 2KB
dizzy.gif 2KB
tongue.gif 2KB
smile.gif 2KB
loveliness.gif 2KB
curse.gif 2KB
lol.gif 1KB
titter.gif 1KB
biggrin.gif 1KB
handshake.gif 1KB
victory.gif 1KB
sad.gif 1KB
binary.gif 1KB
hug.gif 1KB
recommend_1.gif 1KB
共 268 条
- 1
- 2
- 3
zhangbi18
- 粉丝: 8
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
- 5
- 6
前往页