- 获取整个app用户所有操作的点
小白e7899
1创建一个类继承UIApplication.h文件:#include增加属性:@property(nonatomic,assign)BOOLisMoved;.m文件-(void)sendEvent:(UIEvent*)event{if(event.type==UIEventTypeTouches){UITouch*touch=[event.allTouchesanyObject];if(touch
- iOS16 输入框弹出键盘崩溃
Jux2020
新建一个UIWindow的category:+(void)load{staticdispatch_once_tonceToken;dispatch_once(&onceToken,^{Classclass=objc_getClass("UIWindow");SELoriginalSelector=@selector(sendEvent:);SELswizzledSelector=@selector
- 【Qt开发流程】之事件过滤器及sendEvent和postEvent
FreeLikeTheWind.
Qt开发流程qt数据库java
描述事件过滤器(EventFilter)是Qt中一个强大的事件处理机制,它可以在对象接收到事件之前截获事件,并进行自定义处理。事件过滤器可以在不修改对象自身代码的前提下,对其进行事件处理和拦截。事件过滤器的使用过程如下:创建一个QObject对象,为其安装事件过滤器。重载事件过滤器的eventFilter函数,实现自定义的事件拦截和处理。在需要拦截和处理事件的对象上,调用installEventF
- [FUNC]发送中文 避开输入法影响
liuyukuan
AutoHotkey输入法函数库
文本模式-{Text}[v1.1.27+]:与原始模式类似,除了不尝试将字符(除了`r,`n,`t和`b)转换为键击外;作为代替,后备方法用于所有剩余的字符.对于SendEvent,SendInput和ControlSend,这提高了可靠性,因为字符对正确的修饰符状态的依赖性要小得多.文本模式可以与Blind(盲从)模式结合使用,以避免释放任何修饰键:Send{Blind}{Text}yourte
- [iOS] iOS9 收起键盘崩溃
世上无南西
Attemptingtoloadtheviewofaviewcontrollerwhileitisdeallocatingisnotallowedandmayresultinundefinedbehavior()这个闪退之后要么停到main,要么停到sendEvent,反正就是让你无从下手,其实这个问题超级简单而且复现必崩溃。问题就是工程中有UIViewController的分类(Category
- (13) Qt事件系统(two)
石小浪♪
Qtqt开发语言c++
目录事件分发函数无边框窗口拖动自定义事件发送事件的函数自定义事件系统定义的事件号自定义事件号自定义事件类发送和处理事件sendEvent与postEvent的区别栈区对象堆区对象事件传播机制事件传播的过程事件传播到父组件鼠标单击事件与按钮单击信号的关联事件过滤无边框窗口拖动(事件过滤器实现)事件跟信号的区别事件分发函数传递事件的通常方式是调用虚函数。例如,QMouseEvent通过调用QWidge
- Qt跨线程修改UI控件属性或操作
未知の自己
qtqtui开发语言
问题在编写一个控制器控制UI界面时,由于在控制器中使用到了开线程单独循环执行某个执行函数,这个执行函数回调了UI界面中QLabel控件的修改背景色函数,导致会运行报错,“ASSERTfailureinQCoreApplication::sendEvent:“Cannotsendeventstoobjectsownedbyadifferentthread””,在我的理解中,这就是由于sendEven
- Qt之自定义事件
草上爬
Qt工作笔记QtEvent自定义事件注册事件customEvent1024程序员节
在Qt中,自定义事件的步骤大概如下:1.创建自定义事件,自定义事件需要继承QEvent2.使用QEvent::registerEventType()注册自定义事件类型,事件的类型需要在QEvent::User和QEvent::MaxUser范围之间,在QEvent::User之前是预留给系统的事件3.使用sendEvent()和postEvent()发送自定义消息4.接受自定义消息,通过重写eve
- QT事件循环原理
lhw330472787
qt开发语言
Qt的主事件循环(QCoreApplication::exec())从事件队列中获取本地窗口系统事件,转换成QEvents,并将转换后的事件发送给QObjects。通常,事件来自底层的窗口系统(自发的()返回true),但是也可以使用QCoreApplication::sendEvent()和QCoreApplication::postEvent()手工发送事件(自发的()返回false)。QOb
- Qt程序崩溃问题集锦(持续更新...)
dhz120
1.socket释放内存出错现象QSocketNotifier:SocketnotifierscannotbeenabledordisabledfromanotherthreadASSERTfailureinQCoreApplication::sendEvent:"Cannotsendeventstoobjectsownedbyadifferentthread.Currentthread0x0xe
- android如何通过cpp sendevent发送powerkey按键消息
wxx2150
android
前言客户希望通过cpp发送powerkey来进行系统的休眠唤醒代码实现参考adbshellsendevent实现。sendevent.c参考代码在external/toybox/toys/android/sendevent.c实现方式比较简单,直接上代码#include#include#include#include#include//std::mutexg_mutex;intmain(){//s
- qt发送event_详解关于Qt中Event事件处理流程
weixin_39969143
qt发送event
Qt中Event处理流程是本文要介绍的内容,主要是来了解Event事件的处理。在Qt/Embedded中,鼠标事件来自于触摸屏设备。在使用select读取触摸屏设备中的数据后(即采样,压力达到一定阈值),处理些采样点后得到一个物理设备坐标点,然后用QCoreApplication的sendEvent活postEvent将其发送出去,于是Event的处理流程就开始了。首先,QCoreApplicat
- LeakCanary 源码详解(3)
zhouzhihao_07
性能优化LeakCanaryhprofshark
上一篇:LeakCanary源码详解(2)如果你是直接刷到这篇的,建议还是从1开始看,然后2,然后是这篇3,如果你只关注这篇的重点hprof文件定位泄漏位置的感兴趣,可以试试直接读这篇,如果中间没发觉有难理解的就算了,要是发觉无法理解了就建议从12篇读起,经典的库的代码没那么简单,不要害怕花时间。这篇要说一下hprof解析的,下图中是dumpHeap反复中,有两次sendEvent我们看一下里面e
- Android输入事件模拟
ravenal
在一些自动化测试等情景下,输入Android应用程序产生一些屏幕点击等的输入事件以实现特定需求。本文总结了几种Android中模拟产生输入事件的方式。1Shell命令在Android中有两个shell中运行的工具可以模拟产生输入事件input和sendevent。由于sendevent需要用到相应的设备,需要考虑权限问题,因此一般不常用,这里只介绍input。Usage:input[][...]T
- Qt事件发送--sendEvent和postEvent
weixin_45001971
Qt笔记qt开发语言
在Qt程序中,用户主动发送事件的方式有两种,分别是sendEvent和postEvent,本文对这两种方式的实现和用法进行讲解。sendEvent官方文档说明:使用notify()函数将事件事件直接发送到接收方。返回从事件处理程序返回的值。发送事件后,不会删除该事件。通常的方法是在堆栈上创建事件。用法:QMouseEventevent(QEvent::MouseButtonPress,pos,0,
- php sse逐字输出简单代码
do better myself
状态模式
publicfunctiontest_abc(){header("Content-Type:text/event-stream");header('X-Accel-Buffering:no');//向前端发送初始化消息$this->sendEvent('message','...');//模拟一些处理任务for($i=0;$isendEvent('message',"Task$icompleted
- Debug Error! QCoreApplication::sendEvent:
季截
qtc++
DebugError!Program:Qt5Cored.dllModule:5.6.3File:qglobal.cppLine:3026ASSERTfailureinQCoreApplication::sendEvent:"Cannotsendeventstoobjectsownedbyadifferentthread.Currentthread1f71954ef40.Receiver''(oft
- Qt之sendEvent
_DCG_
Qtqt开发语言
基本介绍sendEvent方法所属类为QCoreApplication,完整声明如下:[static]boolQCoreApplication::sendEvent(QObject*receiver,QEvent*event)该方法的作用同样也是发布事件,但是与postEvent不同的是该方法仅能用本线程内的事件发送,不能用于跨线程的事件发布。分析qt源码一个特别好的在线网站:qt5在线源码理解应
- 前端面试题——Web应用从服务器主动推送Data到客户端
lucky971231
JavaScriptjavascript
Web应用从服务器主动推送Data到客户端有哪些方式?Ajax轮询,即定期发送请求,获取数据。Commet,即基于HTTP长连接的服务器推送技术。XHR长轮询,即服务器端定期返回数据,客户端接收数据,并再次发送请求。WebSocket,即基于Socket协议实现数据的推送。SSE(Server-SendEvent),即允许网页获取来自服务器端的更新。首先,我得知道轮询是什么?轮询(Polling)
- Linux工具 xdotool模拟输入事件工具
图王大胜
Linux系统linuxubuntu
xdotool实际上是X11窗口的命令行自动化工具,可以实现按键/组合按键事件模拟、鼠标事件模拟、文本输入模拟、窗口信息及焦点的获取。在android系统中模拟key事件/motion事件的工具主要是sendevent和getevent,那么在Linux上是否有更好的工具呢?当然是有的,Xorg系列的X工具之xdotool就是这个模拟事件非常棒的工具。而且用起来感觉比android要方便的多。可以
- FlutterBoost事件传递以及生命周期监听
sunnytu123
Flutter向Native传递事件Dart:发送事件BoostChannel().sendEvent("name",{"result":"flutter页面回调信息"});Swift:接收事件FlutterBoostPlugin.sharedInstance()?.addEventListener({(name,parm)in},forName:"name")Native向Flutter传递事件
- 【PyQt5:QApplication】管理GUI程序的控制流以及主要设置
masterleoo
PyQt5开发qt开发语言pycharmpyqt
文章目录QApplicationQApplication用于管理GUI程序(GraphicsUserInterface)的控制流以及主要设置主要功能如下:1)任何一个GUI应用,不论有多少个窗口,都有且仅有一个QApplication对象2)从底层窗口系统接收事件,通过sendEvent/postEvent发送给窗口3)使用方法如下:if__name__=="__main__":app=QAppl
- Qt中的事件(3)- 自定义事件
douzhq
qtqtevent
1、自定义事件步骤2、自定义事件类3、发送事件(1)sendEvent方法(2)postEvent方法4、事件处理1、自定义事件步骤有时为了开发需要,我们希望自定义事件来完成某种目的。实现自定义事件的步骤如下:继承QEvent。定义事件类型(取值在QEvent::User和QEvent::MaxUser之间,建议使用registerEventType()函数自动创建一个全局唯一一个的事件类型,防止
- QT笔记——QT自定义事件
lion_cxq
qt笔记开发语言
我们有时候想发送自定义事件1:创建自定义事件,首先我们需要知道它的条件1:自定义事件需要继承QEvent2:事件的类型需要在QEvent::User和QEvent::MaxUser范围之间,在QEvent::User之前是预留给系统的事件3:使用sendEvent()和postEvent()发送自定义消息4:接受自定义消息,通过重写customEvent或者使用eventFilter事件来处理2:
- qt源码---事件系统之QCoreApplication
yang843094036
qt开发语言
上一节分析了qt和windows系统之间的消息的传递,本节着重看一下,qt内部的事件是如何传递的?1.sendEvent函数在使用的自定义事件时,有时需要手动抛出一个事件,常用的方式有2种,其一时阻塞式的sendEvent函数;其二是postEvent函数;sendEvent函数定义如下:其主要是将spont设置为fasle,然后转入到notifyInternal2函数中执行处理;其中self在Q
- Qt中postevent造成内存泄漏问题的通用解决方案
-Xavier-
QTqt踩坑Qt事件
在Qt中由QCoreApplication统一管理Qt事件的收发和销毁,其中sendEvent为阻塞式发送,用于单线程的事件发送;postevent为非阻塞式发送,构造事件的线程和接受事件的线程可以为两个线程。最近在做一个个人项目ShaderLab需要绘制OpenGL实时渲染的图像,由于OpenGL渲染基本都放在循环语句内,直接放在主线程会导致界面卡死不响应,所以考虑另开一个线程在后台渲染,再把渲
- 1.2.3 如何自己模拟发送事件消息
前行中的小猪
Qt基础内容教程qt事件eventpostEventsendEvent
1.2.1Qt中事件是如何进行传递1.2.2Qt中的事件过滤器(eventFilter)1.2.3如何自己模拟发送事件消息一、Qt中如何发送事件Qt为我们提供了两种方式模拟发送事件,分别是sendEvent、postEvent。下面就分别对这两种方式进行讲解。sendEvent[static]boolQCoreApplication::sendEvent(QObject*receiver,QEve
- QCoreApplication各种Event处理函数异同
蚂蚁寻路
QTc++
1.QT应用程序自身产生事件的2种方式程序产生事件有两种方式,一种是调用QApplication::postEvent(),例如QWidget::update()函数,当需要重新绘制屏幕时,程序调用update()函数,new出来一个paintEvent,调用QApplication::postEvent(),将其放入Qt的消息队列中,等待依次被处理;另一种方式是调用sendEvent()函数,事
- Qt扫盲-Qt事件系统概述
太阳风暴
#▶Qt扫盲qt5事件系统事件QEvent
Qt事件系统概述一、概述二、事件类型-EventTypes三、事件处理程序-EventHandlers四、事件过滤器-EventFilters五、发送事件-SendingEvents1.sendEvent()2.postEvent()一、概述在Qt中,事件是由抽象的QEvent类派生而来的对象,表示发生在应用程序内部或应用程序需要知道的外部活动的结果。事件可以由QObject子类的任何实例接收和处
- Unity3D行为树插件BehaviorDesigner(七-Event 事件 )
SwordMaster
BehaviorDesigner中的Event事件系统可以让你很容易的使用,你可以通过代码触发一个event事件,也可以通过行为树的节点来触发一个事件。这些事件可以通过行为树的SendEvent节点和HasRecivedEvent节点来触发和监听事件。当一个事件要被发送时使用SendEvent节点。HasRecivedEvent节点是一个条件节点,当接收到注册的事件后会返回success。可以通过
- rust的指针作为函数返回值是直接传递,还是先销毁后创建?
wudixiaotie
返回值
这是我自己想到的问题,结果去知呼提问,还没等别人回答, 我自己就想到方法实验了。。
fn main() {
let mut a = 34;
println!("a's addr:{:p}", &a);
let p = &mut a;
println!("p's addr:{:p}", &a
- java编程思想 -- 数据的初始化
百合不是茶
java数据的初始化
1.使用构造器确保数据初始化
/*
*在ReckInitDemo类中创建Reck的对象
*/
public class ReckInitDemo {
public static void main(String[] args) {
//创建Reck对象
new Reck();
}
}
- [航天与宇宙]为什么发射和回收航天器有档期
comsci
地球的大气层中有一个时空屏蔽层,这个层次会不定时的出现,如果该时空屏蔽层出现,那么将导致外层空间进入的任何物体被摧毁,而从地面发射到太空的飞船也将被摧毁...
所以,航天发射和飞船回收都需要等待这个时空屏蔽层消失之后,再进行
&
- linux下批量替换文件内容
商人shang
linux替换
1、网络上现成的资料
格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径`
linux sed 批量替换多个文件中的字符串
sed -i "s/oldstring/newstring/g" `grep oldstring -rl yourdir`
例如:替换/home下所有文件中的www.admi
- 网页在线天气预报
oloz
天气预报
网页在线调用天气预报
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transit
- SpringMVC和Struts2比较
杨白白
springMVC
1. 入口
spring mvc的入口是servlet,而struts2是filter(这里要指出,filter和servlet是不同的。以前认为filter是servlet的一种特殊),这样就导致了二者的机制不同,这里就牵涉到servlet和filter的区别了。
参见:http://blog.csdn.net/zs15932616453/article/details/8832343
2
- refuse copy, lazy girl!
小桔子
copy
妹妹坐船头啊啊啊啊!都打算一点点琢磨呢。文字编辑也写了基本功能了。。今天查资料,结果查到了人家写得完完整整的。我清楚的认识到:
1.那是我自己觉得写不出的高度
2.如果直接拿来用,很快就能解决问题
3.然后就是抄咩~~
4.肿么可以这样子,都不想写了今儿个,留着作参考吧!拒绝大抄特抄,慢慢一点点写!
- apache与php整合
aichenglong
php apache web
一 apache web服务器
1 apeche web服务器的安装
1)下载Apache web服务器
2)配置域名(如果需要使用要在DNS上注册)
3)测试安装访问http://localhost/验证是否安装成功
2 apache管理
1)service.msc进行图形化管理
2)命令管理,配
- Maven常用内置变量
AILIKES
maven
Built-in properties
${basedir} represents the directory containing pom.xml
${version} equivalent to ${project.version} (deprecated: ${pom.version})
Pom/Project properties
Al
- java的类和对象
百合不是茶
JAVA面向对象 类 对象
java中的类:
java是面向对象的语言,解决问题的核心就是将问题看成是一个类,使用类来解决
java使用 class 类名 来创建类 ,在Java中类名要求和构造方法,Java的文件名是一样的
创建一个A类:
class A{
}
java中的类:将某两个事物有联系的属性包装在一个类中,再通
- JS控制页面输入框为只读
bijian1013
JavaScript
在WEB应用开发当中,增、删除、改、查功能必不可少,为了减少以后维护的工作量,我们一般都只做一份页面,通过传入的参数控制其是新增、修改或者查看。而修改时需将待修改的信息从后台取到并显示出来,实际上就是查看的过程,唯一的区别是修改时,页面上所有的信息能修改,而查看页面上的信息不能修改。因此完全可以将其合并,但通过前端JS将查看页面的所有信息控制为只读,在信息量非常大时,就比较麻烦。
- AngularJS与服务器交互
bijian1013
JavaScriptAngularJS$http
对于AJAX应用(使用XMLHttpRequests)来说,向服务器发起请求的传统方式是:获取一个XMLHttpRequest对象的引用、发起请求、读取响应、检查状态码,最后处理服务端的响应。整个过程示例如下:
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange
- [Maven学习笔记八]Maven常用插件应用
bit1129
maven
常用插件及其用法位于:http://maven.apache.org/plugins/
1. Jetty server plugin
2. Dependency copy plugin
3. Surefire Test plugin
4. Uber jar plugin
1. Jetty Pl
- 【Hive六】Hive用户自定义函数(UDF)
bit1129
自定义函数
1. 什么是Hive UDF
Hive是基于Hadoop中的MapReduce,提供HQL查询的数据仓库。Hive是一个很开放的系统,很多内容都支持用户定制,包括:
文件格式:Text File,Sequence File
内存中的数据格式: Java Integer/String, Hadoop IntWritable/Text
用户提供的 map/reduce 脚本:不管什么
- 杀掉nginx进程后丢失nginx.pid,如何重新启动nginx
ronin47
nginx 重启 pid丢失
nginx进程被意外关闭,使用nginx -s reload重启时报如下错误:nginx: [error] open() “/var/run/nginx.pid” failed (2: No such file or directory)这是因为nginx进程被杀死后pid丢失了,下一次再开启nginx -s reload时无法启动解决办法:nginx -s reload 只是用来告诉运行中的ng
- UI设计中我们为什么需要设计动效
brotherlamp
UIui教程ui视频ui资料ui自学
随着国际大品牌苹果和谷歌的引领,最近越来越多的国内公司开始关注动效设计了,越来越多的团队已经意识到动效在产品用户体验中的重要性了,更多的UI设计师们也开始投身动效设计领域。
但是说到底,我们到底为什么需要动效设计?或者说我们到底需要什么样的动效?做动效设计也有段时间了,于是尝试用一些案例,从产品本身出发来说说我所思考的动效设计。
一、加强体验舒适度
嗯,就是让用户更加爽更加爽的用你的产品。
- Spring中JdbcDaoSupport的DataSource注入问题
bylijinnan
javaspring
参考以下两篇文章:
http://www.mkyong.com/spring/spring-jdbctemplate-jdbcdaosupport-examples/
http://stackoverflow.com/questions/4762229/spring-ldap-invoking-setter-methods-in-beans-configuration
Sprin
- 数据库连接池的工作原理
chicony
数据库连接池
随着信息技术的高速发展与广泛应用,数据库技术在信息技术领域中的位置越来越重要,尤其是网络应用和电子商务的迅速发展,都需要数据库技术支持动 态Web站点的运行,而传统的开发模式是:首先在主程序(如Servlet、Beans)中建立数据库连接;然后进行SQL操作,对数据库中的对象进行查 询、修改和删除等操作;最后断开数据库连接。使用这种开发模式,对
- java 关键字
CrazyMizzz
java
关键字是事先定义的,有特别意义的标识符,有时又叫保留字。对于保留字,用户只能按照系统规定的方式使用,不能自行定义。
Java中的关键字按功能主要可以分为以下几类:
(1)访问修饰符
public,private,protected
p
- Hive中的排序语法
daizj
排序hiveorder byDISTRIBUTE BYsort by
Hive中的排序语法 2014.06.22 ORDER BY
hive中的ORDER BY语句和关系数据库中的sql语法相似。他会对查询结果做全局排序,这意味着所有的数据会传送到一个Reduce任务上,这样会导致在大数量的情况下,花费大量时间。
与数据库中 ORDER BY 的区别在于在hive.mapred.mode = strict模式下,必须指定 limit 否则执行会报错。
- 单态设计模式
dcj3sjt126com
设计模式
单例模式(Singleton)用于为一个类生成一个唯一的对象。最常用的地方是数据库连接。 使用单例模式生成一个对象后,该对象可以被其它众多对象所使用。
<?phpclass Example{ // 保存类实例在此属性中 private static&
- svn locked
dcj3sjt126com
Lock
post-commit hook failed (exit code 1) with output:
svn: E155004: Working copy 'D:\xx\xxx' locked
svn: E200031: sqlite: attempt to write a readonly database
svn: E200031: sqlite: attempt to write a
- ARM寄存器学习
e200702084
数据结构C++cC#F#
无论是学习哪一种处理器,首先需要明确的就是这种处理器的寄存器以及工作模式。
ARM有37个寄存器,其中31个通用寄存器,6个状态寄存器。
1、不分组寄存器(R0-R7)
不分组也就是说说,在所有的处理器模式下指的都时同一物理寄存器。在异常中断造成处理器模式切换时,由于不同的处理器模式使用一个名字相同的物理寄存器,就是
- 常用编码资料
gengzg
编码
List<UserInfo> list=GetUserS.GetUserList(11);
String json=JSON.toJSONString(list);
HashMap<Object,Object> hs=new HashMap<Object, Object>();
for(int i=0;i<10;i++)
{
- 进程 vs. 线程
hongtoushizi
线程linux进程
我们介绍了多进程和多线程,这是实现多任务最常用的两种方式。现在,我们来讨论一下这两种方式的优缺点。
首先,要实现多任务,通常我们会设计Master-Worker模式,Master负责分配任务,Worker负责执行任务,因此,多任务环境下,通常是一个Master,多个Worker。
如果用多进程实现Master-Worker,主进程就是Master,其他进程就是Worker。
如果用多线程实现
- Linux定时Job:crontab -e 与 /etc/crontab 的区别
Josh_Persistence
linuxcrontab
一、linux中的crotab中的指定的时间只有5个部分:* * * * *
分别表示:分钟,小时,日,月,星期,具体说来:
第一段 代表分钟 0—59
第二段 代表小时 0—23
第三段 代表日期 1—31
第四段 代表月份 1—12
第五段 代表星期几,0代表星期日 0—6
如:
*/1 * * * * 每分钟执行一次。
*
- KMP算法详解
hm4123660
数据结构C++算法字符串KMP
字符串模式匹配我们相信大家都有遇过,然而我们也习惯用简单匹配法(即Brute-Force算法),其基本思路就是一个个逐一对比下去,这也是我们大家熟知的方法,然而这种算法的效率并不高,但利于理解。
假设主串s="ababcabcacbab",模式串为t="
- 枚举类型的单例模式
zhb8015
单例模式
E.编写一个包含单个元素的枚举类型[极推荐]。代码如下:
public enum MaYun {himself; //定义一个枚举的元素,就代表MaYun的一个实例private String anotherField;MaYun() {//MaYun诞生要做的事情//这个方法也可以去掉。将构造时候需要做的事情放在instance赋值的时候:/** himself = MaYun() {*
- Kafka+Storm+HDFS
ssydxa219
storm
cd /myhome/usr/stormbin/storm nimbus &bin/storm supervisor &bin/storm ui &Kafka+Storm+HDFS整合实践kafka_2.9.2-0.8.1.1.tgzapache-storm-0.9.2-incubating.tar.gzKafka安装配置我们使用3台机器搭建Kafk
- Java获取本地服务器的IP
中华好儿孙
javaWeb获取服务器ip地址
System.out.println("getRequestURL:"+request.getRequestURL());
System.out.println("getLocalAddr:"+request.getLocalAddr());
System.out.println("getLocalPort:&quo