- 博客(53)
- 收藏
- 关注
原创 Spring中bean对象的装配方式、作用域及生命周期
1. bean对象装配的三种方式(就是在配置文件中写一个bean标签)①内部new一个实现类,调用默认构造器<bean id="userService" class="com.diao.service.UserServiceImpl"></bean>②通过静态工厂方法<!--在静态方法中返回一个实例对象,通过调用工厂类的静态方法获取实例对象-->&l...
2019-12-18 09:02:26
280
原创 Spring容器创建的四种方式
1. ClassPathXmlApplicationContext ClassPath类路径加载,必须是类路径ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml"); //beans.xml配置文件路径IUserService user = (IUserService) cont...
2019-12-18 08:54:54
857
1
原创 SQLServer中一些查看表信息的sql语句
1、查看指定库下的所有表名:use 库名;SELECT name FROM sysobjects WHERE xtype = 'u';2、查看库中与某个表有外键关联的表:USE 库名;SELECT f.name AS foreignkeyName --外键名 ,OBJECT_NAME(f.parent_object_id) AS foreignkeyTabl...
2019-09-20 11:15:45
5143
原创 tomcat启动报“Host *** is not allowed to connect to this mysql server”解决方法
在windows系统下,本地连接MySQL没问题,但程序部署到Tomcat后启动时提示无法远程连接MySQL解决:打开MySQL,执行以下语句:use mysqlupdate user set host = '%' where user = 'root';FLUSH PRIVILEGES;#刷新权限相关表...
2019-09-18 09:19:08
391
原创 将SQLServer多个数据库中的空表转移到另一个数据库中
背景:在做完一个SQLServer的数据迁移工作后(导出/导入.sql文件),发现每个库中有多个空表,于是想把这些空表转移到另一个库中。首先,查看数据库中空表的sql语句如下:USE 库名;SELECT A.NAMEFROM sys.tables AINNER JOIN sys.partitions B ON A.object_id = B.object_idGROUP BY ...
2019-09-17 16:41:11
492
原创 JDBC连接SQLServer报“java.lang.ClassNotFoundException:com.microsoft.sqlserver.jdbc.SQLServerDriver”解决办法
背景:用JDBC连接SQLServer时,报java.lang.ClassNotFoundException:com.microsoft.sqlserver.jdbc.SQLServerDriver。找不到驱动类,可明明下了依赖。这时需要重新下载 sqljdbc4.jar ,然后把这个jar包放在java安装路径的lib\ext下面。然后再IDEA中,点击右上角“Project Structu...
2019-09-09 16:10:57
3107
原创 Kettle中的“JavaScript脚本”组件如何使用自定义jar
在使用Kettle时,如果给定的组件中不能满足我们的需求,可以使用“JavaScript脚本”组件来使用我们自定义的功能。Kettle版本:8.0背景:要将传入的时间字符串转换为时间戳(试了“字段选择”组件来修改元数据类型,但是达不到想要的效果)如:传入“2019-09-05 10:14:16” ,得到结果“1567649656000”这里我们可以通过编写Java代码实现这个转换功能:...
2019-09-05 10:39:05
562
原创 Python运行出现 IncompleteRead(25686 bytes read)
问题:使用urllib的request模块抓取页面时,不时会出现“IncompleteRead(25686 bytes read)”这样的错误导致运行中断。部分代码如下: url = "https://baike.baidu.com/item/%E6%95%B0%E5%AD%A6/107037" rsp = request.urlopen(url) html...
2019-09-03 15:50:08
4038
1
原创 Kettle的“文本文件输入”中,Fixed类型文件的读取
有时我们在“文本文件输入”时,文件类型会采用“Fixed”,那么对应的字段应该如何设置呢?如果我们只是在“文件类型”处选择了“Fixed”类型,那么在“字段”模块下,点击“获取字段”时默认只有一个字段,如下图:(这里我们文件中其实有四个字段:Roller_Coaster、Speed、Location、Year)那么如何来划分固定长度字段呢?这里需要我们手动去设置每列固定的宽度,方法是单击上...
2019-08-26 15:42:06
1138
原创 Kettle中模糊查询的使用
背景:有时候我们查找数据并非知道具体某个字段的值,也许只知道其中一部分,或者查询时可能输入有误,这种情况下,我们需要进行模糊查找。Kettle提供了这样的功能,接下来我们进行介绍。假设您收到一个带有书籍订单的外部文本文件,您需要找到某本书籍的价格。问题是你没有那本书的标识,你只有书名,而且你不确定拼写是否正确。准备工作:在Mysql中准备一个books表(也可以在其他数据库中创建),字段如下图...
2019-07-30 11:14:40
5035
原创 SpringBoot配置文件中的中文在运行中出现乱码问题的解决
在配置文件中配置person.lastName=张三,测试时虽然可以注入person,但是"张三"却出现了乱码问题,如图:解决方法:这里需要注意的是,之前配置文件中的person.lastName=张三,这里的“张三”在改完如上配置后可能会变为乱码,删除重新输入即可测试:...
2019-07-01 11:01:30
971
原创 SpringBoot的配置文件
SpringBoot的配置文件SpringBoot使用一个全局的配置文件,配置文件名是固定的:application.propertiesapplication.yml(application.yaml)配置文件的作用:修改SpringBoot自动配置的默认值,SpringBoot在底层都给我们自动配置好了YAML:标记语言以前的配置文件,大多都使用的是xxxx.xml文件;YA...
2019-06-28 16:05:53
97
原创 使用向导快速创建Spring Boot工程
在IDE中选择new——project——Spring Initializr这里需要注意的是:选择模块后,向导会联网创建spring boot项目,所以要联网然后写一个controller类这时在服务器输入:localhost:8080//hello,结果如下图...
2019-06-28 11:29:59
165
转载 缓存的那点事(一)
转自:https://mp.weixin.qq.com/s?__biz=MzU0OTk3ODQ3Ng==&mid=2247485558&idx=1&sn=55306971f415033f7246d7a9d15271ba&chksm=fba6e075ccd169639cf104366fd3bde7a65369e530a5bf689b662d9220870c170bbd...
2019-06-28 09:46:12
140
原创 什么是Spring IOC 和 DI
1、IOC是什么?IOC——Inversion of Control,即“控制反转”,是一种设计思想,在Java开发中,IOC意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。理解IOC的关键是要明确“谁控制谁,控制什么,为何是反转,哪些方面反转了”?在应用程序中的组件需要获取资源时,传统的方式是组件主动的从容器中获取所需要的资源,在这样的模式下开发人员往往需要知道在具体...
2019-06-28 09:17:38
196
原创 Hue整合Oozie,WorkFlow使用邮箱功能发送邮件报错:Encountered an error while sending the email message over SMTP.
背景:在WorkFlow中设置邮箱节点,执行测试任务时报错:Encountered an error while sending the email message over SMTP,如下图:错误原因:配置Oozie电子邮箱操作SMTP 身份验证密码时错误,这个密码是启动SMTP服务时在邮箱设置的授权码,并不是邮箱密码设置邮箱SMTP授权码(这里以163邮箱为例)然后将Ooz...
2019-06-26 11:43:44
2411
2
原创 HDFS中Datanode挂载磁盘容量报警,如何增加挂载磁盘
通过CDH集群管理界面的“主机”——“所有主机”,我们可以查看每个节点的磁盘和内存使用情况,如下如果磁盘不够用了,需要增加挂载,怎么办?首先查看服务器磁盘占用情况:df -h假设这里50G是之前挂载的,现在想要挂载这个83G的,需要在对应目录下创建一个目录dn,即:cd /homemkdir dn注意:创建dn目录后,要将其所属组修改为hdfs,否则修改配置后hdfs无法重启...
2019-06-25 16:55:21
1170
原创 修改Linux的分辨率
分辨率不合适导致Linux屏幕太小,如下图:那么如何修改呢?1.右键选择“在终端中打开”,输入“xrandr”,可以显示目前分辨率(带*的,和可以选择的分辨率)2.选择合适的分辨率,输入命令“xrandr -s 1024x768” 回车即可...
2019-06-24 14:26:14
7288
原创 Hive执行查询(需要通过MR)卡住无法运行问题解决
背景:测试hive时,执行简单查询select count(*) from test.t1;,任务跑起来后卡住不动,也不报错,如下图:原因:最后发现是参数:yarn.nodemanager.resource.memory-mb设置的太小导致的进入CDH管理界面,Yarn的配置中这个参数显示如下:这里的“容器内存”这个解释误导了我,开始我以为这个参数是设置每个container容器的内存大...
2019-06-24 11:23:18
8032
5
原创 HUE整合HDFS后无法创建文件问题的解决
错误信息提示:这是由于登录HUE的账户和HDFS目录操作权限的账户不一致导致的(比如我是用admin登录的hue,而HDFS目录的权限是hdfs)解决方法:关闭HDFS设置中的权限检查,然后重启创建文件成功这里hiveTest.sh文件的创建用户就是admin,和其他文件不同...
2019-06-21 09:28:10
1678
原创 CDH集群管理界面打开oozie的Web页面报错:Oozie web console is disabled
一、错误说明CDH集群管理界面打开oozie的Web页面报错二、问题解决根据提示查看Oozie Quick Start 发现是缺少ExtJS 2.2库(必须是2.2版)①进入/var/lib/oozie目录cd /var/lib/oozie②下载ext-2.2库wget http://archive.cloudera.com/gplextras/misc/ext-2.2.zip ...
2019-06-20 10:49:34
877
转载 OLAP和DM(Data Mining 数据挖掘)的区别
OLAP(Online Analytical Process)联机分析处理:意指由数据库所连结出来的在线分析处理程序。有些人会说:“我已经有OLAP的工具了,所以我不需要Data Mining。” 事实上两者间是截然不同的,主要差异在于Data Mining用在产生假设,OLAP则用于查证假设。简单来说,OLAP是由使用者所主导,使用者先有一些假设,然后利用OLAP来查证假设是否成立;而Dat...
2019-06-17 09:04:12
1146
原创 Windows和Linux文件互传之——lrzsz
一、简介lrzsz是一款在linux里可代替ftp上传和下载的程序。二、安装centos服务器,可直接yum -y install lrzsz 程序会自动安装好。三、使用1.Linux文件到Windows输入命令:sz 【文件绝对路径】 文件名这时会弹出如下界面:然后点击确定即可。2.Windows文件到Linux输入命令:rz这时会弹出如下界面:这会把选中的Windo...
2019-06-14 08:53:34
286
原创 Kettle的job案例演示
Kettle的job是一个完整的工作流程,本案例是将上一个案例的转换操作执行成功后,在stu2表中再插入一条数据,上一个案例链接如下:https://mp.csdn.net/mdeditor/91811531#1.在Kettle中创建任务2.根据业务选择合适的图标...
2019-06-13 15:28:38
603
原创 初识Kettle及简单案例演示
一、Kettle简介Kettle是一款开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。二、Kettle核心知识点1.Kettle的工程存储方式①以XML形式存储②以资源库方式存储(数据库资源库和文件资源库)2.Kettle的两种设计①Transformation(转换):完成针对数据的基础转换②job(作业):完成整...
2019-06-13 12:45:35
1309
1
原创 Git的管理修改及撤销修改
管理修改git跟踪并管理的是修改,并不是文件,修改包括对已有文件的增删改或者新增文件如果对文件修改后没有git add ,而是直接git commit,这时git并不会记录修改,因为没有把修改的文件提交到暂存区这时只要执行git add 后再执行git commit 即可撤销修改情况一、修改后未提交到暂存区,或者提交到暂存区的文件再次被修改了,这时想要撤回时撤销修改使用命令:git...
2019-06-11 09:49:53
249
原创 Git版本回退
如上图,对文件进行修改后,提交到版本库中,如果此时发现文件修改错误,需要撤销修改,可以使用版本回退操作(1)查看提交版本的历史记录:git log如果嫌输出的信息太多,看的眼花缭乱的,可以加后缀 --pretty=oneline(2)回退版本:回退一个版本:git reset --hard head^回退两个版本:git reset --hard head^^回退n个版本:gi...
2019-06-11 09:19:55
114
原创 Git的工作区和暂存区
工作区:就是电脑能看到的目录,比如GitTest目录就是一个工作区暂存区:工作区内的.git目录中有一个称为stage(或者叫index)的暂存区,还有Git给我们自动创建的第一个分支master,以及指向master的一个指针HEADgit往版本库中添加的时候,是分两步执行的:(1)git add 把文件添加进去,实际上就是把文件添加到暂存区(2)git commit 提交更改,实际...
2019-06-11 09:07:22
181
原创 Git创建版本库、添加文件到版本库并提交
(1)创建版本库在一个没有中文的目录中打开git Bash,执行git init这时会在目录中生成一个.git目录注意:这个.git目录是是Git用来跟着管理版本库的,没事千万不要手动修改这个目录里面的文件,否则会破坏git版本库(2)创建文本文件可以直接用命令行执行 vim 文件名,也可以手动在目录下右击创建(3)将文件添加到版本库执行git add 文件名 或者 git a...
2019-06-11 09:04:50
639
原创 使用rsync+inotify实时同步指定目录下数据到指定服务器
背景:目前有两台服务器hadoop100 和 hadoop101,需要将hadoop101中 /opt/module/data/test 目录下的数据实时同步到 hadoop100 的/backup/目录下,通过rsync+inotify的形式实现一、inotify简介Inotify 是一个 Linux 内核特性,它监控文件系统,并且及时向专门的应用程序发出相关的事件警告,比如删除、读、写...
2019-06-10 11:22:31
159
原创 rsync的--daemon模式来同步数据
一、简介Rsync是一款开源的、快速的、多功能的、可实现全量及增量(全量备份是指全部备份,增量备份是在上一次备份的基础上只备份更新的内容)的本地货远程数据同步备份的优秀工具。Rsync软件适用于unix/linux/windows等多种操作系统平台。官网:http://www.samba.org/ftp/rsync/rsync.html一个rsync相当于scp,cp,rm,但是还优于他们每...
2019-06-06 14:51:10
4272
原创 Hive的DDL数据定义
库操作一、创建数据库:create database [if not exists] database_name[comment database_comment] //库的说明[location hdfs_path] ...
2019-06-05 12:35:34
372
原创 Hive的常见配置
查询后Hive信息显示的配置:显示字段名:<property> <name>hive.cli.print.header</name> <value>true</value></property>显示数据库名: <property> <name>hive.cli.pri...
2019-06-04 15:56:00
237
原创 Hive中数据的导入与导出的几种方式
一、数据导入(5种方式)向表中装载数据(load在HDFS上表现为剪切)hive> load data [local] inpath ‘/opt/module/datas/student.txt’ [overwrite] into table student [partition (partcol1=val1,…)];(1)load data:表示加载数据(2)local:表示从本...
2019-06-04 11:38:38
1251
原创 Hive自定义UDF函数
写一个类继承UDF,重写evaluate方法打包,将jar包导入虚拟机添加jaradd jar jar包地址(add jar /opt/module/datas/diao.jar;)创建临时函数与开发好的java class关联create temporary function mylower as “全类名”;使用临时函数select ename, mylower(ename) ...
2019-06-04 11:38:26
173
原创 Hive的数据类型
基本数据类型:对于Hive的String类型相当于数据库的varchar类型,该类型是一个可变的字符串,不同于java的string类型(java的string类型是不可变字符串)集合数据类型:Hive中有三种复杂的数据类型array、map、和struct。array和map和jave中的array和map类似,而struct与java中的对象类似,它封装了一个命令字段集合,复杂数据类...
2019-06-04 11:38:12
415
原创 Hive常用命令
创建库:create database 库名创建表:create table 表名创建外部表:createexternal table 库名创建表格式:create 【external】 table 【if not exists】库名(字段1 类型1 【comment注释】,字段2 类型2 【comment注释】……)【comment表注释】【分区partitioned by(字段 ...
2019-06-04 11:37:03
454
原创 Hive中的MapJoin如何用Hql语句实现
select /*+ mapjoin(test1)*/ test1.b,test2.a from test1 join test2 on test1.a = test2.a where test1.a like '%'+test2.b+'%'; /+ mapjoin(test1)/ 这里的test1是需要加载进内存的小表,后面跟正常的查询语句hive.mapjoin.smalltable...
2019-06-04 10:53:49
448
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人