mirror of
https://github.com/dqjdda/Aurora.git
synced 2018-11-06 05:33:29 +00:00
修复查询侧边栏样式问题,代码优化
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
package me.aurora.app.rest.web;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import me.aurora.annotation.Log;
|
||||
import me.aurora.domain.ResponseEntity;
|
||||
import me.aurora.util.AuroraConstant;
|
||||
import me.aurora.util.HttpUtils;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequestMapping("weather")
|
||||
public class WeatherController {
|
||||
|
||||
|
||||
@Log("获取天气信息")
|
||||
@GetMapping(value = "/index")
|
||||
public ModelAndView weather() {
|
||||
return new ModelAndView("/web/weather/weather");
|
||||
}
|
||||
|
||||
@GetMapping(value = "/query")
|
||||
public ResponseEntity queryWeather(@RequestParam String areaId) {
|
||||
try {
|
||||
String data = HttpUtils.sendPost(AuroraConstant.MEIZU_WEATHER_URL, "cityIds=" + areaId);
|
||||
return ResponseEntity.ok(data);
|
||||
} catch (Exception e) {
|
||||
log.error("查询天气失败", e);
|
||||
return ResponseEntity.error("查询天气失败,请联系网站管理员!");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -5,7 +5,6 @@ import org.hibernate.annotations.CreationTimestamp;
|
||||
import javax.persistence.*;
|
||||
import java.io.Serializable;
|
||||
import java.sql.Timestamp;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @author 郑杰
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
package me.aurora.service.query;
|
||||
|
||||
public class SysLogQueryService {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package me.aurora.util;
|
||||
|
||||
/**
|
||||
* @author 郑杰
|
||||
* @date 2018/09/29 12:52:06
|
||||
* 常用接口
|
||||
*/
|
||||
public class AuroraConstant {
|
||||
|
||||
private AuroraConstant() {
|
||||
}
|
||||
|
||||
public static final String MEIZU_WEATHER_URL = "http://aider.meizu.com/app/weather/listWeather";
|
||||
}
|
||||
@@ -0,0 +1,153 @@
|
||||
package me.aurora.util;
|
||||
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import javax.net.ssl.*;
|
||||
import java.io.*;
|
||||
import java.net.URL;
|
||||
import java.net.URLConnection;
|
||||
import java.security.cert.X509Certificate;
|
||||
|
||||
/**
|
||||
* @author mybird
|
||||
* @date 2018/09/29 12:45:00
|
||||
*/
|
||||
public class HttpUtils {
|
||||
|
||||
private static Logger log = LoggerFactory.getLogger(HttpUtils.class);
|
||||
|
||||
private static final String USER_AGENT = "user-agent";
|
||||
private static final String USER_AGENT_VALUE = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)";
|
||||
private static final String CONNECTION = "connection";
|
||||
private static final String CONNECTION_VALUE = "Keep-Alive";
|
||||
private static final String ACCEPT = "accept";
|
||||
private static final String UTF8 = "utf-8";
|
||||
private static final String ACCEPT_CHARSET = "Accept-Charset";
|
||||
private static final String CONTENTTYPE = "contentType";
|
||||
private static final String SSL = "ssl";
|
||||
|
||||
protected HttpUtils() {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 向指定 URL 发送GET方法的请求
|
||||
*
|
||||
* @param url 发送请求的 URL
|
||||
* @param param 请求参数,请求参数应该是 name1=value1&name2=value2 的形式。
|
||||
* @return 所代表远程资源的响应结果
|
||||
*/
|
||||
public static String sendGet(String url, String param) throws IOException {
|
||||
String urlNameString = url + "?" + param;
|
||||
URL realUrl = new URL(urlNameString);
|
||||
URLConnection connection = realUrl.openConnection();
|
||||
StringBuilder result = new StringBuilder();
|
||||
connection.setRequestProperty(USER_AGENT, USER_AGENT_VALUE);
|
||||
connection.setRequestProperty(CONNECTION, CONNECTION_VALUE);
|
||||
connection.setRequestProperty(ACCEPT, "*/*");
|
||||
connection.connect();
|
||||
try (BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()))) {
|
||||
String line;
|
||||
while ((line = in.readLine()) != null) {
|
||||
result.append(line);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error("发送GET请求出现异常!", e);
|
||||
}
|
||||
return result.toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* 向指定 URL 发送POST方法的请求
|
||||
*
|
||||
* @param url 发送请求的 URL
|
||||
* @param param 请求参数,请求参数应该是 name1=value1&name2=value2 的形式。
|
||||
* @return 所代表远程资源的响应结果
|
||||
*/
|
||||
public static String sendPost(String url, String param) throws IOException {
|
||||
StringBuilder result = new StringBuilder();
|
||||
|
||||
String urlNameString = url + "?" + param;
|
||||
URL realUrl = new URL(urlNameString);
|
||||
URLConnection conn = realUrl.openConnection();
|
||||
conn.setDoInput(true);
|
||||
conn.setDoOutput(true);
|
||||
conn.setRequestProperty(CONTENTTYPE, UTF8);
|
||||
conn.setRequestProperty(ACCEPT_CHARSET, UTF8);
|
||||
conn.setRequestProperty(USER_AGENT, USER_AGENT_VALUE);
|
||||
conn.setRequestProperty(CONNECTION, CONNECTION_VALUE);
|
||||
conn.setRequestProperty(ACCEPT, "*/*");
|
||||
try (PrintWriter out = new PrintWriter(conn.getOutputStream()); BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), UTF8))) {
|
||||
String line;
|
||||
while ((line = in.readLine()) != null) {
|
||||
result.append(line);
|
||||
}
|
||||
out.flush();
|
||||
out.print(param);
|
||||
} catch (Exception e) {
|
||||
log.error("发送 POST 请求出现异常!", e);
|
||||
}
|
||||
return result.toString();
|
||||
}
|
||||
|
||||
public static String sendSSLPost(String url, String param) {
|
||||
StringBuilder result = new StringBuilder();
|
||||
String urlNameString = url + "?" + param;
|
||||
try {
|
||||
SSLContext sc = SSLContext.getInstance(SSL);
|
||||
sc.init(null, new TrustManager[]{new TrustAnyTrustManager()}, new java.security.SecureRandom());
|
||||
URL console = new URL(urlNameString);
|
||||
HttpsURLConnection conn = (HttpsURLConnection) console.openConnection();
|
||||
conn.setRequestProperty(ACCEPT, "*/*");
|
||||
conn.setRequestProperty(CONNECTION, CONNECTION_VALUE);
|
||||
conn.setRequestProperty(USER_AGENT, USER_AGENT_VALUE);
|
||||
conn.setRequestProperty(ACCEPT_CHARSET, UTF8);
|
||||
conn.setRequestProperty(CONTENTTYPE, UTF8);
|
||||
conn.setDoOutput(true);
|
||||
conn.setDoInput(true);
|
||||
|
||||
conn.setSSLSocketFactory(sc.getSocketFactory());
|
||||
conn.setHostnameVerifier(new TrustAnyHostnameVerifier());
|
||||
conn.connect();
|
||||
InputStream is = conn.getInputStream();
|
||||
BufferedReader indata = new BufferedReader(new InputStreamReader(is));
|
||||
String ret = "";
|
||||
while (ret != null) {
|
||||
ret = indata.readLine();
|
||||
if (ret != null && !ret.trim().equals("")) {
|
||||
result.append(ret);
|
||||
}
|
||||
}
|
||||
conn.disconnect();
|
||||
indata.close();
|
||||
} catch (Exception e) {
|
||||
log.error("发送SSL POST 请求出现异常!", e);
|
||||
}
|
||||
return result.toString();
|
||||
}
|
||||
|
||||
private static class TrustAnyTrustManager implements X509TrustManager {
|
||||
@Override
|
||||
public void checkClientTrusted(X509Certificate[] chain, String authType) {
|
||||
//trust anything
|
||||
}
|
||||
@Override
|
||||
public void checkServerTrusted(X509Certificate[] chain, String authType) {
|
||||
//trust anything
|
||||
}
|
||||
@Override
|
||||
public X509Certificate[] getAcceptedIssuers() {
|
||||
return new X509Certificate[]{};
|
||||
}
|
||||
}
|
||||
|
||||
private static class TrustAnyHostnameVerifier implements HostnameVerifier {
|
||||
@Override
|
||||
public boolean verify(String hostname, SSLSession session) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@@ -74,14 +74,6 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-md12">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-header">系统日志</div>
|
||||
<div class="layui-card-body">
|
||||
<table class="layui-table" id="myTable" lay-filter="tools"></table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-md4">
|
||||
@@ -126,7 +118,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>前端框架</td>
|
||||
<td>layui v2.3.0</td>
|
||||
<td>layui v2.4.3</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>作者</td>
|
||||
@@ -371,27 +363,6 @@
|
||||
}]
|
||||
}
|
||||
});
|
||||
//表格渲染
|
||||
table.render({
|
||||
elem: '#myTable'
|
||||
,url:'/sysLog/getLogInfo'
|
||||
,page: true
|
||||
,id:"ID"
|
||||
,cellMinWidth: 80 //全局定义常规单元格的最小宽度,layui 2.2.1 新增
|
||||
,cols: [
|
||||
[
|
||||
{field:'id',align:'center', width:70, title: '序号'}
|
||||
,{field:'username', title: '用户昵称'}
|
||||
,{field:'ip', title: '用户IP'}
|
||||
,{field:'location', title: 'IP来源'}
|
||||
,{field:'operation', title: '描述'}
|
||||
,{field:'method', title: '请求方法'}
|
||||
,{field:'params', title: '请求参数'}
|
||||
,{field:'time', title: '请求耗时'}
|
||||
,{field:'createTime',width:175, title: '创建时间'}
|
||||
]
|
||||
]
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<style scoped>
|
||||
|
||||
@@ -7,12 +7,15 @@
|
||||
<script type="text/javascript" charset="utf-8" th:src="@{'/plugins/richText/all.min.js'}"> </script>
|
||||
<link rel="stylesheet" th:href="@{'/plugins/css/layui.css'}">
|
||||
<script type="text/javascript" charset="utf-8" th:src="@{'/plugins/richText/lang/zh-cn/zh-cn.js'}"></script>
|
||||
<style>
|
||||
.layui-form-label{float:left;display:block;padding:9px 15px;width:100px;font-weight:400;line-height:20px;text-align:right}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief">
|
||||
<ul class="layui-tab-title">
|
||||
<li class="layui-this">邮件发送</li>
|
||||
<li>邮件测试</li>
|
||||
<li class="layui-this">参数配置</li>
|
||||
<li>发送邮件</li>
|
||||
<li>使用说明</li>
|
||||
</ul>
|
||||
<div class="layui-tab-content" style="height: 100px;">
|
||||
@@ -114,8 +117,7 @@
|
||||
<pre class="layui-code">
|
||||
邮件服务器必须支持并打开SMTP协议,详细请查看相关帮助说明
|
||||
配置文件的样例中提供的是我测试邮件功能注册的sina.com邮箱
|
||||
帐号密码公开,供测试使用,存入数据库的密码会加密处理,文明测试谢谢
|
||||
</pre>
|
||||
帐号密码公开,供测试使用,存入数据库的密码会加密处理,文明测试谢谢</pre>
|
||||
<blockquote class="layui-elem-quote"> 邮件服务器配置</blockquote>
|
||||
<pre class="layui-code">
|
||||
# 邮件服务器的SMTP地址,可选,默认为smtp
|
||||
@@ -129,8 +131,7 @@
|
||||
# 密码(注意,某些邮箱需要为SMTP服务单独设置密码,如QQ和163等等)
|
||||
pass = dqjdda1996.
|
||||
# 是否开启ssl,默认开启
|
||||
sslEnable = true
|
||||
</pre>
|
||||
sslEnable = true</pre>
|
||||
<blockquote class="layui-elem-quote">发送邮箱</blockquote>
|
||||
<pre class="layui-code">
|
||||
MailAccount account = new MailAccount();
|
||||
@@ -141,8 +142,7 @@
|
||||
account.setUser("auaur");
|
||||
account.setPass("pass");
|
||||
# 倒数第二个参数:是否为http格式
|
||||
MailUtil.send(account, CollUtil.newArrayList("hutool@foxmail.com"), "测试", "邮件来自Aurora测试", true,file...);
|
||||
</pre>
|
||||
MailUtil.send(account, CollUtil.newArrayList("hutool@foxmail.com"), "测试", "邮件来自Aurora测试", true,file...);</pre>
|
||||
<blockquote class="layui-elem-quote">更多帮助</blockquote>
|
||||
<pre class="layui-code">更多帮助请查询文档:<a style="color:#009688" href="http://hutool.mydoc.io/#text_319499" target="_black">hutool工具包</a></pre>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user