当前位置: 首页 > news >正文

石家庄模板建站行业解决方案/成都建设网官网

石家庄模板建站行业解决方案,成都建设网官网,做外贸接私单的网站,做游戏网站的前景1.处理实时通信,几种方案 1:当一个用户发送一条需要实时更新的信息,我可以直接查找在线用户,通过在线用户来进行判断条件,发送更新请求 2:用户在一个需要实时更新的界面时,就不断的向服务端发…

1.处理实时通信,几种方案

1:当一个用户发送一条需要实时更新的信息,我可以直接查找在线用户,通过在线用户来进行判断条件,发送更新请求

2:用户在一个需要实时更新的界面时,就不断的向服务端发送请求,然后服务端,读取数据库,返回对应的信息,然后客户端对其界面进行更新,这里发送请求的的时间间隔比较不好掌握,

3:用户在一个需要实时更新的界面时,就像服务端发送一个请求,服务端接受到请求,并不做任何处理,当某个变量变化时,服务端,返回一个更新信息,当然,这需要一个线程(监听一个变量是否改变)。

总结:其实三种方案都差不多,第二种,第三种,就收发请求没有那末频繁,但是第三种一直监听一个变量是否变化
而第一种和第三种,其实也类似的,只不过的是,第一种在服务端直接把更新请求发给了客户端,然后由客户端来判断
客户是否在这个界面,这个界面是否需要更新,第三就是判断需要更新的才发请求。这个请求在服务端种监听一个变量,
这个变量的更改又是由其它用户更新信息所造成,所以其实三种都差不多。

 比如学习通服务端处理签到,要实时更新

                        MySignIn mySignIn = (MySignIn) requestMessage.getData();mySignIn.setId(MySignInDAO.addMySignIn(mySignIn));//得到班级的idint myClassId = mySignIn.getMyClass_id();//首先更新用户自己的ui界面Message responseMessage = new Message();responseMessage.setData(mySignIn);responseMessage.setMessageType(MessageType.tea_send_sign_in_success);SocketUtil.getSocketUtil().sendMessage(socket, responseMessage);//循环,进行更新在线用户的界面// 获取每个键对应的值for (Integer userId : onlineUsers.keySet()) {Student student1 = StudentDAO.queryStudent(userId);if (student1 != null) {//找到该用户,学生信息,//判断学生是否是在班级里if(MyClass_addtion_studentDAO.queryMyclass(student1.getId(),myClassId)){//该学生在班级里,可以进行操作// 进行更新界面Socket userSocket = onlineUsers.get(userId);Message responseMessage2 = new Message();responseMessage2.setData(mySignIn);//默认没有进行签到mySignIn.setIsSignIn(1);responseMessage2.setMessageType(MessageType.stu_need_update_sign_in);//客户端获取到签到信息,应该要判断是否在班级界面,在班级界面是否是需要更新的对应班级SocketUtil.getSocketUtil().sendMessage(userSocket, responseMessage2);}else{//学生不在班级里continue;}}else{//说明在线用户不是学生,continue;}//进行查询所有的关系;是否在这个班级里,然后返回服务端,如果服务端的Controller为空,就不更新}

 通过服务端发送信息,进行处理是否需要更新ui界面。这里使用的第一种方法

2.时间类型,对应数据库datebase

 签到的发起和结束时间:类型,

private LocalDateTime start_time;
private LocalDateTime end_time;
 public static List<MySignIn> queryMySignInList(int ClassId){Connection connection = null;PreparedStatement preparedStatement =null;ResultSet resultSet = null;List<MySignIn> mySignInList = new ArrayList<>();try {//获取数据库连接connection = JDBCUtil.getJdbcUtil().getConnection();//准备数据库语句String sql = "select * from signs where sign_class_id = ? ";preparedStatement = connection.prepareStatement(sql);preparedStatement.setInt(1,ClassId);resultSet = preparedStatement.executeQuery();while(resultSet.next()) {MySignIn mySignIn = new MySignIn();mySignIn.setId(resultSet.getInt(1));mySignIn.setMyClass_id(resultSet.getInt(2));mySignIn.setSignIn_code(resultSet.getString(3));mySignIn.setStart_time((LocalDateTime) resultSet.getObject(4));mySignIn.setEnd_time((LocalDateTime) resultSet.getObject(5));mySignInList.add(mySignIn);}} catch (Exception e) {e.printStackTrace();}finally {JDBCUtil.getJdbcUtil().closeConnection(resultSet,preparedStatement,connection);}return mySignInList;}

 

http://www.bjxfkj.com.cn/article/263.html

相关文章:

  • 网站建设销售专业术语/seo长尾关键词
  • 网站制作上网/搜索引擎谷歌
  • 公司网站建设指南/上海百度推广官方电话
  • 中铁十六门户登录/网站seo方案案例
  • wordpress密码忘记了/seo短视频发布页
  • 沧州做英文网站哪家公司好/市场监督管理局是干什么的
  • i深圳谁开发的/锦绣大地seo
  • 上海网站建设方案/站长之家域名查询
  • 国外网站国内做二维码/东莞网站推广宣传
  • 北京网站制作飞沐/seo就业前景
  • 网站备案多少岁可以做/网站seo优化软件
  • 企业网站建设方案/杭州网站推广优化
  • 网页设计的毕业论文/seo外链推广平台
  • 网站效果图用什么做/长春网站seo
  • 平台网站建设/百度搜索引擎下载
  • 企业网站建设心得/天津网站建设开发
  • 建站本/怎样做网络推广挣钱
  • zf厂手表网站/淘宝seo优化是什么意思
  • 哪个网站可以做网红/seo推广是什么意思
  • 长春做网站哪家公司好/软文案例短篇
  • 微信上浏览自己做的网站吗/网站交易网
  • 萍乡公司做网站/自己建网站怎么弄
  • 企业网站建设宣贯/新手学百度竞价要多久
  • 免费服务器地址和ip/seo优化培训机构
  • 汕头网站开发服务/宁波seo公司
  • 网站建设优化兼职/专业培训机构
  • 网站建设推广浩森宇特/优化什么
  • 网站建设项目总结报告/精准引流获客软件
  • 蓟县网站建设/sem优化软件哪家好
  • 制作企业网站一般多少钱/2023网络营销成功案例