Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
jinli gu
Eladmin
Commits
e4ca7afc
"src/main/vscode:/vscode.git/clone" did not exist on "afa5c53241ee3c091719ff54547956f6ca9e20ee"
Commit
e4ca7afc
authored
Nov 25, 2019
by
dqjdda
Browse files
阿里巴巴代码规范
parent
6d941c09
Changes
160
Hide whitespace changes
Inline
Side-by-side
eladmin-generator/src/main/java/me/zhengjie/service/impl/GeneratorServiceImpl.java
View file @
e4ca7afc
...
...
@@ -92,7 +92,7 @@ public class GeneratorServiceImpl implements GeneratorService {
new
ColumnInfo
(
tableName
,
arr
[
0
].
toString
(),
arr
[
1
]
.
equals
(
"NO"
),
"NO"
.
equals
(
arr
[
1
]
),
arr
[
2
].
toString
(),
ObjectUtil
.
isNotNull
(
arr
[
3
])
?
arr
[
3
].
toString
()
:
null
,
ObjectUtil
.
isNotNull
(
arr
[
4
])
?
arr
[
4
].
toString
()
:
null
,
...
...
eladmin-generator/src/main/java/me/zhengjie/utils/GenUtil.java
View file @
e4ca7afc
...
...
@@ -22,6 +22,7 @@ import java.util.Map;
* @date 2019-01-02
*/
@Slf4j
@SuppressWarnings
(
"all"
)
public
class
GenUtil
{
private
static
final
String
TIMESTAMP
=
"Timestamp"
;
...
...
@@ -63,7 +64,7 @@ public class GenUtil {
public
static
void
generatorCode
(
List
<
ColumnInfo
>
columnInfos
,
GenConfig
genConfig
)
throws
IOException
{
// 存储模版字段数据
Map
<
String
,
Object
>
genMap
=
new
HashMap
<>();
Map
<
String
,
Object
>
genMap
=
new
HashMap
<>(
16
);
// 包名称
genMap
.
put
(
"package"
,
genConfig
.
getPack
());
// 模块名称
...
...
@@ -115,7 +116,7 @@ public class GenUtil {
List
<
Map
<
String
,
Object
>>
isNotNullColumns
=
new
ArrayList
<>();
for
(
ColumnInfo
column
:
columnInfos
)
{
Map
<
String
,
Object
>
listMap
=
new
HashMap
<>();
Map
<
String
,
Object
>
listMap
=
new
HashMap
<>(
16
);
// 字段描述
listMap
.
put
(
"remark"
,
column
.
getRemark
());
// 字段类型
...
...
eladmin-logging/src/main/java/me/zhengjie/domain/Log.java
View file @
e4ca7afc
...
...
@@ -21,40 +21,42 @@ public class Log implements Serializable {
@GeneratedValue
(
strategy
=
GenerationType
.
IDENTITY
)
private
Long
id
;
/
/
操作用户
/
**
操作用户
*/
private
String
username
;
/
/
描述
/
**
描述
*/
private
String
description
;
/
/
方法名
/
**
方法名
*/
private
String
method
;
/
/
参数
/
**
参数
*/
@Column
(
columnDefinition
=
"text"
)
private
String
params
;
/
/
日志类型
/
**
日志类型
*/
@Column
(
name
=
"log_type"
)
private
String
logType
;
/
/
请求ip
/
**
请求ip
*/
@Column
(
name
=
"request_ip"
)
private
String
requestIp
;
/** 地址 */
@Column
(
name
=
"address"
)
private
String
address
;
/** 浏览器 */
private
String
browser
;
/
/
请求耗时
/
**
请求耗时
*/
private
Long
time
;
/
/
异常详细
/
**
异常详细
*/
@Column
(
name
=
"exception_detail"
,
columnDefinition
=
"text"
)
private
byte
[]
exceptionDetail
;
/
/
创建日期
/
**
创建日期
*/
@CreationTimestamp
@Column
(
name
=
"create_time"
)
private
Timestamp
createTime
;
...
...
eladmin-logging/src/main/java/me/zhengjie/repository/LogRepository.java
View file @
e4ca7afc
...
...
@@ -15,10 +15,10 @@ public interface LogRepository extends JpaRepository<Log,Long>, JpaSpecification
/**
* 获取一个时间段的IP记录
* @param date1 startTime
* @param date2 entTime
* @return IP数目
*/
@Query
(
value
=
"select count(*) FROM (select request_ip FROM log where create_time between ?1 and ?2 GROUP BY request_ip) as s"
,
nativeQuery
=
true
)
Long
findIp
(
String
date1
,
String
date2
);
@Query
(
value
=
"select l FROM Log l where l.id = ?1"
)
Log
findExceptionById
(
Long
id
);
}
eladmin-logging/src/main/java/me/zhengjie/service/LogService.java
View file @
e4ca7afc
...
...
@@ -16,12 +16,37 @@ import java.util.List;
*/
public
interface
LogService
{
/**
* 分页查询
* @param criteria 查询条件
* @param pageable 分页参数
* @return /
*/
Object
queryAll
(
LogQueryCriteria
criteria
,
Pageable
pageable
);
/**
* 查询全部数据
* @param criteria 查询条件
* @return /
*/
List
<
Log
>
queryAll
(
LogQueryCriteria
criteria
);
/**
* 查询用户日志
* @param criteria 查询条件
* @param pageable 分页参数
* @return -
*/
Object
queryAllByUser
(
LogQueryCriteria
criteria
,
Pageable
pageable
);
/**
* 保存日志数据
* @param username 用户
* @param browser 浏览器
* @param ip 请求IP
* @param joinPoint /
* @param log 日志实体
*/
@Async
void
save
(
String
username
,
String
browser
,
String
ip
,
ProceedingJoinPoint
joinPoint
,
Log
log
);
...
...
@@ -32,5 +57,11 @@ public interface LogService {
*/
Object
findByErrDetail
(
Long
id
);
void
download
(
List
<
Log
>
queryAll
,
HttpServletResponse
response
)
throws
IOException
;
/**
* 导出日志
* @param logs 待导出的数据
* @param response /
* @throws IOException /
*/
void
download
(
List
<
Log
>
logs
,
HttpServletResponse
response
)
throws
IOException
;
}
eladmin-logging/src/main/java/me/zhengjie/service/dto/LogErrorDTO.java
View file @
e4ca7afc
...
...
@@ -13,26 +13,19 @@ public class LogErrorDTO implements Serializable {
private
Long
id
;
// 操作用户
private
String
username
;
// 描述
private
String
description
;
// 方法名
private
String
method
;
// 参数
private
String
params
;
private
String
browser
;
// 请求ip
private
String
requestIp
;
private
String
address
;
// 创建日期
private
Timestamp
createTime
;
}
\ No newline at end of file
eladmin-logging/src/main/java/me/zhengjie/service/dto/LogQueryCriteria.java
View file @
e4ca7afc
...
...
@@ -13,7 +13,6 @@ import java.util.List;
@Data
public
class
LogQueryCriteria
{
// 多字段模糊
@Query
(
blurry
=
"username,description,address,requestIp,method,params"
)
private
String
blurry
;
...
...
eladmin-logging/src/main/java/me/zhengjie/service/dto/LogSmallDTO.java
View file @
e4ca7afc
...
...
@@ -11,19 +11,15 @@ import java.sql.Timestamp;
@Data
public
class
LogSmallDTO
implements
Serializable
{
// 描述
private
String
description
;
// 请求ip
private
String
requestIp
;
// 请求耗时
private
Long
time
;
private
String
address
;
private
String
browser
;
// 创建日期
private
Timestamp
createTime
;
}
eladmin-logging/src/main/java/me/zhengjie/service/impl/LogServiceImpl.java
View file @
e4ca7afc
...
...
@@ -9,10 +9,7 @@ import me.zhengjie.service.LogService;
import
me.zhengjie.service.dto.LogQueryCriteria
;
import
me.zhengjie.service.mapper.LogErrorMapper
;
import
me.zhengjie.service.mapper.LogSmallMapper
;
import
me.zhengjie.utils.FileUtil
;
import
me.zhengjie.utils.PageUtil
;
import
me.zhengjie.utils.QueryHelp
;
import
me.zhengjie.utils.StringUtils
;
import
me.zhengjie.utils.*
;
import
org.aspectj.lang.ProceedingJoinPoint
;
import
org.aspectj.lang.reflect.MethodSignature
;
import
org.springframework.data.domain.Page
;
...
...
@@ -52,7 +49,8 @@ public class LogServiceImpl implements LogService {
@Override
public
Object
queryAll
(
LogQueryCriteria
criteria
,
Pageable
pageable
){
Page
<
Log
>
page
=
logRepository
.
findAll
(((
root
,
criteriaQuery
,
cb
)
->
QueryHelp
.
getPredicate
(
root
,
criteria
,
cb
)),
pageable
);
if
(
"ERROR"
.
equals
(
criteria
.
getLogType
()))
{
String
status
=
"ERROR"
;
if
(
status
.
equals
(
criteria
.
getLogType
()))
{
return
PageUtil
.
toPage
(
page
.
map
(
logErrorMapper:
:
toDto
));
}
return
page
;
...
...
@@ -97,8 +95,8 @@ public class LogServiceImpl implements LogService {
assert
log
!=
null
;
log
.
setRequestIp
(
ip
);
String
LOGINPATH
=
"login"
;
if
(
LOGINPATH
.
equals
(
signature
.
getName
())){
String
loginPath
=
"login"
;
if
(
loginPath
.
equals
(
signature
.
getName
())){
try
{
assert
argValues
!=
null
;
username
=
new
JSONObject
(
argValues
[
0
]).
get
(
"username"
).
toString
();
...
...
@@ -116,7 +114,9 @@ public class LogServiceImpl implements LogService {
@Override
public
Object
findByErrDetail
(
Long
id
)
{
byte
[]
details
=
logRepository
.
findExceptionById
(
id
).
getExceptionDetail
();
Log
log
=
logRepository
.
findById
(
id
).
orElseGet
(
Log:
:
new
);
ValidationUtil
.
isNull
(
log
.
getId
(),
"Log"
,
"id"
,
id
);
byte
[]
details
=
log
.
getExceptionDetail
();
return
Dict
.
create
().
set
(
"exception"
,
new
String
(
ObjectUtil
.
isNotNull
(
details
)
?
details
:
""
.
getBytes
()));
}
...
...
eladmin-monitor/src/main/java/me/zhengjie/res/ServerMonitorController.java
View file @
e4ca7afc
...
...
@@ -36,19 +36,17 @@ public class ServerMonitorController {
FileSystem
[]
fsArray
=
sigar
.
getFileSystemList
();
double
diskTotal
=
0
;
double
diskUsed
=
0
;
for
(
int
i
=
0
;
i
<
fsArray
.
length
;
i
++
)
{
for
(
FileSystem
fileSystem
:
fsArray
)
{
try
{
FileSystem
fs
=
fsArray
[
i
];
FileSystemUsage
usage
=
null
;
usage
=
sigar
.
getFileSystemUsage
(
fs
.
getDirName
());
switch
(
fs
.
getType
())
{
case
2
:
//本地硬盘
diskTotal
+=
usage
.
getTotal
()/
GB
*
1024
;
diskUsed
+=
usage
.
getUsed
()/
GB
*
1024
;
break
;
usage
=
sigar
.
getFileSystemUsage
(
fileSystem
.
getDirName
());
// 本地硬盘
if
(
fileSystem
.
getType
()
==
2
)
{
diskTotal
+=
usage
.
getTotal
()
/
GB
*
1024
;
diskUsed
+=
usage
.
getUsed
()
/
GB
*
1024
;
}
}
catch
(
Exception
e
)
{}
}
catch
(
Exception
ignored
)
{
}
}
resultMap
.
put
(
"diskTotal"
,
diskTotal
);
resultMap
.
put
(
"diskUsed"
,
diskUsed
);
...
...
eladmin-monitor/src/main/java/me/zhengjie/utils/SigarUtil.java
View file @
e4ca7afc
package
me.zhengjie.utils
;
import
org.hyperic.sigar.*
;
import
java.net.InetAddress
;
import
java.net.UnknownHostException
;
import
java.util.Map
;
import
java.util.Properties
;
/**
* @author
:
ZhangHouYing
* @date
:
2019-11-03 15:04
* @author ZhangHouYing
* @date 2019-11-03 15:04
*/
public
class
SigarUtil
{
...
...
@@ -51,9 +50,12 @@ public class SigarUtil {
addr
=
InetAddress
.
getLocalHost
();
String
ip
=
addr
.
getHostAddress
();
Map
<
String
,
String
>
map
=
System
.
getenv
();
String
userName
=
map
.
get
(
"USERNAME"
);
// 获取用户名
String
computerName
=
map
.
get
(
"COMPUTERNAME"
);
// 获取计算机名
String
userDomain
=
map
.
get
(
"USERDOMAIN"
);
// 获取计算机域名
// 获取用户名
String
userName
=
map
.
get
(
"USERNAME"
);
// 获取计算机名
String
computerName
=
map
.
get
(
"COMPUTERNAME"
);
// 获取计算机域名
String
userDomain
=
map
.
get
(
"USERDOMAIN"
);
System
.
out
.
println
(
"用户名: "
+
userName
);
System
.
out
.
println
(
"计算机名: "
+
computerName
);
System
.
out
.
println
(
"计算机域名: "
+
userDomain
);
...
...
@@ -111,97 +113,100 @@ public class SigarUtil {
private
static
void
cpu
()
throws
SigarException
{
Sigar
sigar
=
new
Sigar
();
CpuInfo
infos
[]
=
sigar
.
getCpuInfoList
();
CpuPerc
cpuList
[]
=
null
;
CpuInfo
[]
infos
=
sigar
.
getCpuInfoList
();
CpuPerc
[]
cpuList
;
System
.
out
.
println
(
"cpu 总量参数情况:"
+
sigar
.
getCpu
());
System
.
out
.
println
(
"cpu 总百分比情况:"
+
sigar
.
getCpuPerc
());
cpuList
=
sigar
.
getCpuPercList
();
for
(
int
i
=
0
;
i
<
infos
.
length
;
i
++)
{
// 不管是单块CPU还是多CPU都适用
// 不管是单块CPU还是多CPU都适用
for
(
int
i
=
0
;
i
<
infos
.
length
;
i
++)
{
CpuInfo
info
=
infos
[
i
];
System
.
out
.
println
(
"第"
+
(
i
+
1
)
+
"块CPU信息"
);
System
.
out
.
println
(
"CPU的总量MHz: "
+
info
.
getMhz
());
// CPU的总量MHz
System
.
out
.
println
(
"CPU生产商: "
+
info
.
getVendor
());
// 获得CPU的卖主,如:Intel
System
.
out
.
println
(
"CPU类别: "
+
info
.
getModel
());
// 获得CPU的类别,如:Celeron
System
.
out
.
println
(
"CPU缓存数量: "
+
info
.
getCacheSize
());
// 缓冲存储器数量
// CPU的总量MHz
System
.
out
.
println
(
"CPU的总量MHz: "
+
info
.
getMhz
());
// 获得CPU的卖主,如:Intel
System
.
out
.
println
(
"CPU生产商: "
+
info
.
getVendor
());
// 获得CPU的类别
System
.
out
.
println
(
"CPU类别: "
+
info
.
getModel
());
// 缓冲存储器数量
System
.
out
.
println
(
"CPU缓存数量: "
+
info
.
getCacheSize
());
printCpuPerc
(
cpuList
[
i
]);
}
}
private
static
void
printCpuPerc
(
CpuPerc
cpu
)
{
System
.
out
.
println
(
"CPU用户使用率: "
+
CpuPerc
.
format
(
cpu
.
getUser
()));
// 用户使用率
System
.
out
.
println
(
"CPU系统使用率: "
+
CpuPerc
.
format
(
cpu
.
getSys
()));
// 系统使用率
System
.
out
.
println
(
"CPU当前等待率: "
+
CpuPerc
.
format
(
cpu
.
getWait
()));
// 当前等待率
System
.
out
.
println
(
"CPU当前错误率: "
+
CpuPerc
.
format
(
cpu
.
getNice
()));
//
System
.
out
.
println
(
"CPU当前空闲率: "
+
CpuPerc
.
format
(
cpu
.
getIdle
()));
// 当前空闲率
System
.
out
.
println
(
"CPU总的使用率: "
+
CpuPerc
.
format
(
cpu
.
getCombined
()));
// 总的使用率
System
.
out
.
println
(
"CPU用户使用率: "
+
CpuPerc
.
format
(
cpu
.
getUser
()));
System
.
out
.
println
(
"CPU系统使用率: "
+
CpuPerc
.
format
(
cpu
.
getSys
()));
System
.
out
.
println
(
"CPU当前等待率: "
+
CpuPerc
.
format
(
cpu
.
getWait
()));
System
.
out
.
println
(
"CPU当前错误率: "
+
CpuPerc
.
format
(
cpu
.
getNice
()));
System
.
out
.
println
(
"CPU当前空闲率: "
+
CpuPerc
.
format
(
cpu
.
getIdle
()));
System
.
out
.
println
(
"CPU总的使用率: "
+
CpuPerc
.
format
(
cpu
.
getCombined
()));
}
private
static
void
os
()
{
OperatingSystem
OS
=
OperatingSystem
.
getInstance
();
OperatingSystem
os
=
OperatingSystem
.
getInstance
();
// 操作系统内核类型如: 386、486、586等x86
System
.
out
.
println
(
"操作系统: "
+
OS
.
getArch
());
System
.
out
.
println
(
"操作系统CpuEndian(): "
+
OS
.
getCpuEndian
());
//
System
.
out
.
println
(
"操作系统DataModel(): "
+
OS
.
getDataModel
());
//
System
.
out
.
println
(
"操作系统: "
+
os
.
getArch
());
System
.
out
.
println
(
"操作系统CpuEndian(): "
+
os
.
getCpuEndian
());
System
.
out
.
println
(
"操作系统DataModel(): "
+
os
.
getDataModel
());
// 系统描述
System
.
out
.
println
(
"操作系统的描述: "
+
OS
.
getDescription
());
System
.
out
.
println
(
"操作系统的描述: "
+
os
.
getDescription
());
// 操作系统类型
//
System.out.println("OS.getName(): " +
OS
.getName());
//
System.out.println("OS.getPatchLevel(): " +
OS
.getPatchLevel());
//
System
.
out
.
println
(
"OS.getName(): "
+
os
.
getName
());
System
.
out
.
println
(
"OS.getPatchLevel(): "
+
os
.
getPatchLevel
());
// 操作系统的卖主
System
.
out
.
println
(
"操作系统的卖主: "
+
OS
.
getVendor
());
System
.
out
.
println
(
"操作系统的卖主: "
+
os
.
getVendor
());
// 卖主名称
System
.
out
.
println
(
"操作系统的卖主名: "
+
OS
.
getVendorCodeName
());
System
.
out
.
println
(
"操作系统的卖主名: "
+
os
.
getVendorCodeName
());
// 操作系统名称
System
.
out
.
println
(
"操作系统名称: "
+
OS
.
getVendorName
());
System
.
out
.
println
(
"操作系统名称: "
+
os
.
getVendorName
());
// 操作系统卖主类型
System
.
out
.
println
(
"操作系统卖主类型: "
+
OS
.
getVendorVersion
());
System
.
out
.
println
(
"操作系统卖主类型: "
+
os
.
getVendorVersion
());
// 操作系统的版本号
System
.
out
.
println
(
"操作系统的版本号: "
+
OS
.
getVersion
());
System
.
out
.
println
(
"操作系统的版本号: "
+
os
.
getVersion
());
}
private
static
void
who
()
throws
SigarException
{
Sigar
sigar
=
new
Sigar
();
Who
who
[]
=
sigar
.
getWhoList
();
if
(
who
!=
null
&&
who
.
length
>
0
)
{
for
(
int
i
=
0
;
i
<
who
.
length
;
i
++)
{
// System.out.println("当前系统进程表中的用户名" + String.valueOf(i));
Who
_who
=
who
[
i
];
System
.
out
.
println
(
"用户控制台: "
+
_who
.
getDevice
());
System
.
out
.
println
(
"用户host: "
+
_who
.
getHost
());
// System.out.println("getTime(): " + _who.getTime());
Who
[]
whos
=
sigar
.
getWhoList
();
if
(
whos
!=
null
&&
whos
.
length
>
0
)
{
for
(
Who
who
:
whos
)
{
System
.
out
.
println
(
"用户控制台: "
+
who
.
getDevice
());
System
.
out
.
println
(
"用户host: "
+
who
.
getHost
());
// 当前系统进程表中的用户名
System
.
out
.
println
(
"当前系统进程表中的用户名: "
+
_
who
.
getUser
());
System
.
out
.
println
(
"当前系统进程表中的用户名: "
+
who
.
getUser
());
}
}
}
private
static
void
file
()
throws
Exception
{
Sigar
sigar
=
new
Sigar
();
FileSystem
fs
l
ist
[]
=
sigar
.
getFileSystemList
();
for
(
int
i
=
0
;
i
<
fs
l
ist
.
length
;
i
++)
{
FileSystem
[]
fs
L
ist
=
sigar
.
getFileSystemList
();
for
(
int
i
=
0
;
i
<
fs
L
ist
.
length
;
i
++)
{
System
.
out
.
println
(
"分区的盘符名称"
+
i
);
FileSystem
fs
=
fs
l
ist
[
i
];
FileSystem
fs
=
fs
L
ist
[
i
];
// 分区的盘符名称
System
.
out
.
println
(
"盘符名称: "
+
fs
.
getDevName
());
// 分区的盘符名称
System
.
out
.
println
(
"盘符路径: "
+
fs
.
getDirName
());
System
.
out
.
println
(
"盘符标志: "
+
fs
.
getFlags
());
//
System
.
out
.
println
(
"盘符标志: "
+
fs
.
getFlags
());
// 文件系统类型,比如 FAT32、NTFS
System
.
out
.
println
(
"盘符类型: "
+
fs
.
getSysTypeName
());
// 文件系统类型名,比如本地硬盘、光驱、网络文件系统等
System
.
out
.
println
(
"盘符类型名: "
+
fs
.
getTypeName
());
// 文件系统类型
System
.
out
.
println
(
"盘符文件系统类型: "
+
fs
.
getType
());
FileSystemUsage
usage
=
null
;
FileSystemUsage
usage
;
usage
=
sigar
.
getFileSystemUsage
(
fs
.
getDirName
());
switch
(
fs
.
getType
())
{
case
0
:
// TYPE_UNKNOWN :未知
break
;
case
1
:
// TYPE_NONE
break
;
case
2
:
// TYPE_LOCAL_DISK : 本地硬盘
// TYPE_UNKNOWN :未知
case
0
:
break
;
// TYPE_NONE
case
1
:
break
;
// TYPE_LOCAL_DISK : 本地硬盘
case
2
:
// 文件系统总大小
System
.
out
.
println
(
fs
.
getDevName
()
+
"总大小: "
+
usage
.
getTotal
()
+
"KB"
);
// 文件系统剩余大小
...
...
@@ -214,62 +219,61 @@ public class SigarUtil {
// 文件系统资源的利用率
System
.
out
.
println
(
fs
.
getDevName
()
+
"资源的利用率: "
+
usePercent
+
"%"
);
break
;
case
3
:
// TYPE_NETWORK :网络
break
;
case
4
:
// TYPE_RAM_DISK :闪存
break
;
case
5
:
// TYPE_CDROM :光驱
break
;
case
6
:
// TYPE_SWAP :页面交换
break
;
// TYPE_NETWORK :网络
case
3
:
break
;
// TYPE_RAM_DISK :闪存
case
4
:
break
;
// TYPE_CD_ROM :光驱
case
5
:
break
;
// TYPE_SWAP :页面交换
case
6
:
break
;
default
:
break
;
}
System
.
out
.
println
(
fs
.
getDevName
()
+
"读出:
"
+
usage
.
getDiskReads
());
System
.
out
.
println
(
fs
.
getDevName
()
+
"写入:
"
+
usage
.
getDiskWrites
());
System
.
out
.
println
(
fs
.
getDevName
()
+
"读出:"
+
usage
.
getDiskReads
());
System
.
out
.
println
(
fs
.
getDevName
()
+
"写入:"
+
usage
.
getDiskWrites
());
}
return
;
}
private
static
void
net
()
throws
Exception
{
Sigar
sigar
=
new
Sigar
();
String
ifNames
[]
=
sigar
.
getNetInterfaceList
();
for
(
int
i
=
0
;
i
<
ifNames
.
length
;
i
++)
{
String
name
=
ifNames
[
i
];
String
[]
ifNames
=
sigar
.
getNetInterfaceList
();
for
(
String
name
:
ifNames
)
{
NetInterfaceConfig
ifconfig
=
sigar
.
getNetInterfaceConfig
(
name
);
System
.
out
.
println
(
"网络设备名: "
+
name
);
// 网络设备名
System
.
out
.
println
(
"IP地址: "
+
ifconfig
.
getAddress
());
// IP地址
System
.
out
.
println
(
"子网掩码: "
+
ifconfig
.
getNetmask
());
// 子网掩码
System
.
out
.
println
(
"网络设备名: "
+
name
);
System
.
out
.
println
(
"IP地址: "
+
ifconfig
.
getAddress
());
System
.
out
.
println
(
"子网掩码: "
+
ifconfig
.
getNetmask
());
if
((
ifconfig
.
getFlags
()
&
1L
)
<=
0L
)
{
System
.
out
.
println
(
"!IFF_UP...skipping getNetInterfaceStat"
);
continue
;
}
NetInterfaceStat
ifstat
=
sigar
.
getNetInterfaceStat
(
name
);
System
.
out
.
println
(
name
+
"接收的总包裹数:"
+
ifstat
.
getRxPackets
());
// 接收的总包裹数
System
.
out
.
println
(
name
+
"发送的总包裹数:"
+
ifstat
.
getTxPackets
());
// 发送的总包裹数
System
.
out
.
println
(
name
+
"接收到的总字节数:"
+
ifstat
.
getRxBytes
());
// 接收到的总字节数
System
.
out
.
println
(
name
+
"发送的总字节数:"
+
ifstat
.
getTxBytes
());
// 发送的总字节数
System
.
out
.
println
(
name
+
"接收到的错误包数:"
+
ifstat
.
getRxErrors
());
// 接收到的错误包数
System
.
out
.
println
(
name
+
"发送数据包时的错误数:"
+
ifstat
.
getTxErrors
());
// 发送数据包时的错误数
System
.
out
.
println
(
name
+
"接收时丢弃的包数:"
+
ifstat
.
getRxDropped
());
// 接收时丢弃的包数
System
.
out
.
println
(
name
+
"发送时丢弃的包数:"
+
ifstat
.
getTxDropped
());
// 发送时丢弃的包数
System
.
out
.
println
(
name
+
"接收的总包裹数:"
+
ifstat
.
getRxPackets
());
System
.
out
.
println
(
name
+
"发送的总包裹数:"
+
ifstat
.
getTxPackets
());
System
.
out
.
println
(
name
+
"接收到的总字节数:"
+
ifstat
.
getRxBytes
());
System
.
out
.
println
(
name
+
"发送的总字节数:"
+
ifstat
.
getTxBytes
());
System
.
out
.
println
(
name
+
"接收到的错误包数:"
+
ifstat
.
getRxErrors
());
System
.
out
.
println
(
name
+
"发送数据包时的错误数:"
+
ifstat
.
getTxErrors
());
System
.
out
.
println
(
name
+
"接收时丢弃的包数:"
+
ifstat
.
getRxDropped
());
System
.
out
.
println
(
name
+
"发送时丢弃的包数:"
+
ifstat
.
getTxDropped
());
}
}
private
static
void
ethernet
()
throws
SigarException
{
Sigar
sigar
=
null
;
Sigar
sigar
;
sigar
=
new
Sigar
();
String
[]
if
a
ces
=
sigar
.
getNetInterfaceList
();
for
(
int
i
=
0
;
i
<
if
a
ces
.
length
;
i
++
)
{
NetInterfaceConfig
cfg
=
sigar
.
getNetInterfaceConfig
(
if
a
ce
s
[
i
]
);
String
[]
if
A
ces
=
sigar
.
getNetInterfaceList
();
for
(
String
ifAce
:
if
A
ces
)
{
NetInterfaceConfig
cfg
=
sigar
.
getNetInterfaceConfig
(
if
A
ce
);
if
(
NetFlags
.
LOOPBACK_ADDRESS
.
equals
(
cfg
.
getAddress
())
||
(
cfg
.
getFlags
()
&
NetFlags
.
IFF_LOOPBACK
)
!=
0
||
NetFlags
.
NULL_HWADDR
.
equals
(
cfg
.
getHwaddr
()))
{
continue
;
}
System
.
out
.
println
(
cfg
.
getName
()
+
"IP地址:"
+
cfg
.
getAddress
());
// IP地址
System
.
out
.
println
(
cfg
.
getName
()
+
"网关广播地址:"
+
cfg
.
getBroadcast
());
// 网关广播地址
System
.
out
.
println
(
cfg
.
getName
()
+
"网卡MAC地址:"
+
cfg
.
getHwaddr
());
// 网卡MAC地址
System
.
out
.
println
(
cfg
.
getName
()
+
"子网掩码:"
+
cfg
.
getNetmask
());
// 子网掩码
System
.
out
.
println
(
cfg
.
getName
()
+
"网卡描述信息:"
+
cfg
.
getDescription
());
// 网卡描述信息
System
.
out
.
println
(
cfg
.
getName
()
+
"网卡类型"
+
cfg
.
getType
());
//
System
.
out
.
println
(
cfg
.
getName
()
+
"IP地址:"
+
cfg
.
getAddress
());
System
.
out
.
println
(
cfg
.
getName
()
+
"网关广播地址:"
+
cfg
.
getBroadcast
());
System
.
out
.
println
(
cfg
.
getName
()
+
"网卡MAC地址:"
+
cfg
.
getHwaddr
());
System
.
out
.
println
(
cfg
.
getName
()
+
"子网掩码:"
+
cfg
.
getNetmask
());
System
.
out
.
println
(
cfg
.
getName
()
+
"网卡描述信息:"
+
cfg
.
getDescription
());
System
.
out
.
println
(
cfg
.
getName
()
+
"网卡类型"
+
cfg
.
getType
());
}
}
}
eladmin-system/src/main/java/me/zhengjie/config/DataScope.java
View file @
e4ca7afc
...
...
@@ -4,11 +4,9 @@ import me.zhengjie.modules.system.domain.Dept;
import
me.zhengjie.modules.system.service.DeptService
;
import
me.zhengjie.modules.system.service.RoleService
;
import
me.zhengjie.modules.system.service.UserService
;
import
me.zhengjie.modules.system.service.dto.DeptDTO
;
import
me.zhengjie.modules.system.service.dto.RoleSmallDTO
;
import
me.zhengjie.modules.system.service.dto.UserDTO
;
import
me.zhengjie.modules.system.service.dto.RoleSmallDto
;
import
me.zhengjie.modules.system.service.dto.UserDto
;
import
me.zhengjie.utils.SecurityUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
java.util.ArrayList
;
import
java.util.HashSet
;
...
...
@@ -39,15 +37,15 @@ public class DataScope {
public
Set
<
Long
>
getDeptIds
()
{
UserD
TO
user
=
userService
.
findByName
(
SecurityUtils
.
getUsername
());
UserD
to
user
=
userService
.
findByName
(
SecurityUtils
.
getUsername
());
// 用于存储部门id
Set
<
Long
>
deptIds
=
new
HashSet
<>();
// 查询用户角色
List
<
RoleSmallD
TO
>
roleSet
=
roleService
.
findByUsers
_
Id
(
user
.
getId
());
List
<
RoleSmallD
to
>
roleSet
=
roleService
.
findByUsersId
(
user
.
getId
());
for
(
RoleSmallD
TO
role
:
roleSet
)
{
for
(
RoleSmallD
to
role
:
roleSet
)
{
if
(
scopeType
[
0
].
equals
(
role
.
getDataScope
()))
{
return
new
HashSet
<>()
;
...
...
eladmin-system/src/main/java/me/zhengjie/config/thread/AsyncTaskExecutePool.java
View file @
e4ca7afc
...
...
@@ -17,7 +17,7 @@ import java.util.concurrent.ThreadPoolExecutor;
@Configuration
public
class
AsyncTaskExecutePool
implements
AsyncConfigurer
{
/
/
注入配置类
/
**
注入配置类
*/
private
final
AsyncTaskProperties
config
;
public
AsyncTaskExecutePool
(
AsyncTaskProperties
config
)
{
...
...
eladmin-system/src/main/java/me/zhengjie/config/thread/TheadFactoryName.java
View file @
e4ca7afc
...
...
@@ -13,7 +13,7 @@ import java.util.concurrent.atomic.AtomicInteger;
@Component
public
class
TheadFactoryName
implements
ThreadFactory
{
private
static
final
AtomicInteger
poolNumber
=
new
AtomicInteger
(
1
);
private
static
final
AtomicInteger
POOL_NUMBER
=
new
AtomicInteger
(
1
);
private
final
ThreadGroup
group
;
private
final
AtomicInteger
threadNumber
=
new
AtomicInteger
(
1
);
private
final
String
namePrefix
;
...
...
@@ -28,7 +28,7 @@ public class TheadFactoryName implements ThreadFactory {
Thread
.
currentThread
().
getThreadGroup
();
//此时namePrefix就是 name + 第几个用这个工厂创建线程池的
this
.
namePrefix
=
name
+
poolNumber
.
getAndIncrement
();
POOL_NUMBER
.
getAndIncrement
();
}
@Override
...
...
eladmin-system/src/main/java/me/zhengjie/modules/mnt/domain/ServerDeploy.java
View file @
e4ca7afc
...
...
@@ -18,9 +18,6 @@ import java.sql.Timestamp;
@Table
(
name
=
"mnt_server"
)
public
class
ServerDeploy
implements
Serializable
{
/**
* 服务器IP
*/
@Id
@GeneratedValue
(
strategy
=
GenerationType
.
IDENTITY
)
private
Long
id
;
...
...
eladmin-system/src/main/java/me/zhengjie/modules/mnt/repository/ServerDeployRepository.java
View file @
e4ca7afc
...
...
@@ -12,5 +12,10 @@ import org.springframework.data.jpa.repository.Query;
*/
public
interface
ServerDeployRepository
extends
JpaRepository
<
ServerDeploy
,
Long
>,
JpaSpecificationExecutor
<
ServerDeploy
>
{
/**
* 根据IP查询
* @param ip /
* @return /
*/
ServerDeploy
findByIp
(
String
ip
);
}
eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/AppService.java
View file @
e4ca7afc
package
me.zhengjie.modules.mnt.service
;
import
me.zhengjie.modules.mnt.domain.App
;
import
me.zhengjie.modules.mnt.service.dto.AppD
TO
;
import
me.zhengjie.modules.mnt.service.dto.AppD
to
;
import
me.zhengjie.modules.mnt.service.dto.AppQueryCriteria
;
import
org.springframework.data.domain.Pageable
;
...
...
@@ -11,15 +11,44 @@ import org.springframework.data.domain.Pageable;
*/
public
interface
AppService
{
/**
* 分页查询
* @param criteria 条件
* @param pageable 分页参数
* @return /
*/
Object
queryAll
(
AppQueryCriteria
criteria
,
Pageable
pageable
);
/**
* 查询全部数据
* @param criteria 条件
* @return /
*/
Object
queryAll
(
AppQueryCriteria
criteria
);
AppDTO
findById
(
Long
id
);
AppDTO
create
(
App
resources
);
/**
* 根据ID查询
* @param id /
* @return /
*/
AppDto
findById
(
Long
id
);
/**
* 创建
* @param resources /
* @return /
*/
AppDto
create
(
App
resources
);
/**
* 编辑
* @param resources /
*/
void
update
(
App
resources
);
/**
* 删除
* @param id /
*/
void
delete
(
Long
id
);
}
eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/DatabaseService.java
View file @
e4ca7afc
package
me.zhengjie.modules.mnt.service
;
import
me.zhengjie.modules.mnt.domain.Database
;
import
me.zhengjie.modules.mnt.service.dto.DatabaseD
TO
;
import
me.zhengjie.modules.mnt.service.dto.DatabaseD
to
;
import
me.zhengjie.modules.mnt.service.dto.DatabaseQueryCriteria
;
import
org.springframework.data.domain.Pageable
;
...
...
@@ -11,15 +11,44 @@ import org.springframework.data.domain.Pageable;
*/
public
interface
DatabaseService
{
/**
* 分页查询
* @param criteria 条件
* @param pageable 分页参数
* @return /
*/
Object
queryAll
(
DatabaseQueryCriteria
criteria
,
Pageable
pageable
);
/**
* 查询全部
* @param criteria 条件
* @return /
*/
Object
queryAll
(
DatabaseQueryCriteria
criteria
);
DatabaseDTO
findById
(
String
id
);
DatabaseDTO
create
(
Database
resources
);
/**
* 根据ID查询
* @param id /
* @return /
*/
DatabaseDto
findById
(
String
id
);
/**
* 创建
* @param resources /
* @return /
*/
DatabaseDto
create
(
Database
resources
);
/**
* 编辑
* @param resources /
*/
void
update
(
Database
resources
);
/**
* 删除
* @param id /
*/
void
delete
(
String
id
);
}
eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/DeployHistoryService.java
View file @
e4ca7afc
package
me.zhengjie.modules.mnt.service
;
import
me.zhengjie.modules.mnt.domain.DeployHistory
;
import
me.zhengjie.modules.mnt.service.dto.DeployHistoryD
TO
;
import
me.zhengjie.modules.mnt.service.dto.DeployHistoryD
to
;
import
me.zhengjie.modules.mnt.service.dto.DeployHistoryQueryCriteria
;
import
org.springframework.data.domain.Pageable
;
/**
* @author zhanghouying
*/
public
interface
DeployHistoryService
{
/**
* 分页查询
* @param criteria 条件
* @param pageable 分页参数
* @return /
*/
Object
queryAll
(
DeployHistoryQueryCriteria
criteria
,
Pageable
pageable
);
/**
* 查询全部
* @param criteria 条件
* @return /
*/
Object
queryAll
(
DeployHistoryQueryCriteria
criteria
);
DeployHistoryDTO
findById
(
String
id
);
/**
* 根据ID查询
* @param id /
* @return /
*/
DeployHistoryDto
findById
(
String
id
);
DeployHistoryDTO
create
(
DeployHistory
resources
);
/**
* 创建
* @param resources /
* @return /
*/
DeployHistoryDto
create
(
DeployHistory
resources
);
/**
* 删除
* @param id /
*/
void
delete
(
String
id
);
}
eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/DeployService.java
View file @
e4ca7afc
...
...
@@ -2,7 +2,7 @@ package me.zhengjie.modules.mnt.service;
import
me.zhengjie.modules.mnt.domain.Deploy
;
import
me.zhengjie.modules.mnt.domain.DeployHistory
;
import
me.zhengjie.modules.mnt.service.dto.DeployD
TO
;
import
me.zhengjie.modules.mnt.service.dto.DeployD
to
;
import
me.zhengjie.modules.mnt.service.dto.DeployQueryCriteria
;
import
org.springframework.data.domain.Pageable
;
...
...
@@ -12,25 +12,54 @@ import org.springframework.data.domain.Pageable;
*/
public
interface
DeployService
{
/**
* 分页查询
* @param criteria 条件
* @param pageable 分页参数
* @return /
*/
Object
queryAll
(
DeployQueryCriteria
criteria
,
Pageable
pageable
);
/**
* 查询全部数据
* @param criteria 条件
* @return /
*/
Object
queryAll
(
DeployQueryCriteria
criteria
);
DeployDTO
findById
(
Long
id
);
/**
* 根据ID查询
* @param id /
* @return /
*/
DeployDto
findById
(
Long
id
);
/**
* 创建
* @param resources /
* @return /
*/
DeployDto
create
(
Deploy
resources
);
DeployDTO
create
(
Deploy
resources
);
/**
* 编辑
* @param resources /
*/
void
update
(
Deploy
resources
);
/**
* 删除
* @param id /
*/
void
delete
(
Long
id
);
/**
* 部署文件到服务器
* @param fileSavePath 文件路径
* @param appId 应用ID
* @return /
*/
String
deploy
(
String
fileSavePath
,
Long
appId
);
*/
void
deploy
(
String
fileSavePath
,
Long
appId
);
/**
* 查询部署状态
...
...
Prev
1
2
3
4
5
6
…
8
Next
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment