1、java 如何在服务器端用socket创建一个监听端口,并对接受的数据进行处理,端口号为3333,请高手指点一下
我百度HI你好了
public class Test {
public static void main(String[] args) {
Test1 t=new Test1();
t.start(); //启动线程
}
}
/**
* 继承一个线程类
* @author Administrator
*
*/
class Test1 extends Thread{
private ServerSocket server = null;
public Test1(){
try {
server=new ServerSocket(3333);
} catch (IOException e) {
// TODO Auto-generated catch block
System.out.println("服务端初始化失败!");
}
}
/**
* 继承父类方法
*/
public void run(){
Socket clientSocket = null;
DataInputStream dis =null;
DataOutputStream dos=null;
String str="";
while(true){
try {
clientSocket=server.accept();
dis = new DataInputStream(clientSocket.getInputStream());//获取输入流,用于接收客户端发送来的数据
dos = new DataOutputStream(clientSocket.getOutputStream());//获取输出流,用于客户端向服务器端发送数据
str=dis.readUTF(); //这里是客户端发送来的数据
/*
* 这里边你就可以做你想操作的事情了
*/
dos.writeUTF("这里是返回到客户端的数据");//这里用来向客户端返回数据
dis.close();
dos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
2、java 怎么获取web容器的ip和端口号
request.getRemoteAddr();IP获取
request.getRemotePort(): 端口号
3、用java监听端口,怎么获取服务器的返回值?能用requset吗?
如果是web项目的话可以用request等对象来获取,
如果是socket项目的话要通过流来获取
4、怎么在tomcat启动时自动执行一个java类 获得本项目服务器的IP和端口
@PostConstruct
public void init() {
try {
MBeanServer beanServer = ManagementFactory.getPlatformMBeanServer();
Set<ObjectName> objectNames = beanServer.queryNames(new ObjectName("*:type=Connector,*"),
Query.match(Query.attr("protocol"), Query.value("HTTP/1.1")));
serverIp = InetAddress.getLocalHost().getHostAddress();
serverPort = objectNames.iterator().next().getKeyProperty("port");
} catch (Exception e) {
e.printStackTrace();
}
}
这段代码可以获取到,但是存在一个问题就是在Linux环境下启动项目的时候,
objectNames.iterator().next().getKeyProperty("port");这句会抛出异常:
java.util.NoSuchElementException。如果仅仅是在Windows下的话,上面的代码完全OK
5、Java网络编程获取端口
客户端不能指定自己的端口
~~~~~~~~~
6、如何用java程序获得本机的端口号?
你是不是想在JSP里面,想获取当前服务器的端口呢?如果是的话,在JSP里面,回代码是:request.getLocalPort();
如果想获取客答户端的端口,JSP代码是:request.getRemotePort();
你的问题描述的不是很清楚,很难确切的回答你。
7、java 如何获取指定端口数据
你这个说的太简略了,至少说下用的是什么技术啊,是rmi还是socket,还是http。。。反正实现不一样的话,可能获取方式就不一样了哦
8、Java中服务器端ServerSocket对象怎么获取服务器端地址和端口号??,怎么获取远程请求的
ServerSocket s = new ServerSocket(8888);
while (true) {
// 建立连接
Socket socket = s.accept();
/ /getInetAddress()获取远程ip地址,getPort()远程客户端的断后好
"你好,客户端地址信息: " + socket.getInetAddress() + "\t客户端通信端口号: " + socket.getPort()
9、java的servlet 不通过request能获取到服务器IP与提供的端口号吗。
所以javascript可以通过ajax技术来获得后端语言得到的IP,并返回到前端。
1:通过java的servlet获取IP:
public String getRemoteAddress(HttpServletRequest request) {
String ip = request.getHeader("x-forwarded-for");
if (ip == null || ip.length() == 0 || ip.equalsIgnoreCase("unknown")) {
ip = request.getRemoteAddr();
}
return ip;
}
如果是用反向代理技术的话request.getHeader("x-forwarded-for");会有值,
一般情况下,只要request.getRemoteAddr();就可以了。
2:获取MAC:
public String getMACAddress(String ip) {
String str = "";
String macAddress = "";
try {
Process p = Runtime.getRuntime().exec("nbtstat -a " + ip);
InputStreamReader ir = new InputStreamReader(p.getInputStream());
LineNumberReader input = new LineNumberReader(ir);
for (int i = 1; i < 100; i++) {
str = input.readLine();
if (str != null) {
//if (str.indexOf("MAC Address") > 1) {
if (str.indexOf("MAC") > 1) {
macAddress = str.substring(
str.indexOf("=") + 2, str.length());
break;
}
}
}
} catch (IOException e) {
e.printStackTrace(System.out);
}
return macAddress;
}
通过命令nbtstat -a ip来获得该ip相对应的mac地址。
10、java 怎么获取web容器的ip和端口号
<tr>
<td width="50%"><%= request.getServerName()%> </td>
<td height="4">服务器复的制域名</td>
</tr>
<tr>
<td width="50%"><%= java.net.InetAddress.getLocalHost().getHostAddress() %> </td>
<td height="4">服务器的IP地址</td>
</tr>
<tr>
<td width="50%"><%=request.getServerPort()%> </td>
<td height="5">服务器正在运行的端口</td>
</tr>