package com.fzzy.web; import com.alibaba.fastjson.JSON; import com.ld.license.LicenseCheckModel; import com.ld.license.utils.AbstractServerInfos; import com.ld.license.utils.LinuxServerInfos; import com.ld.license.utils.WindowsServerInfos; import org.apache.commons.lang.StringUtils; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; /** * 测试Action接口,支持匿名访问 * 方位路径:http://127.0.0.1:8080/igds/serverInfo.action?osName=windows */ @Controller @RequestMapping public class ServerInfoAction { @RequestMapping("/serverInfo") public @ResponseBody String serverInfo(HttpServletRequest request, HttpServletResponse response) throws Exception { String osName = request.getParameter("osName"); // 操作系统类型 if (StringUtils.isEmpty(osName)) { osName = "windows"; } osName = osName.toLowerCase(); AbstractServerInfos abstractServerInfos = null; // 根据不同操作系统类型选择不同的数据获取方法 if (osName.startsWith("windows")) { abstractServerInfos = new WindowsServerInfos(); } else if (osName.startsWith("linux")) { abstractServerInfos = new LinuxServerInfos(); } else {// 其他服务器类型 abstractServerInfos = new LinuxServerInfos(); } LicenseCheckModel data = abstractServerInfos.getServerInfos(); response.setCharacterEncoding("UTF-8"); response.setContentType("application/json;charset=UTF8"); // PrintWriter writer = response.getWriter(); // writer.write(JSON.toJSONString(data)); // writer.close(); return JSON.toJSONString(data); } }