本文目录一览:
java怎么调用后台接口
String sendPost(String jsonStr, String path)
throws IOException {
byte[] data = jsonStr.getBytes();
java.net.URL url = new java.net.URL(path);
java.net.HttpURLConnection conn =
(java.net.HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setConnectTimeout(5 * 1000);// 设置连接超时时间为5秒
conn.setReadTimeout(20 * 1000);// 设置读取超时时间为20秒
// 使用 URL 连接进行输出,则将 DoOutput标志设置为 true
conn.setDoOutput(true);
conn.setRequestProperty("Content-Type", "text/xml;charset=UTF-8");
//conn.setRequestProperty("Content-Encoding","gzip");
conn.setRequestProperty("Content-Length", String.valueOf(data.length));
OutputStream outStream = conn.getOutputStream();// 返回写入到此连接的输出流
outStream.write(data);
outStream.close();//关闭流
String msg = "";// 保存调用http服务后的响应信息
// 如果请求响应码是200,则表示成功
if (conn.getResponseCode() == 200) {
// HTTP服务端返回的编码是UTF-8,故必须设置为UTF-8,保持编码统一,否则会出现中文乱码
BufferedReader in = new BufferedReader(new InputStreamReader(
(InputStream) conn.getInputStream(), "UTF-8"));
msg = in.readLine();
in.close();
}
conn.disconnect();// 断开连接
return msg;
}
java后台如何给前端写使用接口?
java后台如何给前端写使用接口,框架一开始就得考虑好的,很多都使用mvc架构往往用户登录时,用户密码符合,会允许其访问,保存登录信息,下次就不需要再次登录了,直到保存的信息过期或无效,很多也都是使用组件来实现的,功能多又安全,需要单点登录的可以再加上cas。
常见的网络通讯方式,传输协议是http,https,目前大部分使用还是http,后台接口一般部署在某一台服务器上,通过其中的某个端口提供服务,下层协议基本都是基于tcp,ip的。
保证网络联通的情况下,可以直接按照协议及接口发送请求,通常请求为报文或者XML,http的过程比较简单。
https协议较http协议复杂,主要是https在引入了ssl之后,安全性得到了保证,但是类似tcp的三次握手,https在通讯时,也需要进行双向认证,所以事先需要签发证书。
网络传输协议对于一般开发人员来说,较为复杂,所以通常封装在通讯层面,而前端开发人员只需要关注后台接口,按照接口格式组装报文即可,而通讯所需的报文头,及认证都有通讯层公共模块完成,可以减少系统建设成本。
java后台接口怎么方便返回restful数据
首先Map的形式是最不推荐的。前端需要的数据必定是灵活多变的,我们可以创建多个VO,DTO来满足不同的接口调用。
比如用户User中包含密码,而返回前端的数据不能包含密码等敏感字段,我们可以创建UserVO,返回不带密码的数据。你可以通过“领域驱动”进一步了解相关VO,DTO,PO等的区别和使用。
你可能会说,为表现层专门创建VO较为繁琐,bean之间的转换成了问题。
这里推荐使用mapstruct。mapstruct使用注解驱动完成转换代码的生成,你只需要提供Mapper接口即可。
比如User 和 UserVO 的转换:
@Mapper(componentModel = "spring", uses = {})
public interface UserMapper {
UserVO userToUserVO(User user);
}