问题简化一下:对一个ip,一个线程请求100次。该次请求的响应时间为调用>
服务器处理请求的流程:
(1)服务器每次收到请求时,都会为这个请求开辟一个新的线程。
(2)服务器会把客户端的请求数据封装到request对象中,request就是请求数据的载体!
(3)服务器还会创建response对象,这个对象与客户端连接在一起,它可以用来向客户端发送响应。
由流程图可以看出,在JavaWeb的请求与响应中,最重要的两个参数为request以及response,这两参数在Servlet的service( )方法中。
1、response概念:
response是Servletservice方法的一个参数,类型为javaxservlet>
response对象的功能分为以下四种:
(1)设置响应头信息
(2)发送状态码
(3)设置响应正文
(4)重定向
2、response响应正文
response是响应对象,向客户端输出响应正文(响应体)可以使用response的响应流,repsonse一共提供了两个响应流对象:
(1)PrintWriter out = responsegetWriter():获取字符流;
(2)ServletOutputStream out = responsegetOutputStream():获取字节流;
当然,如果响应正文内容为字符,那么使用responsegetWriter(),如果响应内容是字节,例如下载时,那么可以使用responsegetOutputStream()。
注意,在一个请求中,不能同时使用这两个流!也就是说,要么你使用repsonsegetWriter(),要么使用responsegetOutputStream(),但不能同时使用这两个流。不然会抛出illegalStateException异常。
ClassforName("commysqljdbcDriver");
String url = "jdbc:mysql://localhost:3306/db_database10";//自己修改数据库名字
String username = "root";//数据库用户名
String password = "123456";//数据库密码
Connection conn = DriverManagergetConnection(url, username, password);
String query = "select viewType from 咨询类型表 where infoId = ";//自己修改表名,字段名,
String queryviewnum = "select viewNum from View_Num where viewType = ";
String insert = "insert into View_Num(viewId,viewType,viewTypeDetail,viewTime,viewNum) values(,,,,)";
String update = "update View_Num set viewNum = where viewType = ";
//第一步
PreparedStatement ps = connprepareStatement(query);
int infoId = 111;
pssetInt(1, infoId);
ResultSet rs = psexecuteQuery();
String leixing = "";
while (rsnext())
{
leixing = rsgetString("viewType");
}
我这里有上传大小限制,再追问,发下面的
以上就是关于怎样用JAVA实现模拟HTTP请求,得到服务器的响应时间等参数全部的内容,包括:怎样用JAVA实现模拟HTTP请求,得到服务器的响应时间等参数、javaweb如何实现请求和响应、JAVA后台如何获取数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)