新增B站直播相关配置
新增MySQL及Redis配置 新增VUE前端
This commit is contained in:
59
src/main/java/com/yutou/tools/BiliBili/Live.java
Normal file
59
src/main/java/com/yutou/tools/BiliBili/Live.java
Normal file
@@ -0,0 +1,59 @@
|
||||
package com.yutou.tools.BiliBili;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.yutou.tools.mybatis.dao.BilibiliLiveDao;
|
||||
import com.yutou.tools.mybatis.model.BilibiliLive;
|
||||
import com.yutou.tools.mybatis.model.BilibiliLiveExample;
|
||||
import com.yutou.tools.utils.RedisTools;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Controller
|
||||
@RequestMapping("bili/live")
|
||||
public class Live {
|
||||
@Resource
|
||||
BilibiliLiveDao bilibiliLiveDao;
|
||||
|
||||
@RequestMapping(value = "add/url.do")
|
||||
@ResponseBody
|
||||
public String addLiveUrl(String url){
|
||||
String cid;
|
||||
if(url.startsWith("https://")){
|
||||
cid=url.replace("https://live.bilibili.com/","").split("\\?")[0];
|
||||
}else{
|
||||
cid=url;
|
||||
url="https://live.bilibili.com/"+cid;
|
||||
}
|
||||
BilibiliLive live=new BilibiliLive();
|
||||
live.setUrl(url);
|
||||
live.setCreatetime(new Date());
|
||||
live.setStatus(1);
|
||||
try{
|
||||
live.setCid(Integer.parseInt(cid));
|
||||
}catch (Exception e){
|
||||
live.setCid(-1);
|
||||
}
|
||||
bilibiliLiveDao.insert(live);
|
||||
JSONObject json=new JSONObject();
|
||||
json.put("code",0);
|
||||
json.put("msg","ok");
|
||||
return json.toJSONString();
|
||||
}
|
||||
|
||||
@ResponseBody
|
||||
@RequestMapping("get/url.do")
|
||||
public String getLiveUrl(){
|
||||
List<BilibiliLive> list=bilibiliLiveDao.selectByExample(new BilibiliLiveExample());
|
||||
JSONObject json=new JSONObject();
|
||||
json.put("code",0);
|
||||
json.put("msg","ok");
|
||||
json.put("data",JSONArray.toJSON(list));
|
||||
return json.toJSONString();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.yutou.tools.mybatis.dao;
|
||||
|
||||
import com.yutou.tools.mybatis.model.BilibiliLive;
|
||||
import com.yutou.tools.mybatis.model.BilibiliLiveExample;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
@Mapper
|
||||
public interface BilibiliLiveDao {
|
||||
long countByExample(BilibiliLiveExample example);
|
||||
|
||||
int deleteByExample(BilibiliLiveExample example);
|
||||
|
||||
int deleteByPrimaryKey(Integer id);
|
||||
|
||||
int insert(BilibiliLive record);
|
||||
|
||||
int insertSelective(BilibiliLive record);
|
||||
|
||||
List<BilibiliLive> selectByExample(BilibiliLiveExample example);
|
||||
|
||||
BilibiliLive selectByPrimaryKey(Integer id);
|
||||
|
||||
int updateByExampleSelective(@Param("record") BilibiliLive record, @Param("example") BilibiliLiveExample example);
|
||||
|
||||
int updateByExample(@Param("record") BilibiliLive record, @Param("example") BilibiliLiveExample example);
|
||||
|
||||
int updateByPrimaryKeySelective(BilibiliLive record);
|
||||
|
||||
int updateByPrimaryKey(BilibiliLive record);
|
||||
}
|
||||
34
src/main/java/com/yutou/tools/mybatis/dao/UKeyDao.java
Normal file
34
src/main/java/com/yutou/tools/mybatis/dao/UKeyDao.java
Normal file
@@ -0,0 +1,34 @@
|
||||
package com.yutou.tools.mybatis.dao;
|
||||
|
||||
import com.yutou.tools.mybatis.model.UKey;
|
||||
import com.yutou.tools.mybatis.model.UKeyExample;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
@Mapper
|
||||
public interface UKeyDao {
|
||||
long countByExample(UKeyExample example);
|
||||
|
||||
int deleteByExample(UKeyExample example);
|
||||
|
||||
int deleteByPrimaryKey(Integer id);
|
||||
|
||||
int insert(UKey record);
|
||||
|
||||
int insertSelective(UKey record);
|
||||
|
||||
List<UKey> selectByExample(UKeyExample example);
|
||||
|
||||
UKey selectByPrimaryKey(Integer id);
|
||||
|
||||
UKey selectByKey(String key);
|
||||
|
||||
int updateByExampleSelective(@Param("record") UKey record, @Param("example") UKeyExample example);
|
||||
|
||||
int updateByExample(@Param("record") UKey record, @Param("example") UKeyExample example);
|
||||
|
||||
int updateByPrimaryKeySelective(UKey record);
|
||||
|
||||
int updateByPrimaryKey(UKey record);
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.yutou.tools.mybatis.model;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* bilibili_live
|
||||
* @author
|
||||
*/
|
||||
@Data
|
||||
public class BilibiliLive implements Serializable {
|
||||
private Integer id;
|
||||
|
||||
private String url;
|
||||
|
||||
private Integer cid;
|
||||
|
||||
private Integer status;
|
||||
|
||||
private Date createtime;
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
}
|
||||
@@ -0,0 +1,512 @@
|
||||
package com.yutou.tools.mybatis.model;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
public class BilibiliLiveExample {
|
||||
protected String orderByClause;
|
||||
|
||||
protected boolean distinct;
|
||||
|
||||
protected List<Criteria> oredCriteria;
|
||||
|
||||
public BilibiliLiveExample() {
|
||||
oredCriteria = new ArrayList<>();
|
||||
}
|
||||
|
||||
public void setOrderByClause(String orderByClause) {
|
||||
this.orderByClause = orderByClause;
|
||||
}
|
||||
|
||||
public String getOrderByClause() {
|
||||
return orderByClause;
|
||||
}
|
||||
|
||||
public void setDistinct(boolean distinct) {
|
||||
this.distinct = distinct;
|
||||
}
|
||||
|
||||
public boolean isDistinct() {
|
||||
return distinct;
|
||||
}
|
||||
|
||||
public List<Criteria> getOredCriteria() {
|
||||
return oredCriteria;
|
||||
}
|
||||
|
||||
public void or(Criteria criteria) {
|
||||
oredCriteria.add(criteria);
|
||||
}
|
||||
|
||||
public Criteria or() {
|
||||
Criteria criteria = createCriteriaInternal();
|
||||
oredCriteria.add(criteria);
|
||||
return criteria;
|
||||
}
|
||||
|
||||
public Criteria createCriteria() {
|
||||
Criteria criteria = createCriteriaInternal();
|
||||
if (oredCriteria.size() == 0) {
|
||||
oredCriteria.add(criteria);
|
||||
}
|
||||
return criteria;
|
||||
}
|
||||
|
||||
protected Criteria createCriteriaInternal() {
|
||||
Criteria criteria = new Criteria();
|
||||
return criteria;
|
||||
}
|
||||
|
||||
public void clear() {
|
||||
oredCriteria.clear();
|
||||
orderByClause = null;
|
||||
distinct = false;
|
||||
}
|
||||
|
||||
protected abstract static class GeneratedCriteria {
|
||||
protected List<Criterion> criteria;
|
||||
|
||||
protected GeneratedCriteria() {
|
||||
super();
|
||||
criteria = new ArrayList<>();
|
||||
}
|
||||
|
||||
public boolean isValid() {
|
||||
return criteria.size() > 0;
|
||||
}
|
||||
|
||||
public List<Criterion> getAllCriteria() {
|
||||
return criteria;
|
||||
}
|
||||
|
||||
public List<Criterion> getCriteria() {
|
||||
return criteria;
|
||||
}
|
||||
|
||||
protected void addCriterion(String condition) {
|
||||
if (condition == null) {
|
||||
throw new RuntimeException("Value for condition cannot be null");
|
||||
}
|
||||
criteria.add(new Criterion(condition));
|
||||
}
|
||||
|
||||
protected void addCriterion(String condition, Object value, String property) {
|
||||
if (value == null) {
|
||||
throw new RuntimeException("Value for " + property + " cannot be null");
|
||||
}
|
||||
criteria.add(new Criterion(condition, value));
|
||||
}
|
||||
|
||||
protected void addCriterion(String condition, Object value1, Object value2, String property) {
|
||||
if (value1 == null || value2 == null) {
|
||||
throw new RuntimeException("Between values for " + property + " cannot be null");
|
||||
}
|
||||
criteria.add(new Criterion(condition, value1, value2));
|
||||
}
|
||||
|
||||
public Criteria andIdIsNull() {
|
||||
addCriterion("id is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdIsNotNull() {
|
||||
addCriterion("id is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdEqualTo(Integer value) {
|
||||
addCriterion("id =", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdNotEqualTo(Integer value) {
|
||||
addCriterion("id <>", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdGreaterThan(Integer value) {
|
||||
addCriterion("id >", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdGreaterThanOrEqualTo(Integer value) {
|
||||
addCriterion("id >=", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdLessThan(Integer value) {
|
||||
addCriterion("id <", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdLessThanOrEqualTo(Integer value) {
|
||||
addCriterion("id <=", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdIn(List<Integer> values) {
|
||||
addCriterion("id in", values, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdNotIn(List<Integer> values) {
|
||||
addCriterion("id not in", values, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdBetween(Integer value1, Integer value2) {
|
||||
addCriterion("id between", value1, value2, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdNotBetween(Integer value1, Integer value2) {
|
||||
addCriterion("id not between", value1, value2, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUrlIsNull() {
|
||||
addCriterion("url is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUrlIsNotNull() {
|
||||
addCriterion("url is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUrlEqualTo(String value) {
|
||||
addCriterion("url =", value, "url");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUrlNotEqualTo(String value) {
|
||||
addCriterion("url <>", value, "url");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUrlGreaterThan(String value) {
|
||||
addCriterion("url >", value, "url");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUrlGreaterThanOrEqualTo(String value) {
|
||||
addCriterion("url >=", value, "url");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUrlLessThan(String value) {
|
||||
addCriterion("url <", value, "url");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUrlLessThanOrEqualTo(String value) {
|
||||
addCriterion("url <=", value, "url");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUrlLike(String value) {
|
||||
addCriterion("url like", value, "url");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUrlNotLike(String value) {
|
||||
addCriterion("url not like", value, "url");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUrlIn(List<String> values) {
|
||||
addCriterion("url in", values, "url");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUrlNotIn(List<String> values) {
|
||||
addCriterion("url not in", values, "url");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUrlBetween(String value1, String value2) {
|
||||
addCriterion("url between", value1, value2, "url");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andUrlNotBetween(String value1, String value2) {
|
||||
addCriterion("url not between", value1, value2, "url");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCidIsNull() {
|
||||
addCriterion("cid is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCidIsNotNull() {
|
||||
addCriterion("cid is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCidEqualTo(Integer value) {
|
||||
addCriterion("cid =", value, "cid");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCidNotEqualTo(Integer value) {
|
||||
addCriterion("cid <>", value, "cid");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCidGreaterThan(Integer value) {
|
||||
addCriterion("cid >", value, "cid");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCidGreaterThanOrEqualTo(Integer value) {
|
||||
addCriterion("cid >=", value, "cid");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCidLessThan(Integer value) {
|
||||
addCriterion("cid <", value, "cid");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCidLessThanOrEqualTo(Integer value) {
|
||||
addCriterion("cid <=", value, "cid");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCidIn(List<Integer> values) {
|
||||
addCriterion("cid in", values, "cid");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCidNotIn(List<Integer> values) {
|
||||
addCriterion("cid not in", values, "cid");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCidBetween(Integer value1, Integer value2) {
|
||||
addCriterion("cid between", value1, value2, "cid");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCidNotBetween(Integer value1, Integer value2) {
|
||||
addCriterion("cid not between", value1, value2, "cid");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andStatusIsNull() {
|
||||
addCriterion("`status` is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andStatusIsNotNull() {
|
||||
addCriterion("`status` is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andStatusEqualTo(Integer value) {
|
||||
addCriterion("`status` =", value, "status");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andStatusNotEqualTo(Integer value) {
|
||||
addCriterion("`status` <>", value, "status");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andStatusGreaterThan(Integer value) {
|
||||
addCriterion("`status` >", value, "status");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
|
||||
addCriterion("`status` >=", value, "status");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andStatusLessThan(Integer value) {
|
||||
addCriterion("`status` <", value, "status");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andStatusLessThanOrEqualTo(Integer value) {
|
||||
addCriterion("`status` <=", value, "status");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andStatusIn(List<Integer> values) {
|
||||
addCriterion("`status` in", values, "status");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andStatusNotIn(List<Integer> values) {
|
||||
addCriterion("`status` not in", values, "status");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andStatusBetween(Integer value1, Integer value2) {
|
||||
addCriterion("`status` between", value1, value2, "status");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andStatusNotBetween(Integer value1, Integer value2) {
|
||||
addCriterion("`status` not between", value1, value2, "status");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCreatetimeIsNull() {
|
||||
addCriterion("createTime is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCreatetimeIsNotNull() {
|
||||
addCriterion("createTime is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCreatetimeEqualTo(Date value) {
|
||||
addCriterion("createTime =", value, "createtime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCreatetimeNotEqualTo(Date value) {
|
||||
addCriterion("createTime <>", value, "createtime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCreatetimeGreaterThan(Date value) {
|
||||
addCriterion("createTime >", value, "createtime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCreatetimeGreaterThanOrEqualTo(Date value) {
|
||||
addCriterion("createTime >=", value, "createtime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCreatetimeLessThan(Date value) {
|
||||
addCriterion("createTime <", value, "createtime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCreatetimeLessThanOrEqualTo(Date value) {
|
||||
addCriterion("createTime <=", value, "createtime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCreatetimeIn(List<Date> values) {
|
||||
addCriterion("createTime in", values, "createtime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCreatetimeNotIn(List<Date> values) {
|
||||
addCriterion("createTime not in", values, "createtime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCreatetimeBetween(Date value1, Date value2) {
|
||||
addCriterion("createTime between", value1, value2, "createtime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andCreatetimeNotBetween(Date value1, Date value2) {
|
||||
addCriterion("createTime not between", value1, value2, "createtime");
|
||||
return (Criteria) this;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*/
|
||||
public static class Criteria extends GeneratedCriteria {
|
||||
protected Criteria() {
|
||||
super();
|
||||
}
|
||||
}
|
||||
|
||||
public static class Criterion {
|
||||
private String condition;
|
||||
|
||||
private Object value;
|
||||
|
||||
private Object secondValue;
|
||||
|
||||
private boolean noValue;
|
||||
|
||||
private boolean singleValue;
|
||||
|
||||
private boolean betweenValue;
|
||||
|
||||
private boolean listValue;
|
||||
|
||||
private String typeHandler;
|
||||
|
||||
public String getCondition() {
|
||||
return condition;
|
||||
}
|
||||
|
||||
public Object getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public Object getSecondValue() {
|
||||
return secondValue;
|
||||
}
|
||||
|
||||
public boolean isNoValue() {
|
||||
return noValue;
|
||||
}
|
||||
|
||||
public boolean isSingleValue() {
|
||||
return singleValue;
|
||||
}
|
||||
|
||||
public boolean isBetweenValue() {
|
||||
return betweenValue;
|
||||
}
|
||||
|
||||
public boolean isListValue() {
|
||||
return listValue;
|
||||
}
|
||||
|
||||
public String getTypeHandler() {
|
||||
return typeHandler;
|
||||
}
|
||||
|
||||
protected Criterion(String condition) {
|
||||
super();
|
||||
this.condition = condition;
|
||||
this.typeHandler = null;
|
||||
this.noValue = true;
|
||||
}
|
||||
|
||||
protected Criterion(String condition, Object value, String typeHandler) {
|
||||
super();
|
||||
this.condition = condition;
|
||||
this.value = value;
|
||||
this.typeHandler = typeHandler;
|
||||
if (value instanceof List<?>) {
|
||||
this.listValue = true;
|
||||
} else {
|
||||
this.singleValue = true;
|
||||
}
|
||||
}
|
||||
|
||||
protected Criterion(String condition, Object value) {
|
||||
this(condition, value, null);
|
||||
}
|
||||
|
||||
protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
|
||||
super();
|
||||
this.condition = condition;
|
||||
this.value = value;
|
||||
this.secondValue = secondValue;
|
||||
this.typeHandler = typeHandler;
|
||||
this.betweenValue = true;
|
||||
}
|
||||
|
||||
protected Criterion(String condition, Object value, Object secondValue) {
|
||||
this(condition, value, secondValue, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
17
src/main/java/com/yutou/tools/mybatis/model/UKey.java
Normal file
17
src/main/java/com/yutou/tools/mybatis/model/UKey.java
Normal file
@@ -0,0 +1,17 @@
|
||||
package com.yutou.tools.mybatis.model;
|
||||
|
||||
import java.io.Serializable;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* u_key
|
||||
* @author
|
||||
*/
|
||||
@Data
|
||||
public class UKey implements Serializable {
|
||||
private Integer id;
|
||||
|
||||
private String key;
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
}
|
||||
331
src/main/java/com/yutou/tools/mybatis/model/UKeyExample.java
Normal file
331
src/main/java/com/yutou/tools/mybatis/model/UKeyExample.java
Normal file
@@ -0,0 +1,331 @@
|
||||
package com.yutou.tools.mybatis.model;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class UKeyExample {
|
||||
protected String orderByClause;
|
||||
|
||||
protected boolean distinct;
|
||||
|
||||
protected List<Criteria> oredCriteria;
|
||||
|
||||
public UKeyExample() {
|
||||
oredCriteria = new ArrayList<>();
|
||||
}
|
||||
|
||||
public void setOrderByClause(String orderByClause) {
|
||||
this.orderByClause = orderByClause;
|
||||
}
|
||||
|
||||
public String getOrderByClause() {
|
||||
return orderByClause;
|
||||
}
|
||||
|
||||
public void setDistinct(boolean distinct) {
|
||||
this.distinct = distinct;
|
||||
}
|
||||
|
||||
public boolean isDistinct() {
|
||||
return distinct;
|
||||
}
|
||||
|
||||
public List<Criteria> getOredCriteria() {
|
||||
return oredCriteria;
|
||||
}
|
||||
|
||||
public void or(Criteria criteria) {
|
||||
oredCriteria.add(criteria);
|
||||
}
|
||||
|
||||
public Criteria or() {
|
||||
Criteria criteria = createCriteriaInternal();
|
||||
oredCriteria.add(criteria);
|
||||
return criteria;
|
||||
}
|
||||
|
||||
public Criteria createCriteria() {
|
||||
Criteria criteria = createCriteriaInternal();
|
||||
if (oredCriteria.size() == 0) {
|
||||
oredCriteria.add(criteria);
|
||||
}
|
||||
return criteria;
|
||||
}
|
||||
|
||||
protected Criteria createCriteriaInternal() {
|
||||
Criteria criteria = new Criteria();
|
||||
return criteria;
|
||||
}
|
||||
|
||||
public void clear() {
|
||||
oredCriteria.clear();
|
||||
orderByClause = null;
|
||||
distinct = false;
|
||||
}
|
||||
|
||||
protected abstract static class GeneratedCriteria {
|
||||
protected List<Criterion> criteria;
|
||||
|
||||
protected GeneratedCriteria() {
|
||||
super();
|
||||
criteria = new ArrayList<>();
|
||||
}
|
||||
|
||||
public boolean isValid() {
|
||||
return criteria.size() > 0;
|
||||
}
|
||||
|
||||
public List<Criterion> getAllCriteria() {
|
||||
return criteria;
|
||||
}
|
||||
|
||||
public List<Criterion> getCriteria() {
|
||||
return criteria;
|
||||
}
|
||||
|
||||
protected void addCriterion(String condition) {
|
||||
if (condition == null) {
|
||||
throw new RuntimeException("Value for condition cannot be null");
|
||||
}
|
||||
criteria.add(new Criterion(condition));
|
||||
}
|
||||
|
||||
protected void addCriterion(String condition, Object value, String property) {
|
||||
if (value == null) {
|
||||
throw new RuntimeException("Value for " + property + " cannot be null");
|
||||
}
|
||||
criteria.add(new Criterion(condition, value));
|
||||
}
|
||||
|
||||
protected void addCriterion(String condition, Object value1, Object value2, String property) {
|
||||
if (value1 == null || value2 == null) {
|
||||
throw new RuntimeException("Between values for " + property + " cannot be null");
|
||||
}
|
||||
criteria.add(new Criterion(condition, value1, value2));
|
||||
}
|
||||
|
||||
public Criteria andIdIsNull() {
|
||||
addCriterion("id is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdIsNotNull() {
|
||||
addCriterion("id is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdEqualTo(Integer value) {
|
||||
addCriterion("id =", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdNotEqualTo(Integer value) {
|
||||
addCriterion("id <>", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdGreaterThan(Integer value) {
|
||||
addCriterion("id >", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdGreaterThanOrEqualTo(Integer value) {
|
||||
addCriterion("id >=", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdLessThan(Integer value) {
|
||||
addCriterion("id <", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdLessThanOrEqualTo(Integer value) {
|
||||
addCriterion("id <=", value, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdIn(List<Integer> values) {
|
||||
addCriterion("id in", values, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdNotIn(List<Integer> values) {
|
||||
addCriterion("id not in", values, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdBetween(Integer value1, Integer value2) {
|
||||
addCriterion("id between", value1, value2, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andIdNotBetween(Integer value1, Integer value2) {
|
||||
addCriterion("id not between", value1, value2, "id");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andKeyIsNull() {
|
||||
addCriterion("`key` is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andKeyIsNotNull() {
|
||||
addCriterion("`key` is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andKeyEqualTo(String value) {
|
||||
addCriterion("`key` =", value, "key");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andKeyNotEqualTo(String value) {
|
||||
addCriterion("`key` <>", value, "key");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andKeyGreaterThan(String value) {
|
||||
addCriterion("`key` >", value, "key");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andKeyGreaterThanOrEqualTo(String value) {
|
||||
addCriterion("`key` >=", value, "key");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andKeyLessThan(String value) {
|
||||
addCriterion("`key` <", value, "key");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andKeyLessThanOrEqualTo(String value) {
|
||||
addCriterion("`key` <=", value, "key");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andKeyLike(String value) {
|
||||
addCriterion("`key` like", value, "key");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andKeyNotLike(String value) {
|
||||
addCriterion("`key` not like", value, "key");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andKeyIn(List<String> values) {
|
||||
addCriterion("`key` in", values, "key");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andKeyNotIn(List<String> values) {
|
||||
addCriterion("`key` not in", values, "key");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andKeyBetween(String value1, String value2) {
|
||||
addCriterion("`key` between", value1, value2, "key");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andKeyNotBetween(String value1, String value2) {
|
||||
addCriterion("`key` not between", value1, value2, "key");
|
||||
return (Criteria) this;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*/
|
||||
public static class Criteria extends GeneratedCriteria {
|
||||
protected Criteria() {
|
||||
super();
|
||||
}
|
||||
}
|
||||
|
||||
public static class Criterion {
|
||||
private String condition;
|
||||
|
||||
private Object value;
|
||||
|
||||
private Object secondValue;
|
||||
|
||||
private boolean noValue;
|
||||
|
||||
private boolean singleValue;
|
||||
|
||||
private boolean betweenValue;
|
||||
|
||||
private boolean listValue;
|
||||
|
||||
private String typeHandler;
|
||||
|
||||
public String getCondition() {
|
||||
return condition;
|
||||
}
|
||||
|
||||
public Object getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public Object getSecondValue() {
|
||||
return secondValue;
|
||||
}
|
||||
|
||||
public boolean isNoValue() {
|
||||
return noValue;
|
||||
}
|
||||
|
||||
public boolean isSingleValue() {
|
||||
return singleValue;
|
||||
}
|
||||
|
||||
public boolean isBetweenValue() {
|
||||
return betweenValue;
|
||||
}
|
||||
|
||||
public boolean isListValue() {
|
||||
return listValue;
|
||||
}
|
||||
|
||||
public String getTypeHandler() {
|
||||
return typeHandler;
|
||||
}
|
||||
|
||||
protected Criterion(String condition) {
|
||||
super();
|
||||
this.condition = condition;
|
||||
this.typeHandler = null;
|
||||
this.noValue = true;
|
||||
}
|
||||
|
||||
protected Criterion(String condition, Object value, String typeHandler) {
|
||||
super();
|
||||
this.condition = condition;
|
||||
this.value = value;
|
||||
this.typeHandler = typeHandler;
|
||||
if (value instanceof List<?>) {
|
||||
this.listValue = true;
|
||||
} else {
|
||||
this.singleValue = true;
|
||||
}
|
||||
}
|
||||
|
||||
protected Criterion(String condition, Object value) {
|
||||
this(condition, value, null);
|
||||
}
|
||||
|
||||
protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
|
||||
super();
|
||||
this.condition = condition;
|
||||
this.value = value;
|
||||
this.secondValue = secondValue;
|
||||
this.typeHandler = typeHandler;
|
||||
this.betweenValue = true;
|
||||
}
|
||||
|
||||
protected Criterion(String condition, Object value, Object secondValue) {
|
||||
this(condition, value, secondValue, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,8 +1,11 @@
|
||||
package com.yutou.tools.nas;
|
||||
|
||||
import com.yutou.tools.mybatis.dao.UKeyDao;
|
||||
import com.yutou.tools.mybatis.model.UKey;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.io.BufferedReader;
|
||||
import java.io.File;
|
||||
@@ -15,7 +18,6 @@ import java.util.regex.Pattern;
|
||||
|
||||
@Controller
|
||||
public class UpdateIp {
|
||||
private static final String nasToken = "zIrsh9TUZP2lfRW753PannG49E7VJvor";
|
||||
private static List<String> keys = new ArrayList<>();
|
||||
|
||||
/* static {
|
||||
@@ -27,12 +29,10 @@ public class UpdateIp {
|
||||
keys.add("nas-ftp-server");
|
||||
}*/
|
||||
|
||||
|
||||
@RequestMapping("/nas/updateip.do")
|
||||
public void updateIp(String token, String ip) {
|
||||
if (!nasToken.equals(token)) {
|
||||
System.out.println("验证不通过:" + token);
|
||||
return;
|
||||
}
|
||||
public void updateIp(String ip) {
|
||||
|
||||
updateList();
|
||||
File file = new File("/etc/nginx/nginx.conf");
|
||||
if (file.exists()) {
|
||||
@@ -102,6 +102,5 @@ public class UpdateIp {
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
new UpdateIp().updateIp(nasToken, "119.119.120.99");
|
||||
}
|
||||
}
|
||||
|
||||
37
src/main/java/com/yutou/tools/utils/APIFilter.java
Normal file
37
src/main/java/com/yutou/tools/utils/APIFilter.java
Normal file
@@ -0,0 +1,37 @@
|
||||
package com.yutou.tools.utils;
|
||||
|
||||
import com.yutou.tools.mybatis.dao.UKeyDao;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.*;
|
||||
import javax.servlet.annotation.WebFilter;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
import java.util.Enumeration;
|
||||
|
||||
@Component
|
||||
@WebFilter
|
||||
public class APIFilter implements Filter {
|
||||
@Resource
|
||||
UKeyDao keyDao;
|
||||
@Resource
|
||||
RedisTools redisTools;
|
||||
@Override
|
||||
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
|
||||
HttpServletRequest request= (HttpServletRequest) servletRequest;
|
||||
String token=request.getParameter("token");
|
||||
System.out.println("接收到请求:"+request.getRequestURI()+" "+token);
|
||||
if(token==null&&redisTools.get(request.getSession().getId())==null&&!request.getRequestURI().equals("/")){
|
||||
System.out.println("请求无令牌,拦截");
|
||||
//((HttpServletResponse)servletResponse).sendRedirect("/");
|
||||
//return;
|
||||
}
|
||||
if (token!=null&&keyDao.selectByKey(token)!=null) {
|
||||
System.out.println("token验证不通过:" + token);
|
||||
//return;
|
||||
}
|
||||
filterChain.doFilter(servletRequest, servletResponse);
|
||||
}
|
||||
}
|
||||
28
src/main/java/com/yutou/tools/utils/CorsConfig.java
Normal file
28
src/main/java/com/yutou/tools/utils/CorsConfig.java
Normal file
@@ -0,0 +1,28 @@
|
||||
package com.yutou.tools.utils;
|
||||
|
||||
import org.springframework.boot.web.servlet.FilterRegistrationBean;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.web.cors.CorsConfiguration;
|
||||
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
|
||||
import org.springframework.web.filter.CorsFilter;
|
||||
|
||||
@Configuration
|
||||
public class CorsConfig {
|
||||
@Bean
|
||||
public FilterRegistrationBean corsFilter() {
|
||||
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
|
||||
CorsConfiguration config = new CorsConfiguration();
|
||||
config.setAllowCredentials(true);
|
||||
// 设置你要允许的网站域名,如果全允许则设为 *
|
||||
config.addAllowedOrigin("*");
|
||||
// 如果要限制 HEADER 或 METHOD 请自行更改
|
||||
config.addAllowedHeader("*");
|
||||
config.addAllowedMethod("*");
|
||||
source.registerCorsConfiguration("/**", config);
|
||||
FilterRegistrationBean bean = new FilterRegistrationBean(new CorsFilter(source));
|
||||
// 这个顺序很重要哦,为避免麻烦请设置在最前
|
||||
bean.setOrder(0);
|
||||
return bean;
|
||||
}
|
||||
}
|
||||
102
src/main/java/com/yutou/tools/utils/RedisConfig.java
Normal file
102
src/main/java/com/yutou/tools/utils/RedisConfig.java
Normal file
@@ -0,0 +1,102 @@
|
||||
package com.yutou.tools.utils;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonAutoDetect;
|
||||
import com.fasterxml.jackson.annotation.PropertyAccessor;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import org.springframework.cache.annotation.CachingConfigurerSupport;
|
||||
import org.springframework.cache.annotation.EnableCaching;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.data.redis.connection.RedisConnectionFactory;
|
||||
import org.springframework.data.redis.core.*;
|
||||
import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
|
||||
import org.springframework.data.redis.serializer.StringRedisSerializer;
|
||||
|
||||
@Configuration
|
||||
@EnableCaching
|
||||
public class RedisConfig extends CachingConfigurerSupport {
|
||||
@Bean
|
||||
public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {
|
||||
|
||||
RedisTemplate<String, Object> template = new RedisTemplate<>();
|
||||
// 配置连接工厂
|
||||
template.setConnectionFactory(factory);
|
||||
|
||||
//使用Jackson2JsonRedisSerializer来序列化和反序列化redis的value值(默认使用JDK的序列化方式)
|
||||
Jackson2JsonRedisSerializer jacksonSeial = new Jackson2JsonRedisSerializer(Object.class);
|
||||
|
||||
ObjectMapper om = new ObjectMapper();
|
||||
// 指定要序列化的域,field,get和set,以及修饰符范围,ANY是都有包括private和public
|
||||
om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
|
||||
// 指定序列化输入的类型,类必须是非final修饰的,final修饰的类,比如String,Integer等会跑出异常
|
||||
om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
|
||||
jacksonSeial.setObjectMapper(om);
|
||||
|
||||
// 值采用json序列化
|
||||
template.setValueSerializer(jacksonSeial);
|
||||
//使用StringRedisSerializer来序列化和反序列化redis的key值
|
||||
template.setKeySerializer(new StringRedisSerializer());
|
||||
|
||||
// 设置hash key 和value序列化模式
|
||||
template.setHashKeySerializer(new StringRedisSerializer());
|
||||
template.setHashValueSerializer(jacksonSeial);
|
||||
template.afterPropertiesSet();
|
||||
|
||||
return template;
|
||||
}
|
||||
|
||||
/**
|
||||
* 对hash类型的数据操作
|
||||
*
|
||||
* @param redisTemplate
|
||||
* @return
|
||||
*/
|
||||
@Bean
|
||||
public HashOperations<String, String, Object> hashOperations(RedisTemplate<String, Object> redisTemplate) {
|
||||
return redisTemplate.opsForHash();
|
||||
}
|
||||
|
||||
/**
|
||||
* 对redis字符串类型数据操作
|
||||
*
|
||||
* @param redisTemplate
|
||||
* @return
|
||||
*/
|
||||
@Bean
|
||||
public ValueOperations<String, Object> valueOperations(RedisTemplate<String, Object> redisTemplate) {
|
||||
return redisTemplate.opsForValue();
|
||||
}
|
||||
|
||||
/**
|
||||
* 对链表类型的数据操作
|
||||
*
|
||||
* @param redisTemplate
|
||||
* @return
|
||||
*/
|
||||
@Bean
|
||||
public ListOperations<String, Object> listOperations(RedisTemplate<String, Object> redisTemplate) {
|
||||
return redisTemplate.opsForList();
|
||||
}
|
||||
|
||||
/**
|
||||
* 对无序集合类型的数据操作
|
||||
*
|
||||
* @param redisTemplate
|
||||
* @return
|
||||
*/
|
||||
@Bean
|
||||
public SetOperations<String, Object> setOperations(RedisTemplate<String, Object> redisTemplate) {
|
||||
return redisTemplate.opsForSet();
|
||||
}
|
||||
|
||||
/**
|
||||
* 对有序集合类型的数据操作
|
||||
*
|
||||
* @param redisTemplate
|
||||
* @return
|
||||
*/
|
||||
@Bean
|
||||
public ZSetOperations<String, Object> zSetOperations(RedisTemplate<String, Object> redisTemplate) {
|
||||
return redisTemplate.opsForZSet();
|
||||
}
|
||||
}
|
||||
23
src/main/java/com/yutou/tools/utils/RedisTools.java
Normal file
23
src/main/java/com/yutou/tools/utils/RedisTools.java
Normal file
@@ -0,0 +1,23 @@
|
||||
package com.yutou.tools.utils;
|
||||
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.data.redis.core.RedisTemplate;
|
||||
import org.springframework.data.redis.core.StringRedisTemplate;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
@Component
|
||||
public class RedisTools {
|
||||
@Resource
|
||||
RedisTemplate<String,String> redisTemplate;
|
||||
public void set(String key,String value){
|
||||
redisTemplate.opsForValue().set(key,value);
|
||||
}
|
||||
public void set(String key,String value,long time){
|
||||
redisTemplate.opsForValue().set(key, value, time);
|
||||
}
|
||||
public String get(String key){
|
||||
return redisTemplate.opsForValue().get(key);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user