0%

后端

spring boot 添加配置:

1
2
3
4
5
6
# 国际化
i18n:
locale: zh_TW
# 静态资源版本
build:
version: 010-0.0.2 #项目版本-静态资源版本

启动类中使用增强器为每个Controller注入变量

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
@Value("${i18n.locale}")
protected String locale;

@ControllerAdvice
public static class GlobalVariableController {
@Value("${build.version:0.0.1}")
private String buildVersion;

public GlobalVariableController() {
}

@ModelAttribute
public void getLocale(Model model) {
Locale _locale = ((LocaleResolver)SpringBeanUtils.getBean(LocaleResolver.class)).resolveLocale((HttpServletRequest)null);
model.addAttribute("_locale", _locale.toString());
model.addAttribute("_v", this.buildVersion);
}
}

前端

阅读全文 »

th中使用vue变量

1
2
3
4
5
6
<span th:text="'{{questionResourceType.count}}' + #{UI_38_02_016}">2653道题</span>

<!-- vue th变量混输-->
<span class="lt_1" th:utext="${#messages.msg('UI_38_06_023', '&lt;em&gt;{{questionCount}}&lt;/em&gt;')} + '&lt;em&gt;{{paper.totalPoints}}&lt;/em&gt;' + #{UI_38_01_025}">共20道题 20分</span>
<!-- 渲染后-->
<span class="lt_1"><em>20</em>道題<em>20</em></span>

常用语法

判断条件

1
2
3
4
5
6
gt:great than(大于)>
ge:great equal(大于等于)>=
eq:equal(等于)==
lt:less than(小于)<
le:less equal(小于等于)<=
ne:not equal(不等于)!=

使用他的一键脚本 https://teddysun.com/448.html/comment-page-6#comments

如果你要想对用户进行操作,可以使用如下命令:

1
2
3
4
5
l2tp -a 新增用户
l2tp -d 删除用户
l2tp -m 修改现有的用户的密码
l2tp -l 列出所有用户名和密码
l2tp -h 列出帮助信息

其他事项:

1
2
3
1、脚本在安装完成后,已自动启动进程,并加入了开机自启动。
2、脚本会改写 iptables 或 firewalld 的规则。
3、脚本安装时,会即时将安装日志写到 /root/l2tp.log 文件里,如果你安装失败,可以通过此文件来寻找错误信息。

使用命令:

阅读全文 »

安装 firewalld

yum install firewalld firewall-config

你也可以关闭目前还不熟悉的FirewallD防火墙,而使用iptables,命令如下:

1
2
3
4
5
systemctl stop firewalld
systemctl disable firewalld
yum install iptables-services
systemctl start iptables
systemctl enable iptables

常用命令

  • 启动 systemctl start firewalld
  • 禁用 systemctl stop firewalld
  • 开机启动 systemctl enable firewalld
  • 关闭开机自启 systemctl disable firewalld
  • 状态 systemctl status firewalld | systemctl status firewalld.service | firewall-cmd --state
  • 查看版本 firewall-cmd --version
  • 查看公开域开放端口 firewall-cmd --zone=public --list-ports
  • 查看公开域开放的服务 firewall-cmd --zone=public --list-service
  • 添加端口, 添加后需要重载firewall才会生效, --perament 设置为永久生效
    firewall-cmd --zone=public --add-port=9080/tcp --permanent
  • 删除端口 firewall-cmd --zone=public --remove-port=9080/tcp --permanent
  • 重新载入 firewall-cmd --reload
  • 查看指定端口 firewall-cmd --zone=public --query-port=9080/tcp
  • 查看当前允许的端口及服务 firewall-cmd --list-all
阅读全文 »

添加端口

1
2
3
iptables -A INPUT -p tcp --dport 9115 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 9115 -j ACCEPT
service iptables save

添加到指定位置

1
2
3
4
5
6
# 查看所有行
iptables -L -n --line-number
# 插入到第三行
iptables -I INPUT 4 -p tcp -m tcp --dport 9115 -j ACCEPT
iptables -I OUTPUT 1 -p tcp --sport 9115 -j ACCEPT
service iptables save

删除规则

1
2
3
4
iptables -D INPUT -p tcp --dport 9115 -j ACCEPT
iptables -D OUTPUT -p tcp --sport 9115 -j ACCEPT
service iptables save

接收后端传过来的值:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
// 类型切换
var opTypes = new Vue({
el: '#select_type_area',
data: {
// JSON.parse() 转换一下
types: JSON.parse([[${contentTypes}]]),
activeType: ''
},
methods: {
selected: function(type) {
this.activeType = type
}
}
});

Thymeleaf 不支持 Vue 简写语法, 因为他默认使用的HTML严格检查, 下面的缩写都会报错:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<!-- 缩写 -->
<div id="app-11">
<!-- 完整语法 -->
<a v-bind:href="url">...</a>

<!-- 缩写 -->
<a :href="url">...</a>

<!-- 完整语法 -->
<a v-on:click="doSomething">...</a>

<!-- 缩写 -->
<a @click="doSomething">...</a>
</div>

取消严格检查:

1
2
3
4
5
6
<!-- thymeleaf模板对html5标签不使严格检查 -->
<dependency>
<groupId>net.sourceforge.nekohtml</groupId>
<artifactId>nekohtml</artifactId>
<version>1.9.22</version>
</dependency>
阅读全文 »

添加样式:

1
2
3
[v-cloak] {
display: none!important;
}

在标签上加上 v-cloak

1
<div class="topic-page" id="paper_list" v-cloak="">

  1. 启动时给其设置环境变量. java -Djava.rmi.server.hostname=45.76.214.173 -jar SSM_WEB_SERVER-1.0-SNAPSHOT.jar
  2. jdk自带的几个小工具的使用: jmap,jstack,jstat,jconsole,jvisualvm
  • jmap查看内存情况;
  • jstack查看线程的堆栈情况;
  • jstat查看gc的情况;
  • jconsole,jvisualvm综合查看内存,cpu,线程,类的信息;
  1. 守护进程运行:
    1
    2
    3
    nohup java -jar ~/web/academy-tails.jar >/var/log/academy-tails.log 2>&1 &
    # 或者
    java -jar JrebelLicenseServer.jar -p 12820 &

更新JAR包中的依赖

参考资料: 使用命令动态更新JAR包中的文件

  1. 创建要更新的jar包目录:

  2. 使用不压缩命令替换文件内容:

    1
    jar -uvf0 content-microservice.jar BOOT-INF\lib\content-framework-0.0.1.jar
阅读全文 »

错误异常:

1
"error":"Internal Server Error","exception":"com.netflix.zuul.exception.ZuulException","message":"GENERAL"

zuul 服务添加配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 负载均衡配置
ribbon:
# 25 秒超时
ReadTimeout: 25000
ConnectTimeout: 6000
MaxAutoRetries: 0
MaxAutoRetriesNextServer: 1
eureka:
enabled: true

# 熔断器配置
hystrix:
command:
default:
execution:
isolation:
thread:
timeoutInMilliseconds: 60000