使用Apache MINA框架搭建服务端
import org.apache.mina.core.service.IoHandlerAdapter;import org.apache.mina.core.session.IdleStatus;
import org.apache.mina.core.session.IoSession;
import com.model.DeliverObject;
import com.model.Orders;
import com.model.Users;
import com.service.GoodsService;
import com.service.OrdersService;
import com.service.UserService;
import com.utils.GetBeanUtil;
import com.utils.LogUtil;
import com.utils.Params;
public>
private static final LogUtil logUtil = LogUtil
.getLogUtil(MinaServerHandler.class);
@Override
public void sessionCreated(IoSession session) throws Exception {
logUtil.customLog("服务端与client创建连接...");
}
@Override
public void sessionOpened(IoSession session) throws Exception {
logUtil.customLog("服务端与client连接打开...");
}
@Override
public void messageReceived(IoSession session, Object message)
throws Exception {
DeliverObject recvObj = (DeliverObject) message;
int optionType = recvObj.getOptionType();
// 假设是登录操作
if (optionType == Params.LOGIN) {
UserService userService = (UserService) GetBeanUtil
.getBean("userService");
userService.doLogin(session, (Users) recvObj.getObj());
} else if (optionType == Params.REGISTER) {
// 假设是注冊操作
UserService userService = (UserService) GetBeanUtil
.getBean("userService");
userService.doRegister(session, (Users) recvObj.getObj());
} else if (optionType == Params.UPDATEUSER) {
// 假设是改动用户信息操作
UserService userService = (UserService) GetBeanUtil
.getBean("userService");
userService.doUpdateUser(session, (Users) recvObj.getObj());
} else if (optionType == Params.SEARCHGOODS) {
// 假设是搜索商品操作
GoodsService goodsService = (GoodsService) GetBeanUtil
.getBean("goodsService");
goodsService.doSearchGoods(session, (String) recvObj.getObj());
} else if (optionType == Params.SUBMITORDERS) {
// 假设是提交订单操作
OrdersService ordersService = (OrdersService) GetBeanUtil
.getBean("ordersService");
ordersService.doSubmitOrders(session, (Orders) recvObj.getObj());
} else if (optionType == Params.SEARCHALLORDERS) {
// 假设是查询全部订单操作
OrdersService ordersService = (OrdersService) GetBeanUtil
.getBean("ordersService");
ordersService.doSearchAllOrders(session, (Users) recvObj.getObj());
}
}
@Override
public void messageSent(IoSession session, Object message) throws Exception {
logUtil.customLog("服务端发送信息成功...");
}
@Override
public void sessionClosed(IoSession session) throws Exception {
logUtil.customLog("服务端与client连接关闭...");
session.close(true);
}
@Override
public void sessionIdle(IoSession session,> throws Exception {
super.sessionIdle(session, status);
logUtil.customLog("服务端进入空暇状态...");
}
@Override
public void exceptionCaught(IoSession session, Throwable cause)
throws Exception {
logUtil.customLog("服务端发送异常..." + cause);
session.close(true);
}
}
页:
[1]