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
b0db5ca3
Commit
b0db5ca3
authored
Jan 16, 2020
by
d15801543974
Committed by
elunez
Jan 16, 2020
Browse files
⚡
优化BaseEntity,开启审计功能。 (#252)
保存时自动设置创建人 修改时自动设置修改人
parent
da006624
Changes
3
Show whitespace changes
Inline
Side-by-side
eladmin-common/src/main/java/me/zhengjie/base/BaseEntity.java
View file @
b0db5ca3
package
me.zhengjie.base
;
import
lombok.*
;
import
lombok.Getter
;
import
lombok.Setter
;
import
org.apache.commons.lang3.builder.ToStringBuilder
;
import
org.hibernate.annotations.CreationTimestamp
;
import
org.hibernate.annotations.UpdateTimestamp
;
import
org.springframework.data.annotation.CreatedBy
;
import
org.springframework.data.annotation.LastModifiedBy
;
import
org.springframework.data.jpa.domain.support.AuditingEntityListener
;
import
javax.persistence.Column
;
import
javax.persistence.EntityListeners
;
import
javax.persistence.MappedSuperclass
;
import
java.io.Serializable
;
import
java.sql.Timestamp
;
import
java.lang.reflect.Field
;
import
java.sql.Timestamp
;
/**
* @author Zheng Jie
...
...
@@ -17,18 +23,39 @@ import java.lang.reflect.Field;
@Getter
@Setter
@MappedSuperclass
@EntityListeners
(
AuditingEntityListener
.
class
)
public
class
BaseEntity
implements
Serializable
{
/** 删除标识 **/
@Column
(
name
=
"is_delete"
,
columnDefinition
=
"bit default 0"
)
private
Boolean
isDelete
=
false
;
@Column
(
name
=
"create_time"
)
/**
* 创建人
*/
@CreatedBy
@Column
(
name
=
"create_by"
,
updatable
=
false
)
private
String
createdBy
;
/**
* 创建时间
*/
@CreationTimestamp
@Column
(
name
=
"create_time"
,
updatable
=
false
)
private
Timestamp
createTime
;
@Column
(
name
=
"update_time"
)
/**
* 更新人
*/
@LastModifiedBy
@Column
(
name
=
"update_by"
)
private
String
updatedBy
;
/**
* 更新时间
*/
@UpdateTimestamp
@Column
(
name
=
"update_time"
)
private
Timestamp
updateTime
;
public
@interface
Update
{}
...
...
eladmin-system/src/main/java/me/zhengjie/AppRun.java
View file @
b0db5ca3
...
...
@@ -7,6 +7,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
import
org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory
;
import
org.springframework.boot.web.servlet.server.ServletWebServerFactory
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.data.jpa.repository.config.EnableJpaAuditing
;
import
org.springframework.scheduling.annotation.EnableAsync
;
import
org.springframework.transaction.annotation.EnableTransactionManagement
;
import
org.springframework.web.bind.annotation.GetMapping
;
...
...
@@ -18,6 +19,8 @@ import org.springframework.web.bind.annotation.RestController;
*/
@EnableAsync
@RestController
/** 开启审计功能 */
@EnableJpaAuditing
(
auditorAwareRef
=
"auditorAware"
)
@SpringBootApplication
@EnableTransactionManagement
public
class
AppRun
{
...
...
eladmin-system/src/main/java/me/zhengjie/config/AuditorConfig.java
0 → 100644
View file @
b0db5ca3
package
me.zhengjie.config
;
import
me.zhengjie.utils.SecurityUtils
;
import
org.springframework.data.domain.AuditorAware
;
import
org.springframework.stereotype.Component
;
import
java.util.Optional
;
/**
* @描述 : 设置审计
* @作者 : Dong ZhaoYang
* @日期 : 2019/10/28
* @时间 : 10:29
*/
@Component
(
"auditorAware"
)
public
class
AuditorConfig
implements
AuditorAware
<
String
>
{
/**
* 返回操作员标志信息
*
* @return
*/
@Override
public
Optional
<
String
>
getCurrentAuditor
()
{
// 这里应根据实际业务情况获取具体信息
return
Optional
.
of
(
SecurityUtils
.
getUsername
());
}
}
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