2024年3月21日发(作者:)

64 }

65 BufferedReader responseBuffer = new BufferedReader(

66 new InputStreamReader((utStream())));

67 String output;

68 n("Output from Server: n");

69 while ((output = ne()) != null) {

70 n(output);

71 }

72 nect();

73 } catch (MalformedURLException e) {

74 tackTrace();

75 } catch (IOException e) {

76 tackTrace();

77 }

78 return "success";

79 }

80

81 }

ient实现

1 package ller;

2

3 import tity;

4 import sponse;

5 import luePair;

6 import ient;

7 import odedFormEntity;

8 import lete;

9 import t;

10 import st;

11 import t;

12 import ients;

13 import ameValuePair;

14 import red;

15 import ller;

16 import riable;

17 import tMapping;

18 import tMethod;

19 import seBody;

20

21 import Mapper;

22 import ;

23 import rvice;

24

25 import edReader;

26 import ption;

27 import treamReader;

28 import Stream;

29 import LConnection;

30 import medURLException;

31 import ;

32 import oder;

33 import ist;

34 import ;

35

36 @Controller

37 public class RestfulAction {

38

39 @Autowired

40 private UserService userService;

41

42 // 修改

43 @RequestMapping(value = "put/{param}", method = )

44 public @ResponseBody String put(@PathVariable String param) {

45 return "put:" + param;

46 }

47

48 // 新增

49 @RequestMapping(value = "post/{param}", method = )

50 public @ResponseBody User post(@PathVariable String param,String id,String name) {

51 User u = new User();

52 n(id);

53 n(name);

54 e(id);

55 sword(name);

56 il(id);

57 rname(name);

58 return u;

59 }

60

61

62 // 删除

63 @RequestMapping(value = "delete/{param}", method = )

64 public @ResponseBody String delete(@PathVariable String param) {

65 return "delete:" + param;

66 }

67

68 // 查找

69 @RequestMapping(value = "get/{param}", method = )

70 public @ResponseBody User get(@PathVariable String param) {

71 User u = new User();

72 e(param);

73 sword(param);

74 il(param);

75 rname("爱爱啊");

76 return u;

77 }

78

79

80

81 @RequestMapping(value = "dealCon2/{param}")

82 public @ResponseBody User dealCon2(@PathVariable String param) {

83 User user = null;

84 try {

85 HttpClient client = Default();

86 if("get".equals(param)){

87 HttpGet request = new HttpGet("localhost:8080/tao-manager-web/get/"

88 +"啊啊啊");

89 der("Accept", "application/json");

90 HttpResponse response = e(request);

91 HttpEntity entity = ity();

92 ObjectMapper mapper = new ObjectMapper();

93 user = lue(tent(), );

94 }else if("post".equals(param)){

95 HttpPost request2 = new HttpPost("localhost:8080/tao-manager-web/post/xxx");

96 List nvps = new ArrayList();

97 (new BasicNameValuePair("id", "啊啊啊"));

98 (new BasicNameValuePair("name", "secret"));

99 UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(nvps, "GBK");

100 ity(formEntity);

101 HttpResponse response2 = e(request2);

102 HttpEntity entity = ity();

103 ObjectMapper mapper = new ObjectMapper();

104 user = lue(tent(), );

105 }else if("delete".equals(param)){

106

107 }else if("put".equals(param)){

108

109 }

110 } catch (Exception e) {

111 tackTrace();

112 }

113 return user;

114 }

115

116

117 }

的RestTemplate

增加

1

2

3

4 class="ClientHttpRequestFactory">

5

6

7

8

9

10

11

12

controller

1 @Controller

2 public class RestTemplateAction {

3

4 @Autowired

5 private RestTemplate template;

6

7 @RequestMapping("RestTem")

8 public @ResponseBody User RestTem(String method) {

9 User user = null;

10 //查找

11 if ("get".equals(method)) {

12 user = Object(

13 "localhost:8080/tao-manager-web/get/{id}",

14 , "呜呜呜呜");

15

16 //getForEntity与getForObject的区别是可以获取返回值和状态、头等信息

17 ResponseEntity re = template.

18 getForEntity("localhost:8080/tao-manager-web/get/{id}",

19 , "呜呜呜呜");

20 n(tusCode());

21 n(y().getUsername());

22

23 //新增

24 } else if ("post".equals(method)) {

25 HttpHeaders headers = new HttpHeaders();

26 ("X-Auth-Token", UUID().toString());

27 MultiValueMap postParameters = new LinkedMultiValueMap();

28 ("id", "啊啊啊");

29 ("name", "部版本");

30 HttpEntity> requestEntity = new HttpEntity>(

31 postParameters, headers);

32 user = rObject(

33 "localhost:8080/tao-manager-web/post/aaa", requestEntity,

34 );

35 //删除

36 } else if ("delete".equals(method)) {

37 ("localhost:8080/tao-manager-web/delete/{id}","aaa");

38 //修改

39 } else if ("put".equals(method)) {

40 ("localhost:8080/tao-manager-web/put/{id}",null,"bbb");

41 }

42 return user;

43

44 }

45 }