![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
实战
Lydia的IT世界是橙色的
研究所工程师,码龄2年,大数据方向
展开
-
运行hadoop 报错 No job jar file set. User classes may not be found. See Job or Job#setJar(String)
如下创建主类程序public class JobMain extends Configured implements Tool {@Overridepublic int run(String[] args) throws Exception {//1:创建job对象Job job = Job.getInstance(super.getConf(), "mapreduce_sort");...}结果单机上跑没有问题,但是放在集群上就会出问题报如下错误20/12/19 18:09:34 I原创 2020-12-20 10:25:24 · 2084 阅读 · 1 评论 -
shiro - 前后端权限控制详细做法
之前的博客已经对shiro在springboot中的使用做了详细说明,这里继续说明如何具体实施,由于我一直在完善自已的博客,这里做一个笔记。1. 创建表我创建了4个表来对不同身份的用户进行权限管理,主要是通过用户->角色->权限进行管理各个表的样子如下:2. 定义Perm类这里的类与之前创建的perm表相对应@Data@AllArgsConstructor@NoArgsConstructorpublic class Perm implements Serializable原创 2020-11-13 19:24:51 · 621 阅读 · 0 评论 -
springboot - 启动时将数据保存在servletContext中的两种办法
最近在写个人博客,想在系统启动时自动把文章类别查询出来并保存,之前系统启动时是用redis对文章的浏览量和评论数进行保存。这次想用另一种方式。即将文章类别保存到应用的上下文。这里就要搞清楚三个概念ServletContext、ApplicationContext、ServletConfig、WebApplicationContext。这里主要参考了:https://blog.csdn.net/u010325193/article/details/845348611. ServletContext、Appl原创 2020-11-05 15:34:23 · 1922 阅读 · 0 评论 -
Vue - 后端解析md文件并在前端显示 (代码高亮+md中图片显示)
之前在做的个人博客,前端直接引入markdown文件并显示,当时的做法如下:这里如果用import()动态引入,必须写入静态路径,十分麻烦,难道项目部署上线时我还需要到这里来修改这个静态路径吗?肯定不会,所以我思来想去,还是采用后端解析md文件前端显示的流程,这样一系列文件路径的配置可以放在后端。1. 后端解析md文件1.1 配置md文件存储路径以及相关映射server: #端口 port: 4000 #本地路径 为了映射md中的图片文件,必须填 address: localho原创 2020-11-03 19:23:22 · 5443 阅读 · 0 评论 -
spring - shiro - session交给redis托管
shiro自己也有session,但是我希望将这个session交给redis托管,因为如果系统采用分布式,登录信息只保存在一个节点是肯定不行的。仔细弄了几天,遇到几个坑,查了很多资料,终于走通了。现在做个笔记。有关shiro的认证与校验见https://blog.csdn.net/ws6afa88/article/details/1090616100. ShiroDemo目录结构1. 主要依赖<!--整合shiro--> <dependency> <gro原创 2020-10-15 23:47:43 · 667 阅读 · 0 评论 -
springboot - shiro - 简单验证与授权
最近开发个人博客,主要内容部分已经完成,就到了设计权限的部分,于是把shiro翻出来复习了一下,现在记录一下测试过程:0. shiro逻辑参考https://www.jianshu.com/p/7464327c83fe//创建一个默认SecurityManagerDefaultSecurityManager defaultSecurityManager = new DefaultSecurityManager();//创建一个自定义Realm对象CustomRealm realm = new C原创 2020-10-13 22:41:55 · 249 阅读 · 0 评论 -
mybatis-select与update多字段判断拼接-xml写法
最近用mybatis进行select和update操作,因为一般只传入一个对象,却只对其中某些属性进行查询或更新,这时要写通用的sql语句,就必然涉及到多字段判断拼接。在这里做一个总结:1. select多字段判断拼接只传一个ArticleQuery对象,返回Article对象,常用 <!--文章查询的sql片断,建议是以单表为单位定义查询条件,建议将常用的查询条件都写出来--> <sql id="query_items_where"> <i原创 2020-10-07 23:54:26 · 1236 阅读 · 0 评论 -
SpringBoot - 后端条件分页查询-MyBatis解决方案
最近用SpringBoot+MyBatis在做个人博客网站,遇了条件分页查询,现在把解决流程与源代码记录下来,便于后续参考。1.数据表2. 定义pojo定义与数据表相对应的Article 类@Data@NoArgsConstructor@AllArgsConstructorpublic class Article implements Serializable { private Long articleId; private Long userId=1l ; pr原创 2020-10-05 14:53:54 · 2416 阅读 · 1 评论 -
springboot - 利用@PostConstruct对自定义Bean进行初始化
开发博客系统的时候有一个需求,就是希望系统启动时,自动将指定文件夹中的md文件写入到数据库,这样我每更新一篇文章只需将文章拷贝入那个文件夹即可。(当然也可以开发界面上传的方式,但我不想搞得那么复杂,怎么方便怎么来)。数据库表长这样:存储文章的文件夹长这样:这里用@PostConstruct这个注解很好实现,注意系统启动时,初始化的顺序为:构造方法 -> @Autowired -> @PostConstruct@Component@Order(Ordered.HIGHEST_PRECE原创 2020-10-02 09:59:13 · 1020 阅读 · 0 评论 -
Vue系列-import动态引入的坑
最近在开发个人博客,点击文章列表显示相应md文章,效果如下:其中遇到一个坑,我通过在后端请求md文件的path,从而在前端展示markdown文件,具体代码如下:<!--前端展示md文章--><vue-markdown :key="key">{{msg}}</vue-markdown> async getMd(){ //通过id获取md文件的path await getArticleById(this.$route.p原创 2020-10-01 09:29:14 · 7631 阅读 · 1 评论 -
Vue系列-axios请求与拦截综合应用
1.封装axios请求与回复拦截器import axios from 'axios'import {Message} from 'element-ui'//定义axios的baseURL axios.defaults.baseURL = 'http://localhost:8080/api/' // request拦截器axios.interceptors.request.use(function (config) { // 在发送请求之前做些什么 return config原创 2020-09-30 00:36:52 · 180 阅读 · 0 评论 -
Vue系列-使用mavon-editor编辑并保存markdown到后台,同时回显图片
1. 安装并配置mavon-editor到Vue项目前端vue,后端springboot实现markdown文件的编辑与上传。主要使用mavon-editor插件1.1 安装npm install mavon-editor --save1.2 配置新建mavenEditor.js // 全局注册 // import with ES6 import Vue from 'vue' import mavonEditor from 'mavon-editor' impo原创 2020-09-24 02:10:34 · 7449 阅读 · 6 评论 -
springboot 利用mybatis操作mysql数据库-常规流程
1. 创建数据库这里用SQLyog进行操作sql语句比较方便CREATE DATABASE myblogUSE myblogDROP TABLE IF EXISTS `articles`;#创建数据表articlesCREATE TABLE `articles` ( `article_id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `user_id` BIGINT(20) NOT NULL COMMENT '用户ID',原创 2020-09-22 20:09:21 · 488 阅读 · 0 评论 -
Vue系列-解决axios请求的跨域问题
vue创建页面时,假如设置的端口是8080,而后台端口是40000,当用axios进行数据交互时就会出现跨域问题。解决的办法很简单,这里做一个笔记,就是在vue项目中与package.json文件同级的目录下新建一个文件vue.config.js,在vue.config.js中进行如下配置module.exports = { devServer: { proxy: { '/api': { //后端请求的地址原创 2020-09-21 00:02:43 · 261 阅读 · 0 评论