1. Json conversion tool

1.  package com.taotao.utils;  

3.  import java.util.List;  

5.  import com.fasterxml.jackson.core.JsonProcessingException;  
6.  import com.fasterxml.jackson.databind.JavaType;  
7.  import com.fasterxml.jackson.databind.JsonNode;  
8.  import com.fasterxml.jackson.databind.ObjectMapper;  

10.  /** 11. * JSON conversion tool class 12  
13.  public class JsonUtils {  

15.  // Define the Jackson object
16.  private static final ObjectMapper MAPPER = new ObjectMapper();  

18.  /** 19. * Convert object to JSON string. 20. * <p>Title: pojoToJson</p> 21. * <p>Description: </p> 22. *@param data 
23.  * @return24. * /  
25.  public static String objectToJson(Object data) {  
26.  try {  
27.  String string = MAPPER.writeValueAsString(data);  
28.  return string;  
29.  } catch (JsonProcessingException e) {  
30.  e.printStackTrace();  
31.  }  
32.  return null;  
33.  }  

35.  /** 36. * Convert json result set to object 37. * 38. *@paramJsonData JSON data 39. *@paramThe object type in clazz objects is 40. *@return41. * /  
42.  public static <T> T jsonToPojo(String jsonData, Class<T> beanType) {  
43.  try {  
44.  T t = MAPPER.readValue(jsonData, beanType);  
45.  return t;  
46.  } catch (Exception e) {  
47.  e.printStackTrace();  
48.  }  
49.  return null;  
50.  }  

52.  * <p>Title: jsonToList</p> 55. * <p>Description: </p> 56. *@param jsonData 
57.  * @param beanType 
58.  * @return59. * /  
60.  public static <T>List<T> jsonToList(String jsonData, Class<T> beanType) {  
61.  JavaType javaType = MAPPER.getTypeFactory().constructParametricType(List.class, beanType);  
62.  try {  
63.  List<T> list = MAPPER.readValue(jsonData, javaType);  
64.  return list;  
65.  } catch (Exception e) {  
66.  e.printStackTrace();  
67.  }  

69.  return null;  
70.  }  

72.  }  
Copy the code

2. Cookies, speaking, reading and writing

1.  package com.taotao.common.utils;  

3.  import java.io.UnsupportedEncodingException;  
4.  import java.net.URLDecoder;  
5.  import java.net.URLEncoder;  

7.  import javax.servlet.http.Cookie;  
8.  import javax.servlet.http.HttpServletRequest;  
9.  import javax.servlet.http.HttpServletResponse;  

12.  * Cookie utility class 15. * 16. */  
17.  public final class CookieUtils {  

19.  /** 20. * gets the value of Cookie without encoding 21. * 22. *@param request 
23.  * @param cookieName 
24.  * @return25. * /  
26.  public static String getCookieValue(HttpServletRequest request, String cookieName) {  
27.  return getCookieValue(request, cookieName, false);  
28.}30.  /** 31. * Gets the Cookie value, 32. * 33. *@param request 
34.  * @param cookieName 
35.  * @return36. * /  
37.  public static String getCookieValue(HttpServletRequest request, String cookieName, boolean isDecoder) {  
38.  Cookie[] cookieList = request.getCookies();  
39.  if (cookieList == null || cookieName == null) {  
40.  return null;  
41.}42.  String retValue = null;  
43.  try {  
44.  for (int i = 0; i < cookieList.length; i++) {  
45.  if (cookieList[i].getName().equals(cookieName)) {  
46.  if (isDecoder) {  
47.  retValue = URLDecoder.decode(cookieList[i].getValue(), "UTF-8");  
48.}else {  
49.  retValue = cookieList[i].getValue();  
50.}51.  break;  
52.}53.}54.}catch (UnsupportedEncodingException e) {  
55.  e.printStackTrace();  
56.}57.  return retValue;  
58.}60.  /** 61. * Gets the value of the Cookie, 62. * 63@param request 
64.  * @param cookieName 
65.  * @return66. * /  
67.  public static String getCookieValue(HttpServletRequest request, String cookieName, String encodeString) {  
68.  Cookie[] cookieList = request.getCookies();  
69.  if (cookieList == null || cookieName == null) {  
70.  return null;  
71.}72.  String retValue = null;  
73.  try {  
74.  for (int i = 0; i < cookieList.length; i++) {  
75.  if (cookieList[i].getName().equals(cookieName)) {  
76.  retValue = URLDecoder.decode(cookieList[i].getValue(), encodeString);  
77.  break;  
78.}79.}80.}catch (UnsupportedEncodingException e) {  
81.  e.printStackTrace();  
82.}83.  return retValue;  
84.}86.  /** 87. * Sets the value of the Cookie without setting the validity time  
89.  public static void setCookie(HttpServletRequest request, HttpServletResponse response, String cookieName,  
90.  String cookieValue) {  
91.  setCookie(request, response, cookieName, cookieValue, -1);  
92.}94.  /** 95. * Sets the Cookie's value to take effect for the specified time, but does not encode 96. */  
97.  public static void setCookie(HttpServletRequest request, HttpServletResponse response, String cookieName,  
98.  String cookieValue, int cookieMaxage) {  
99.  setCookie(request, response, cookieName, cookieValue, cookieMaxage, false);  
100.}102.  /** 103. * Sets the Cookie value without setting the effective time, but encoding 104. */  
105.  public static void setCookie(HttpServletRequest request, HttpServletResponse response, String cookieName,  
106.  String cookieValue, boolean isEncode) {  
107.  setCookie(request, response, cookieName, cookieValue, -1, isEncode);  
108.}110.  /** 111. * Sets the Cookie value to take effect within the specified time, encoding parameter 112. */  
113.  public static void setCookie(HttpServletRequest request, HttpServletResponse response, String cookieName,  
114.  String cookieValue, int cookieMaxage, boolean isEncode) {  
115.  doSetCookie(request, response, cookieName, cookieValue, cookieMaxage, isEncode);  
116.}118.  /** 119. * Sets the Cookie value to take effect within the specified time, encoding parameter (specified encoding) 120. */  
121.  public static void setCookie(HttpServletRequest request, HttpServletResponse response, String cookieName,  
122.  String cookieValue, int cookieMaxage, String encodeString) {  
123.  doSetCookie(request, response, cookieName, cookieValue, cookieMaxage, encodeString);  
124.}126.  /** 127. * Delete Cookie with Cookie domain name 128. */  
129.  public static void deleteCookie(HttpServletRequest request, HttpServletResponse response,  
130.  String cookieName) {  
131.  doSetCookie(request, response, cookieName, "", -1.false);  
132.}134.  /** 135. * Sets the value of the Cookie to take effect for the specified time 136. * 137@paramCookieMaxage Maximum number of seconds for the cookie to take effect 138. */  
139.  private static final void doSetCookie(HttpServletRequest request, HttpServletResponse response,  
140.  String cookieName, String cookieValue, int cookieMaxage, boolean isEncode) {  
141.  try {  
142.  if (cookieValue == null) {  
143.  cookieValue = "";  
144.}else if (isEncode) {  
145.  cookieValue = URLEncoder.encode(cookieValue, "utf-8");  
146.}147.  Cookie cookie = new Cookie(cookieName, cookieValue);  
148.  if (cookieMaxage > 0)  
149.  cookie.setMaxAge(cookieMaxage);  
150.  if (null! = request) {// Set cookies for domain names
151.  String domainName = getDomainName(request);  
152.  System.out.println(domainName);  
153.  if (!"localhost".equals(domainName)) {  
154.  cookie.setDomain(domainName);  
155.}156.}157.  cookie.setPath("/");  
158.  response.addCookie(cookie);  
159.}catch (Exception e) {  
160.  e.printStackTrace();  
161.}162.}164.  /** 165. * Sets the value of the Cookie and makes it effective for the specified time@paramCookieMaxage Maximum number of seconds for the cookie to take effect 168. */  
169.  private static final void doSetCookie(HttpServletRequest request, HttpServletResponse response,  
170.  String cookieName, String cookieValue, int cookieMaxage, String encodeString) {  
171.  try {  
172.  if (cookieValue == null) {  
173.  cookieValue = "";  
174.}else {  
175.  cookieValue = URLEncoder.encode(cookieValue, encodeString);  
176.}177.  Cookie cookie = new Cookie(cookieName, cookieValue);  
178.  if (cookieMaxage > 0)  
179.  cookie.setMaxAge(cookieMaxage);  
180.  if (null! = request) {// Set cookies for domain names
181.  String domainName = getDomainName(request);  
182.  System.out.println(domainName);  
183.  if (!"localhost".equals(domainName)) {  
184.  cookie.setDomain(domainName);  
185.}186.}187.  cookie.setPath("/");  
188.  response.addCookie(cookie);  
189.}catch (Exception e) {  
190.  e.printStackTrace();  
191.}192.}194.  /** 195. * Get cookie domain name 196. */  
197.  private static final String getDomainName(HttpServletRequest request) {  
198.  String domainName = null;  

200.  String serverName = request.getRequestURL().toString();  
201.  if (serverName == null || serverName.equals("")) {  
202.  domainName = "";  
203.}else {  
204.  serverName = serverName.toLowerCase();  
205.  serverName = serverName.substring(7);  
206.  final int end = serverName.indexOf("/");  
207.  serverName = serverName.substring(0, end);  
208.  final String[] domains = serverName.split("\ \.");  
209.  int len = domains.length;  
210.  if (len > 3) {  
211.  // www.xxx.com.cn  
212.  domainName = "." + domains[len - 3] + "." + domains[len - 2] + "." + domains[len - 1];  
213.}else if (len <= 3 && len > 1) {  
214.  // xxx.com or xxx.cn  
215.  domainName = "." + domains[len - 2] + "." + domains[len - 1];  
216.}else {  
217.  domainName = serverName;  
218.}219.}221.  if(domainName ! =null && domainName.indexOf(":") > 0) {  
222.  String[] ary = domainName.split("\ \.");  
223.  domainName = ary[0];  
224.}225.  return domainName;  
226.}228.}Copy the code

3.HttpClientUtil

1.  package com.taotao.utils;  

3.  import java.io.IOException;  
4.  import java.net.URI;  
5.  import java.util.ArrayList;  
6.  import java.util.List;  
7.  import java.util.Map;  

9.  import org.apache.http.NameValuePair;  
10.  import org.apache.http.client.entity.UrlEncodedFormEntity;  
11.  import org.apache.http.client.methods.CloseableHttpResponse;  
12.  import org.apache.http.client.methods.HttpGet;  
13.  import org.apache.http.client.methods.HttpPost;  
14.  import org.apache.http.client.utils.URIBuilder;  
15.  import org.apache.http.entity.ContentType;  
16.  import org.apache.http.entity.StringEntity;  
17.  import org.apache.http.impl.client.CloseableHttpClient;  
18.  import org.apache.http.impl.client.HttpClients;  
19.  import org.apache.http.message.BasicNameValuePair;  
20.  import org.apache.http.util.EntityUtils;  

22.  public class HttpClientUtil {  

24.  public static String doGet(String url, Map<String.String> param) {  

26.  // Create an Httpclient object
27.  CloseableHttpClient httpclient = HttpClients.createDefault();  

29.  String resultString = "";  
30.  CloseableHttpResponse response = null;  
31.  try {  
32.  / / create a uri
33.  URIBuilder builder = new URIBuilder(url);  
34.  if(param ! =null) {  
35.  for (String key : param.keySet()) {  
36.  builder.addParameter(key, param.get(key));  
37.  }  
38.  }  
39.  URI uri = builder.build();  

41.  // Create an HTTP GET request
42.  HttpGet httpGet = new HttpGet(uri);  

44.  // Execute the request
45.  response = httpclient.execute(httpGet);  
46.  // Check whether the return status is 200
47.  if (response.getStatusLine().getStatusCode() == 200) {  
48.  resultString = EntityUtils.toString(response.getEntity(), "UTF-8");  
49.  }  
50.  } catch (Exception e) {  
51.  e.printStackTrace();  
52.  } finally {  
53.  try {  
54.  if(response ! =null) {  
55.  response.close();  
56.  }  
57.  httpclient.close();  
58.  } catch (IOException e) {  
59.  e.printStackTrace();  
60.  }  
61.  }  
62.  return resultString;  
63.  }  

65.  public static String doGet(String url) {  
66.  return doGet(url, null);  
67.  }  

69.  public static String doPost(String url, Map<String.String> param) {  
70.  // Create an Httpclient object
71.  CloseableHttpClient httpClient = HttpClients.createDefault();  
72.  CloseableHttpResponse response = null;  
73.  String resultString = "";  
74.  try {  
75.  // Create an Http Post request
76.  HttpPost httpPost = new HttpPost(url);  
77.  // Create a parameter list
78.  if(param ! =null) {  
79.  List<NameValuePair> paramList = new ArrayList<>();  
80.  for (String key : param.keySet()) {  
81.  paramList.add(new BasicNameValuePair(key, param.get(key)));  
82.  }  
83.  // Simulate the form
84.  UrlEncodedFormEntity entity = new UrlEncodedFormEntity(paramList);  
85.  httpPost.setEntity(entity);  
86.  }  
87.  // Execute the HTTP request
88.  response = httpClient.execute(httpPost);  
89.  resultString = EntityUtils.toString(response.getEntity(), "utf-8");  
90.  } catch (Exception e) {  
91.  e.printStackTrace();  
92.  } finally {  
93.  try {  
94.  response.close();  
95.  } catch (IOException e) {  
96.  // TODO Auto-generated catch block  
97.  e.printStackTrace();  
98.  }  
99.  }  

101.  return resultString;  
102.  }  

104.  public static String doPost(String url) {  
105.  return doPost(url, null);  
106.  }  

108.  public static String doPostJson(String url, String json) {  
109.  // Create an Httpclient object
110.  CloseableHttpClient httpClient = HttpClients.createDefault();  
111.  CloseableHttpResponse response = null;  
112.  String resultString = "";  
113.  try {  
114.  // Create an Http Post request
115.  HttpPost httpPost = new HttpPost(url);  
116.  // Create the requested content
117.  StringEntity entity = new StringEntity(json, ContentType.APPLICATION_JSON);  
118.  httpPost.setEntity(entity);  
119.  // Execute the HTTP request
120.  response = httpClient.execute(httpPost);  
121.  resultString = EntityUtils.toString(response.getEntity(), "utf-8");  
122.  } catch (Exception e) {  
123.  e.printStackTrace();  
124.  } finally {  
125.  try {  
126.  response.close();  
127.  } catch (IOException e) {  
128.  // TODO Auto-generated catch block  
129.  e.printStackTrace();  
130.  }  
131.  }  

133.  return resultString;  
134.  }  
135.  }  
Copy the code

4. FastDFSClient tools

1.  package cn.itcast.fastdfs.cliennt;  

3.  import org.csource.common.NameValuePair;  
4.  import org.csource.fastdfs.ClientGlobal;  
5.  import org.csource.fastdfs.StorageClient1;  
6.  import org.csource.fastdfs.StorageServer;  
7.  import org.csource.fastdfs.TrackerClient;  
8.  import org.csource.fastdfs.TrackerServer;  

10.  public class FastDFSClient {  

12.  private TrackerClient trackerClient = null;  
13.  private TrackerServer trackerServer = null;  
14.  private StorageServer storageServer = null;  
15.  private StorageClient1 storageClient = null;  

17.  public FastDFSClient(String conf) throws Exception {  
18.  if (conf.contains("classpath:")) {  
19.  conf = conf.replace("classpath:".this.getClass().getResource("/").getPath());  
20.}21.  ClientGlobal.init(conf);  
22.  trackerClient = new TrackerClient();  
23.  trackerServer = trackerClient.getConnection();  
24.  storageServer = null;  
25.  storageClient = new StorageClient1(trackerServer, storageServer);  
26.}28.  * <p>Title: uploadFile</p> 31. * <p>Description: </p> 32. *@paramFileName File full path 33. *@paramExtName File extension, excluding (.) 34. *@paramMetas file extension information 35. *@return 
36.  * @throws Exception 
37.  */  
38.  public String uploadFile(String fileName, String extName, NameValuePair[] metas) throws Exception {  
39.  String result = storageClient.upload_file1(fileName, extName, metas);  
40.  return result;  
41.}43.  public String uploadFile(String fileName) throws Exception {  
44.  return uploadFile(fileName, null.null);  
45.}47.  public String uploadFile(String fileName, String extName) throws Exception {  
48.  return uploadFile(fileName, extName, null);  
49.}51.  * <p>Title: uploadFile</p> 54. * <p>Description: </p> 55. *@paramFileContent file contents, byte array 56. *@paramExtName File extension 57. *@paramMetas file extension information 58. *@return 
59.  * @throws Exception 
60.  */  
61.  public String uploadFile(byte[] fileContent, String extName, NameValuePair[] metas) throws Exception {  

63.  String result = storageClient.upload_file1(fileContent, extName, metas);  
64.  return result;  
65.}67.  public String uploadFile(byte[] fileContent) throws Exception {  
68.  return uploadFile(fileContent, null.null);  
69.}71.  public String uploadFile(byte[] fileContent, String extName) throws Exception {  
72.  return uploadFile(fileContent, extName, null);  
73.}74.}Copy the code
1.  <span style="font-size:14px; font-weight:normal;">public class FastDFSTest {  

3.  @Test  
4.  public void testFileUpload() throws Exception {  
5.  // 1. Load the configuration file. The content in the configuration file is the address of the tracker service.
6.  ClientGlobal.init("D:/workspaces-itcast/term197/taotao-manager-web/src/main/resources/resource/client.conf");  
7.  // create a TrackerClient object. I'm just going to new one.
8.  TrackerClient trackerClient = new TrackerClient();  
9.  // create a connection with the TrackerClient object and obtain a TrackerServer object.
10.  TrackerServer trackerServer = trackerClient.getConnection();  
11.  // create a StorageServer reference with the value null
12.  StorageServer storageServer = null;  
13.  // Create a StorageClient object with two parameters TrackerServer object and StorageServer reference
14.  StorageClient storageClient = new StorageClient(trackerServer, storageServer);  
15.  // 6. Use the StorageClient object to upload images.
16.  // The extension does not contain ".
17.  String[] strings = storageClient.upload_file("D:/Documents/Pictures/images/200811281555127886.jpg"."jpg".null);  
18.  // return an array. Contains the group name and the path to the picture.
19.  for (String string : strings) {  
20.  System.out.println(string);  
21.  }  
22.  }  
23.  }</span>  

#! [image](http://upload-images.jianshu.io/upload_images/2509688-45370c9d24b87e31? imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
Copy the code

5. Obtain the exception stack information

1.  package com.taotao.utils;  

3.  import java.io.PrintWriter;  
4.  import java.io.StringWriter;  

6.  public class ExceptionUtil {  

8.  /** 10. * 11. *@param t 
12.  * @return13. * /  
14.  public static String getStackTrace(Throwable t) {  
15.  StringWriter sw = new StringWriter();  
16.  PrintWriter pw = new PrintWriter(sw);  

18.  try {  
19.  t.printStackTrace(pw);  
20.  return sw.toString();  
21.}finally {  
22.  pw.close();  
23.}24.}25.}Copy the code

6. Return value of the easyUIDataGrid object

1.  package com.taotao.result;  

3.  import java.util.List;  

5.  7. * <p>Title: EasyUIResult</p> 8. * <p>Description: </p> 9. www.itcast.com</p> 10. *@author11. *@dateJuly 21, 2015 4:12:512 PM. *@version13. 1.0 * /  
14.  public class EasyUIResult {  

16.  private Integer total;  

18.  privateList<? > rows;20.  public EasyUIResult(Integer total, List
          rows) {  
21.  this.total = total;  
22.  this.rows = rows;  
23.}25.  public EasyUIResult(longtotal, List<? > rows) {  
26.  this.total = (int) total;  
27.  this.rows = rows;  
28.}30.  public Integer getTotal(a) {  
31.  return total;  
32.}33.  public void setTotal(Integer total) {  
34.  this.total = total;  
35.}36.  publicList<? > getRows() {37.  return rows;  
38.}39.  public void setRows(List
          rows) {  
40.  this.rows = rows;  
41.}44.}Copy the code

7. FTP upload and download tools

1.  package com.taotao.utils;  

3.  import java.io.File;  
4.  import java.io.FileInputStream;  
5.  import java.io.FileNotFoundException;  
6.  import java.io.FileOutputStream;  
7.  import java.io.IOException;  
8.  import java.io.InputStream;  
9.  import java.io.OutputStream;  

11.  import org.apache.commons.net.ftp.FTP;  
12.  import org.apache.commons.net.ftp.FTPClient;  
13.  import org.apache.commons.net.ftp.FTPFile;  
14.  import org.apache.commons.net.ftp.FTPReply;  

16.  * <p>Title: FtpUtil</p> 19. * <p>Description: </p> 20. * <p>Company: www.itcast.com</p> 21@authorEnter yunlong 22. *@dateJuly 29, 2015 8:11:523. *@version24. 1.0 * /  
25.  public class FtpUtil {  

27.  /** 28. * Description: Uploads files to the FTP server@paramHost FTP server hostname 30. *@paramPort FTP server port 31. *@paramUsername FTP login account 32. *@paramPassword FTP login password 33. *@paramBasePath FTP server basic directory 34. *@paramFilePath FTP server filePath. For example, save by date: /2015/01/01. The filePath is basePath+filePath 35. *@paramFilename filename for uploading to the FTP server 36. *@paramInput Input stream 37. *@returnReturns true on success, false otherwise 38. */    
39.  public static boolean uploadFile(String host, int port, String username, String password, String basePath,  
40.  String filePath, String filename, InputStream input) {  
41.  boolean result = false;  
42.  FTPClient ftp = new FTPClient();  
43.  try {  
44.  int reply;  
45.  ftp.connect(host, port);// Connect to the FTP server
46.  // If the default port is used, you can directly connect to the FTP server using ftp.connect(host)
47.  ftp.login(username, password);/ / login
48.  reply = ftp.getReplyCode();  
49.  if(! FTPReply.isPositiveCompletion(reply)) {50.  ftp.disconnect();  
51.  return result;  
52.}53.  // Switch to the upload directory
54.  if(! ftp.changeWorkingDirectory(basePath+filePath)) {55.  // Create a directory if the directory does not exist
56.  String[] dirs = filePath.split("/");  
57.  String tempPath = basePath;  
58.  for (String dir : dirs) {  
59.  if (null == dir || "".equals(dir)) continue;  
60.  tempPath += "/" + dir;  
61.  if(! ftp.changeWorkingDirectory(tempPath)) {62.  if(! ftp.makeDirectory(tempPath)) {63.  return result;  
64.}else {  
65.  ftp.changeWorkingDirectory(tempPath);  
66.}67.}68.}69.}70.  // Set the upload file type to binary
71.  ftp.setFileType(FTP.BINARY_FILE_TYPE);  
72.  // Upload the file
73.  if(! ftp.storeFile(filename, input)) {74.  return result;  
75.}76.  input.close();  
77.  ftp.logout();  
78.  result = true;  
79.}catch (IOException e) {  
80.  e.printStackTrace();  
81.}finally {  
82.  if (ftp.isConnected()) {  
83.  try {  
84.  ftp.disconnect();  
85.}catch (IOException ioe) {  
86.}87.}88.}89.  return result;  
90.}92.  /** 93. * Description: Download file from FTP server 94. *@paramHost FTP server hostname 95. *@paramPort FTP server port 96. *@paramUsername FTP login account 97. *@paramPassword FTP login password 98. *@paramRemotePath Relative path on the FTP server 99. *@paramFileName fileName to download 100. *@paramLocalPath Download path to local 101. *@return102. * /    
103.  public static boolean downloadFile(String host, int port, String username, String password, String remotePath,  
104.  String fileName, String localPath) {  
105.  boolean result = false;  
106.  FTPClient ftp = new FTPClient();  
107.  try {  
108.  int reply;  
109.  ftp.connect(host, port);  
110.  // If the default port is used, you can directly connect to the FTP server using ftp.connect(host)
111.  ftp.login(username, password);/ / login
112.  reply = ftp.getReplyCode();  
113.  if(! FTPReply.isPositiveCompletion(reply)) {114.  ftp.disconnect();  
115.  return result;  
116.}117.  ftp.changeWorkingDirectory(remotePath);// Switch to the FTP server directory
118.  FTPFile[] fs = ftp.listFiles();  
119.  for (FTPFile ff : fs) {  
120.  if (ff.getName().equals(fileName)) {  
121.  File localFile = new File(localPath + "/" + ff.getName());  

123.  OutputStream is = new FileOutputStream(localFile);  
124.  ftp.retrieveFile(ff.getName(), is);  
125.  is.close();  
126.}127.}129.  ftp.logout();  
130.  result = true;  
131.}catch (IOException e) {  
132.  e.printStackTrace();  
133.}finally {  
134.  if (ftp.isConnected()) {  
135.  try {  
136.  ftp.disconnect();  
137.}catch (IOException ioe) {  
138.}139.}140.}141.  return result;  
142.}144.  public static void main(String[] args) {  
145.  try {    
146.  FileInputStream in=new FileInputStream(new File("D:\\temp\\image\\gaigeming.jpg"));    
147.  boolean flag = uploadFile("192.168.25.133".21."ftpuser"."ftpuser"."/home/ftpuser/www/images"."/ 2015/01/21"."gaigeming.jpg", in);    
148.  System.out.println(flag);    
149.}catch (FileNotFoundException e) {    
150.  e.printStackTrace();    
151.}152.}153.}Copy the code

8. Various ID generation policies

1.  package com.taotao.utils;  

3.  import java.util.Random;  

5.  7. * 

Title: IDUtils

8.

9. * @date July 22, 2015 2:32:10 10. * @version 1.0 11. */
12. public class IDUtils { 14. /** 15. * Image name generated 16. */ 17. public static String genImageName(a) { 18. // Take the long integer value of the current time including milliseconds 19. long millis = System.currentTimeMillis(); 20. //long millis = System.nanoTime(); 21. // Add three random digits 22. Random random = new Random(); 23. int end3 = random.nextInt(999); 24. // If there are less than three digits, add 0 before it 25. String str = millis + String.format("%03d", end3); 27. return str; 28. } 30. /** 31. * Product ID generated 32. */ 33. public static long genItemId(a) { 34. // Take the long integer value of the current time including milliseconds 35. long millis = System.currentTimeMillis(); 36. //long millis = System.nanoTime(); 37. // Add two random numbers 38. Random random = new Random(); 39. int end2 = random.nextInt(99); 40. // If there are less than two digits, add a 0 before it 41. String str = millis + String.format("%02d", end2); 42. long id = new Long(str); 43. return id; 44. } 46. public static void main(String[] args) { 47. for(int i=0; i<100; i++)48. System.out.println(genItemId()); 49. } 50. } Copy the code

9. Upload the image return value

1.  package com.result;  
2.  * 

Description:

6. *

Company: www.itcast.com

7. * @author 8. * @date July 22, 2015 2:09:02 PM 9. * @version 1.0 10. */
11. public class PictureResult { 13. /** 14. * Upload image return value, success: 0 failed: 1 15. */ 16. private Integer error; 17. /** 18. * The url used for the image is 19. */ 20. private String url; 21. Error message 23. */ 24. private String message; 25. public PictureResult(Integer state, String url) { 26. this.url = url; 27. this.error = state; 28. } 29. public PictureResult(Integer state, String url, String errorMessage) { 30. this.url = url; 31. this.error = state; 32. this.message = errorMessage; 33. } 34. public Integer getError(a) { 35. return error; 36. } 37. public void setError(Integer error) { 38. this.error = error; 39. } 40. public String getUrl(a) { 41. return url; 42. } 43. public void setUrl(String url) { 44. this.url = url; 45. } 46. public String getMessage(a) { 47. return message; 48. } 49. public void setMessage(String message) { 50. this.message = message; 51. } 53. } Copy the code

10. Customize the response structure

1.  package com.result;  

3.  import java.util.List;  

5.  import com.fasterxml.jackson.databind.JsonNode;  
6.  import com.fasterxml.jackson.databind.ObjectMapper;  

8.  /** 9. * Custom response structure 10  
11.  public class TaotaoResult {  

13.  // Define the Jackson object
14.  private static final ObjectMapper MAPPER = new ObjectMapper();  

16.  // Respond to the business status
17.  private Integer status;  

19.  // Response message
20.  private String msg;  

22.  // Data in the response
23.  private Object data;  

25.  public static TaotaoResult build(Integer status, String msg, Object data) {  
26.  return new TaotaoResult(status, msg, data);  
27.}29.  public static TaotaoResult ok(Object data) {  
30.  return new TaotaoResult(data);  
31.}33.  public static TaotaoResult ok(a) {  
34.  return new TaotaoResult(null);  
35.}37.  public TaotaoResult(a) {  

39.}41.  public static TaotaoResult build(Integer status, String msg) {  
42.  return new TaotaoResult(status, msg, null);  
43.}45.  public TaotaoResult(Integer status, String msg, Object data) {  
46.  this.status = status;  
47.  this.msg = msg;  
48.  this.data = data;  
49.}51.  public TaotaoResult(Object data) {  
52.  this.status = 200;  
53.  this.msg = "OK";  
54.  this.data = data;  
55.}57.  // public Boolean isOK() {
58.  // return this.status == 200;
59.  / /}

61.  public Integer getStatus(a) {  
62.  return status;  
63.}65.  public void setStatus(Integer status) {  
66.  this.status = status;  
67.}69.  public String getMsg(a) {  
70.  return msg;  
71.}73.  public void setMsg(String msg) {  
74.  this.msg = msg;  
75.}77.  public Object getData(a) {  
78.  return data;  
79.}81.  public void setData(Object data) {  
82.  this.data = data;  
83.}85.  * convert the JSON result set to a TaotaoResult object 87. * 88. *@paramJsonData JSON data 89. *@paramObject of type 90. * in clazz TaotaoResult@return91. * /  
92.  public static TaotaoResult formatToPojo(String jsonData, Class
          clazz) {  
93.  try {  
94.  if (clazz == null) {  
95.  return MAPPER.readValue(jsonData, TaotaoResult.class);  
96.}97.  JsonNode jsonNode = MAPPER.readTree(jsonData);  
98.  JsonNode data = jsonNode.get("data");  
99.  Object obj = null;  
100.  if(clazz ! =null) {  
101.  if (data.isObject()) {  
102.  obj = MAPPER.readValue(data.traverse(), clazz);  
103.}else if (data.isTextual()) {  
104.  obj = MAPPER.readValue(data.asText(), clazz);  
105.}106.}107.  return build(jsonNode.get("status").intValue(), jsonNode.get("msg").asText(), obj);  
108.}catch (Exception e) {  
109.  return null;  
110.}111.}113.  /** 114. * No object conversion@param json 
117.  * @return118. * /  
119.  public static TaotaoResult format(String json) {  
120.  try {  
121.  return MAPPER.readValue(json, TaotaoResult.class);  
122.}catch (Exception e) {  
123.  e.printStackTrace();  
124.}125.  return null;  
126.}128.  /** 129. * Object is a collection of conversions@paramJsonData JSON data 132. *@paramType 133. * in the clazz collection@return134. * /  
135.  public static TaotaoResult formatToList(String jsonData, Class
          clazz) {  
136.  try {  
137.  JsonNode jsonNode = MAPPER.readTree(jsonData);  
138.  JsonNode data = jsonNode.get("data");  
139.  Object obj = null;  
140.  if (data.isArray() && data.size() > 0) {  
141.  obj = MAPPER.readValue(data.traverse(),  
142.  MAPPER.getTypeFactory().constructCollectionType(List.class, clazz));  
143.}144.  return build(jsonNode.get("status").intValue(), jsonNode.get("msg").asText(), obj);  
145.}catch (Exception e) {  
146.  return null;  
147.}148.}150.}Copy the code

11. Jedis operation

1.  package com.taotao.jedis;  

3.  public interface JedisClient {  

5.  String set(String key, String value);  
6.  String get(String key);  
7.  Boolean exists(String key);  
8.  Long expire(String key, int seconds);  
9.  Long ttl(String key);  
10.  Long incr(String key);  
11.  Long hset(String key, String field, String value);  
12.  String hget(String key, String field);  
13.  Long hdel(String key, String. field);14.  }  
Copy the code
1.  package com.taotao.jedis;  

3.  import org.springframework.beans.factory.annotation.Autowired;  

5.  import redis.clients.jedis.JedisCluster;  

7.  public class JedisClientCluster implements JedisClient {  

9.  @Autowired  
10.  private JedisCluster jedisCluster;  

12.  @Override  
13.  public String set(String key, String value) {  
14.  return jedisCluster.set(key, value);  
15.}17.  @Override  
18.  public String get(String key) {  
19.  return jedisCluster.get(key);  
20.}22.  @Override  
23.  public Boolean exists(String key) {  
24.  return jedisCluster.exists(key);  
25.}27.  @Override  
28.  public Long expire(String key, int seconds) {  
29.  return jedisCluster.expire(key, seconds);  
30.}32.  @Override  
33.  public Long ttl(String key) {  
34.  return jedisCluster.ttl(key);  
35.}37.  @Override  
38.  public Long incr(String key) {  
39.  return jedisCluster.incr(key);  
40.}42.  @Override  
43.  public Long hset(String key, String field, String value) {  
44.  return jedisCluster.hset(key, field, value);  
45.}47.  @Override  
48.  public String hget(String key, String field) {  
49.  return jedisCluster.hget(key, field);  
50.}52.  @Override  
53.  public Long hdel(String key, String... field) {  
54.  return jedisCluster.hdel(key, field);  
55.}57.}Copy the code
1.  package com.taotao.jedis;  

4.  import org.springframework.beans.factory.annotation.Autowired;  

7.  import redis.clients.jedis.Jedis;  
8.  import redis.clients.jedis.JedisPool;  

11.  public class JedisClientPool implements JedisClient {  

13.  @Autowired  
14.  private JedisPool jedisPool;  

17.  @Override  
18.  public String set(String key, String value) {  
19.  Jedis jedis = jedisPool.getResource();  
20.  String result = jedis.set(key, value);  
21.  jedis.close();  
22.  return result;  
23.}26.  @Override  
27.  public String get(String key) {  
28.  Jedis jedis = jedisPool.getResource();  
29.  String result = jedis.get(key);  
30.  jedis.close();  
31.  return result;  
32.}35.  @Override  
36.  public Boolean exists(String key) {  
37.  Jedis jedis = jedisPool.getResource();  
38.  Boolean result = jedis.exists(key);  
39.  jedis.close();  
40.  return result;  
41.}44.  @Override  
45.  public Long expire(String key, int seconds) {  
46.  Jedis jedis = jedisPool.getResource();  
47.  Long result = jedis.expire(key, seconds);  
48.  jedis.close();  
49.  return result;  
50.}53.  @Override  
54.  public Long ttl(String key) {  
55.  Jedis jedis = jedisPool.getResource();  
56.  Long result = jedis.ttl(key);  
57.  jedis.close();  
58.  return result;  
59.}62.  @Override  
63.  public Long incr(String key) {  
64.  Jedis jedis = jedisPool.getResource();  
65.  Long result = jedis.incr(key);  
66.  jedis.close();  
67.  return result;  
68.}71.  @Override  
72.  public Long hset(String key, String field, String value) {  
73.  Jedis jedis = jedisPool.getResource();  
74.  Long result = jedis.hset(key, field, value);  
75.  jedis.close();  
76.  return result;  
77.}80.  @Override  
81.  public String hget(String key, String field) {  
82.  Jedis jedis = jedisPool.getResource();  
83.  String result = jedis.hget(key, field);  
84.  jedis.close();  
85.  return result;  
86.}89.  @Override  
90.  public Long hdel(String key, String... field) {  
91.  Jedis jedis = jedisPool.getResource();  
92.  Long result = jedis.hdel(key, field);  
93.  jedis.close();  
94.  return result;  
95.}98} The author of this article: [a little confused] [reading text]([HTTP://click.aliyun.com/m/50526/]This article is the original content of the cloud habitat community, shall not be reproduced without permission.Copy the code