腾讯企业邮箱第三方发送邮件文档:https://open.work.weixin.qq.com/help?person_id=0&doc_id=423&helpType=exmail 发送邮件服务器:smtp.exmail.qq.com ,使用SSL,端口号465,所以如下代码配置各项属性: Properties props = new Properties(); props.put("mail.smtp.host", "smtp.exmail.qq.com"); props.put("mail.s…

2021-11-12 0条评论 2783点热度 0人点赞 admin 阅读全文

Vue项目编译后,生成的dist文件夹下的资源文件,部署到服务器后,如果是http://www.example.com/这样的路径,是没有问题的;但是如果部署到二级目录后,例如 http://http://www.example.com/vue/后,就会发生问题,通过浏览器右键-检查 发现网页加载css和js都是从http://www.example.com/app.xxxx.js 或者http://www.example.com/app.xxxx.css 这样的,显然vue下的资源文件的加载的相对路径,还是按照一…

2021-11-10 0条评论 1294点热度 0人点赞 admin 阅读全文

自动生成API文档,https://gitee.com/xiaoym/knife4j 这个还是挺好用的,需求希望在开发环境下启用API文档,而生产环境下则关闭API文档,我们可以在Knife4j的配置代码中,加入@ConditionalOnProperty来根据当前的环境判断是否使用Knife4j。 Knife4jConfig 生产环境禁用 @ConditionalOnProperty(name = "my.product-env", havingValue = "false") 意思是查看application.…

2021-11-08 0条评论 4947点热度 0人点赞 admin 阅读全文

iView中Upload上传组件,配合表格组件,想要实现这样的功能(即要有拖拽上传,还有上传列表,以及上传进度),如图: 话不多说,直接上干货代码 Html部分 <row class="" style=""> <i-col span="20"> <upload ref="upload" :show-upload-list="false" :on-success="handleSuccess" :on-error="handleError" :format="allowedFormat"…

2021-11-07 0条评论 2486点热度 0人点赞 admin 阅读全文

iView中例如表格Table的column中,一些属性是由render函数渲染的,有时候需要在render函数中,调用data里面的数据,就要用到this.someProperty,不过发现这个时候,this是空的(undefined) 解决办法也比较简单,在data()里面,return前面指定一个变量存储下this,作为缓存来使用,示例如下: data() { // 使用that存储下this实例,以便在column1的render函数下调用 var that = this; return { spinSho…

2021-11-04 0条评论 1656点热度 0人点赞 admin 阅读全文

Vue中使用v-charts默认展示图表,引入依赖: package.json: "dependencies": { "echarts": "^4.9.0", "v-charts": "^1.19.0" } 类似如下代码: <VeRing :data="chartData" :title="titleObject"></VeRing> // or <ve-pie :title="titleObject" :data="chartData" ></ve-pie> //其…

2021-11-03 0条评论 3448点热度 0人点赞 admin 阅读全文

之前为了让Html中的文字实现首行缩进,我都是前面用好几个空格(或者&nbsp;)来凑的,这样显得很不优雅,而且具体多少个空格还不一致。 原来css里有专门的属性,可以实现这个功能,那就是 text-indent 说明 用于定义块级元素中第一个内容行的缩进。这最常用于建立一个“标签页”效果。允许指定负值,这会产生一种“悬挂缩进”的效果。 默认值: not specified 继承性: yes 版本: CSS1 JavaScript 语法: object.style.textIndent="50px" 可能的…

2021-11-01 0条评论 1420点热度 0人点赞 admin 阅读全文

vue项目中,如果地址栏改变(例如菜单是根据参数改变而不同的:/info?id=1里面$router.push或者replace到/info?id=2),是不会进入created() {}或者mounted(){}或者activated(){}等生命周期方法的 我们可以利用watch来监听query是否改变 watch: { '$route.query.id'() { console.log('$route.query.id called: '+ this.$route.query.id); // 你的代码逻辑 }…

2021-10-29 0条评论 986点热度 0人点赞 admin 阅读全文

SpringBoot的拦截器HandlerInterceptor下,我们在public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object o)下进行了拦截,对不符合条件的请求,我们一般是返回一个非200的状态代码,例如: @Component public class PersonalInterceptor implements HandlerInterceptor { @Override publi…

2021-10-28 0条评论 2496点热度 0人点赞 admin 阅读全文

之前的文章有介绍如何利用正则表达式判断给定IP地址字符串是否是内网IP,详见:https://blog.terrynow.com/2021/10/24/java-regex-check-if-given-ip-is-inner-ip/,不过有个问题,类似0:0:0:0:0:0:0:1/::1这样的ipv6地址,需要重新写正则表达式。 Java里有一个InetAddress,可以不用正则表达式,利用直接进行判断: public static boolean isInnerIp(String ipAddress) { …

2021-10-25 0条评论 2306点热度 0人点赞 admin 阅读全文
1353637383957