mirror of
https://github.com/201206030/novel-plus.git
synced 2025-04-26 17:20:52 +00:00
fix(novel-admin): 友情链接URL格式校验
This commit is contained in:
parent
f77792aa3c
commit
d6093d8182
@ -12,6 +12,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.data.redis.core.RedisTemplate;
|
import org.springframework.data.redis.core.RedisTemplate;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.Model;
|
import org.springframework.ui.Model;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -83,7 +84,7 @@ public class FriendLinkController {
|
|||||||
@ResponseBody
|
@ResponseBody
|
||||||
@PostMapping("/save")
|
@PostMapping("/save")
|
||||||
@RequiresPermissions("novel:friendLink:add")
|
@RequiresPermissions("novel:friendLink:add")
|
||||||
public R save(FriendLinkDO friendLink) {
|
public R save(@Validated FriendLinkDO friendLink) {
|
||||||
if (friendLinkService.save(friendLink) > 0) {
|
if (friendLinkService.save(friendLink) > 0) {
|
||||||
redisTemplate.delete(CacheKey.INDEX_LINK_KEY);
|
redisTemplate.delete(CacheKey.INDEX_LINK_KEY);
|
||||||
return R.ok();
|
return R.ok();
|
||||||
@ -98,7 +99,7 @@ public class FriendLinkController {
|
|||||||
@ResponseBody
|
@ResponseBody
|
||||||
@RequestMapping("/update")
|
@RequestMapping("/update")
|
||||||
@RequiresPermissions("novel:friendLink:edit")
|
@RequiresPermissions("novel:friendLink:edit")
|
||||||
public R update(FriendLinkDO friendLink) {
|
public R update(@Validated FriendLinkDO friendLink) {
|
||||||
friendLinkService.update(friendLink);
|
friendLinkService.update(friendLink);
|
||||||
redisTemplate.delete(CacheKey.INDEX_LINK_KEY);
|
redisTemplate.delete(CacheKey.INDEX_LINK_KEY);
|
||||||
return R.ok();
|
return R.ok();
|
||||||
|
@ -1,163 +1,175 @@
|
|||||||
package com.java2nb.novel.domain;
|
package com.java2nb.novel.domain;
|
||||||
|
|
||||||
import java.io.Serializable;
|
|
||||||
|
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
|
||||||
|
|
||||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||||
import com.java2nb.common.jsonserializer.LongToStringSerializer;
|
import com.java2nb.common.jsonserializer.LongToStringSerializer;
|
||||||
|
import org.hibernate.validator.constraints.URL;
|
||||||
|
|
||||||
import org.springframework.format.annotation.DateTimeFormat;
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
|
||||||
*
|
|
||||||
* @author xiongxy
|
* @author xiongxy
|
||||||
* @email 1179705413@qq.com
|
* @email 1179705413@qq.com
|
||||||
* @date 2023-04-14 15:12:25
|
* @date 2023-04-14 15:12:25
|
||||||
*/
|
*/
|
||||||
public class FriendLinkDO implements Serializable {
|
public class FriendLinkDO implements Serializable {
|
||||||
private static final long serialVersionUID = 1L;
|
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
//主键
|
|
||||||
private Integer id;
|
|
||||||
//链接名
|
|
||||||
private String linkName;
|
|
||||||
//链接url
|
|
||||||
private String linkUrl;
|
|
||||||
//排序号
|
|
||||||
private Integer sort;
|
|
||||||
//是否开启,0:不开启,1:开启
|
|
||||||
private Integer isOpen;
|
|
||||||
//创建人id
|
|
||||||
//java中的long能表示的范围比js中number大,也就意味着部分数值在js中存不下(变成不准确的值)
|
|
||||||
//所以通过序列化成字符串来解决
|
|
||||||
@JsonSerialize(using = LongToStringSerializer.class)
|
|
||||||
private Long createUserId;
|
|
||||||
//创建时间
|
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
|
||||||
private Date createTime;
|
|
||||||
//更新者用户id
|
|
||||||
//java中的long能表示的范围比js中number大,也就意味着部分数值在js中存不下(变成不准确的值)
|
|
||||||
//所以通过序列化成字符串来解决
|
|
||||||
@JsonSerialize(using = LongToStringSerializer.class)
|
|
||||||
private Long updateUserId;
|
|
||||||
//更新时间
|
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
|
||||||
private Date updateTime;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 设置:主键
|
//主键
|
||||||
*/
|
private Integer id;
|
||||||
public void setId(Integer id) {
|
//链接名
|
||||||
this.id = id;
|
private String linkName;
|
||||||
}
|
//链接url
|
||||||
/**
|
@URL
|
||||||
* 获取:主键
|
private String linkUrl;
|
||||||
*/
|
//排序号
|
||||||
public Integer getId() {
|
private Integer sort;
|
||||||
return id;
|
//是否开启,0:不开启,1:开启
|
||||||
}
|
private Integer isOpen;
|
||||||
/**
|
//创建人id
|
||||||
* 设置:链接名
|
//java中的long能表示的范围比js中number大,也就意味着部分数值在js中存不下(变成不准确的值)
|
||||||
*/
|
//所以通过序列化成字符串来解决
|
||||||
public void setLinkName(String linkName) {
|
@JsonSerialize(using = LongToStringSerializer.class)
|
||||||
this.linkName = linkName;
|
private Long createUserId;
|
||||||
}
|
//创建时间
|
||||||
/**
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
* 获取:链接名
|
private Date createTime;
|
||||||
*/
|
//更新者用户id
|
||||||
public String getLinkName() {
|
//java中的long能表示的范围比js中number大,也就意味着部分数值在js中存不下(变成不准确的值)
|
||||||
return linkName;
|
//所以通过序列化成字符串来解决
|
||||||
}
|
@JsonSerialize(using = LongToStringSerializer.class)
|
||||||
/**
|
private Long updateUserId;
|
||||||
* 设置:链接url
|
//更新时间
|
||||||
*/
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
public void setLinkUrl(String linkUrl) {
|
private Date updateTime;
|
||||||
this.linkUrl = linkUrl;
|
|
||||||
}
|
/**
|
||||||
/**
|
* 设置:主键
|
||||||
* 获取:链接url
|
*/
|
||||||
*/
|
public void setId(Integer id) {
|
||||||
public String getLinkUrl() {
|
this.id = id;
|
||||||
return linkUrl;
|
}
|
||||||
}
|
|
||||||
/**
|
/**
|
||||||
* 设置:排序号
|
* 获取:主键
|
||||||
*/
|
*/
|
||||||
public void setSort(Integer sort) {
|
public Integer getId() {
|
||||||
this.sort = sort;
|
return id;
|
||||||
}
|
}
|
||||||
/**
|
|
||||||
* 获取:排序号
|
/**
|
||||||
*/
|
* 设置:链接名
|
||||||
public Integer getSort() {
|
*/
|
||||||
return sort;
|
public void setLinkName(String linkName) {
|
||||||
}
|
this.linkName = linkName;
|
||||||
/**
|
}
|
||||||
* 设置:是否开启,0:不开启,1:开启
|
|
||||||
*/
|
/**
|
||||||
public void setIsOpen(Integer isOpen) {
|
* 获取:链接名
|
||||||
this.isOpen = isOpen;
|
*/
|
||||||
}
|
public String getLinkName() {
|
||||||
/**
|
return linkName;
|
||||||
* 获取:是否开启,0:不开启,1:开启
|
}
|
||||||
*/
|
|
||||||
public Integer getIsOpen() {
|
/**
|
||||||
return isOpen;
|
* 设置:链接url
|
||||||
}
|
*/
|
||||||
/**
|
public void setLinkUrl(String linkUrl) {
|
||||||
* 设置:创建人id
|
this.linkUrl = linkUrl;
|
||||||
*/
|
}
|
||||||
public void setCreateUserId(Long createUserId) {
|
|
||||||
this.createUserId = createUserId;
|
/**
|
||||||
}
|
* 获取:链接url
|
||||||
/**
|
*/
|
||||||
* 获取:创建人id
|
public String getLinkUrl() {
|
||||||
*/
|
return linkUrl;
|
||||||
public Long getCreateUserId() {
|
}
|
||||||
return createUserId;
|
|
||||||
}
|
/**
|
||||||
/**
|
* 设置:排序号
|
||||||
* 设置:创建时间
|
*/
|
||||||
*/
|
public void setSort(Integer sort) {
|
||||||
public void setCreateTime(Date createTime) {
|
this.sort = sort;
|
||||||
this.createTime = createTime;
|
}
|
||||||
}
|
|
||||||
/**
|
/**
|
||||||
* 获取:创建时间
|
* 获取:排序号
|
||||||
*/
|
*/
|
||||||
public Date getCreateTime() {
|
public Integer getSort() {
|
||||||
return createTime;
|
return sort;
|
||||||
}
|
}
|
||||||
/**
|
|
||||||
* 设置:更新者用户id
|
/**
|
||||||
*/
|
* 设置:是否开启,0:不开启,1:开启
|
||||||
public void setUpdateUserId(Long updateUserId) {
|
*/
|
||||||
this.updateUserId = updateUserId;
|
public void setIsOpen(Integer isOpen) {
|
||||||
}
|
this.isOpen = isOpen;
|
||||||
/**
|
}
|
||||||
* 获取:更新者用户id
|
|
||||||
*/
|
/**
|
||||||
public Long getUpdateUserId() {
|
* 获取:是否开启,0:不开启,1:开启
|
||||||
return updateUserId;
|
*/
|
||||||
}
|
public Integer getIsOpen() {
|
||||||
/**
|
return isOpen;
|
||||||
* 设置:更新时间
|
}
|
||||||
*/
|
|
||||||
public void setUpdateTime(Date updateTime) {
|
/**
|
||||||
this.updateTime = updateTime;
|
* 设置:创建人id
|
||||||
}
|
*/
|
||||||
/**
|
public void setCreateUserId(Long createUserId) {
|
||||||
* 获取:更新时间
|
this.createUserId = createUserId;
|
||||||
*/
|
}
|
||||||
public Date getUpdateTime() {
|
|
||||||
return updateTime;
|
/**
|
||||||
}
|
* 获取:创建人id
|
||||||
|
*/
|
||||||
|
public Long getCreateUserId() {
|
||||||
|
return createUserId;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设置:创建时间
|
||||||
|
*/
|
||||||
|
public void setCreateTime(Date createTime) {
|
||||||
|
this.createTime = createTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取:创建时间
|
||||||
|
*/
|
||||||
|
public Date getCreateTime() {
|
||||||
|
return createTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设置:更新者用户id
|
||||||
|
*/
|
||||||
|
public void setUpdateUserId(Long updateUserId) {
|
||||||
|
this.updateUserId = updateUserId;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取:更新者用户id
|
||||||
|
*/
|
||||||
|
public Long getUpdateUserId() {
|
||||||
|
return updateUserId;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设置:更新时间
|
||||||
|
*/
|
||||||
|
public void setUpdateTime(Date updateTime) {
|
||||||
|
this.updateTime = updateTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取:更新时间
|
||||||
|
*/
|
||||||
|
public Date getUpdateTime() {
|
||||||
|
return updateTime;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -23,7 +23,7 @@
|
|||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="linkUrl" name="linkUrl"
|
<input id="linkUrl" name="linkUrl"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text" required>
|
type="url" required>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
<input id="linkUrl" name="linkUrl"
|
<input id="linkUrl" name="linkUrl"
|
||||||
th:value="${friendLink.linkUrl}"
|
th:value="${friendLink.linkUrl}"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text" required>
|
type="url" required>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
|
Loading…
x
Reference in New Issue
Block a user