配置hadoop各个节点之间免密码登录实践笔记 前言: 最近在搭建Hadoop环境需要设置无密码登陆,所谓无密码登陆其实是指通过证书认证的方式登陆,使用一种被称为"公私钥"认证的方式来进行ssh登录。在linux系统中,ssh是远程登录的默认工具,因为该工具的协议使用了RSA/DSA的加密算法.该工具做linux系统的远程管理是非常安全的。telnet,因为其不安全性,在linux系统中被搁置使用了。
转:人生比努力更重要的是选择,与时俱进是成功的源泉。 如果有一天你隔壁开火锅店的张三,卖手机卖得比你好,你不用觉得惊讶。因为,这是一个跨界的时代,每一个行业都在整合,都在交叉,都在相互渗透。移动互联网改变生活未来我们的生活会是什么样子呢?我们设想一下,晚上带着家人去吃饭,拿出手机点击附近餐厅,看完餐厅介绍,对比之后,挑一家评价好的、好吃又实惠的餐厅,在手机上领取一张会员卡,定好座位,等时间到了,点击导航,直接去吃饭
转:笔记本电脑开机密码忘记的解决方法 相信有很多人为了电脑数据的安全或者出于保护自己隐私种种原因,都会对自己的电脑设置的开机密码,这样能够防止别人乱动你的电脑。我们设置好开机登录密码后,在开机或者解锁计算机的时候都要输入正确的密码才能进入电脑系统,这样就保证了电脑的安全,可是有的时候时间久了,电脑开机密码忘记了怎么办呢?接下来就和大家分享下忘记电脑开机密码的几种解决办法 一、电脑已经登录到系统,但是忘记了密 1、对
hadoop中各个名词的用途 NameNode:元数据服务器Secondary NameNode:辅助元数据服务器JobTracker:任务调度器DataNodes:块存储TaskTrackers:任务执行
JavaScript中没有块级作用域程序举例例证 var i = 10; function a(){ alert(i); } //a();//output:10 var i = 10; function a(){ var i = 2;//在alert上可以输出2 alert(i); //var i = 2;//在alert下因为未赋值所以输出undefined:不明确的变量
JavaScript中声明全局变量的三种方式(包括显示和隐式) 声明方式一:使用var(关键字)+变量名(标识符)的方式在function外部声明,即为全局变量,否则在function声明的是局部变量。 var test = 5;//全局变量 function a(){ var a = 3;//局部变量 alert(a); } function b(){ alert(test); } //a();//调用a方
转:svn和git的区别,maven是什么 鉴于本吧多新人,新人又需要多交流才能进步,今天就给新人们讲讲git和maven的必要性,因为,他们的重要性,远远超过很多没用过的人的想象。很多人应该用过svn cvs之类的代码版本管理工具,git也是其中之一。svn和git最大的几个区别要点,svn必须要有服务端,网络能连上服务端才能提交和更新,git不需要,每一台装了git的电脑都是服务端,各台电脑之间可以相互同步和推送,而提交
为Firefox安装样式 第一步:https://addons.mozilla.org/zh-CN/firefox/addon/stylish/,安装Stylish插件第二步:下载stylish.sqlite,把它放在:C:\Users\wpc\AppData\Roaming\Mozilla\Firefox\Profiles\fak3j0m9.default下面即可这样显示如下效果:
JavaScript中创建对象的几种方式 无标题文档 var Cat={};//JSON Cat.name="风恋绝尘、";//添加属性并赋值 Cat.age=22; Cat.sayHello=function(){ alert("hello"+Cat.name+",今年"+Cat["age"]+"岁了");//可以使用"."的方式访问属性,也可以使用HashMap的方式访问 } Cat.say
String StringBuffer StringBuilder之间的区别 相信大家看到过很多比较String和StringBuffer区别的文章,也明白这两者的区别,然而自从Java 5.0发布以后,我们的比较列表上将多出一个对象了,这就是StringBuilder类。String类是不可变类,任何对String的改变都会引发新的String对象的生成;而StringBuffer则是可变类,任何对它所指代的字符串的改变都不会产生新的对象,可变和不可变类这一对对象已经齐全
父类子类之间的一个经典题目(有关成员变量何时赋值和在哪里赋值的问题) 父类:package cn.edu.lstc.extend;public class Base { private String baseName = "base"; public Base() {// baseName = "base";//默认成员变量在构造方法里这样赋值 callName(); } public void callName() { Syst
转:Nutch学习笔记--抓取过程简析 在上篇学习笔记中http://www.cnblogs.com/huligong1234/p/3464371.html 主要记录Nutch安装及简单运行的过程。笔记中 通过配置抓取地址http://blog.tianya.cn 并执行抓取命令 nohup ./bin/nutch crawl urls -dir data -threads 100 -depth 3 &进行了抓取。本次笔
hadoop学习笔记之分布式计算框架 分布式计算框架:移动计算而不是移动数据,移动计算就是把你写好的计算程序拷贝到不同的计算节点上运行MapReduce适合做离线计算Storm适合做流失计算Spark适合做内存计算框架从HDFS上存储的数据作为我们MapReduce的一个输入,首先把一个文件切成片,然后map计算 接着shuffle,接着reduce,最终把结果存储在HDFS文件系统上面。
RPC协议、http协议、tcp/ip协议、udp协议、socket协议以及soap协议都有什么相同点和不同点 HTTP与RPC的区别:人们常常错误地将HTTP称作一种远程过程调用(RPC)[23]机制,仅仅是因为它包括了请求和响应。 调用远程机器上的一个过程(procedure)的观念,是RPC与其他形式的基于网络的应用通信的区别在。 RPC的协议识别出过程并且传递给它固定的一组参数,然后等待在使用相同接口返回的一个消息中提供的回答。远程方法调用(RMI)也是类似的,除了过程被标识为一个{对象
在eclipse中进行nutch1.7二次开发通过ant编译build.xml出现Class not found javac1.8 把nutch1.7通过svn导入到本地后打算进行二次开发却在开始用ant进行build.xml构建的时候出现Class not found javac1.8暂且不管哪个sonar没有找到的问题,我们先把那个Class not found :javac1.8的问题:多半是因为Ant版本太低,低于1.9,无法和java1.8兼容,因为我的java运行环境是1.8的,Ant版本也是1.8,所
abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized 1,abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized都不可以,因为abstract申明的方法是要求子类去实现的,abstract只是告诉你有这样一个接口,你要去实现,至于你的具体实现可以是native和synchronized,也可以不是,抽象方法是不关心这些事的,所以写这两个是没有意义的。然后,static方法是不会被
java面试题:res初值为0,接着for循环10次后,res+=res++?最后res等于多少 ++单目运算符优先级高于+=赋值运算符优先级res1+=res1++等价于 res1=res1++;res1是先使用后自增,则res1=0,然后res1=res1+res1,结果res1仍是0package com.lstc.mianshi;public class Test1 { public static void main(String[] args) { int res1
执行./nutch 命令后出现的nutch脚本用法解读 Usage: nutch COMMAND where COMMAND is one of: inject inject new urls into the database :注入新的url到数据库中hostinject creates or updates an existing host table from a text file :从一个文本文件中创建
./在Linux下的含义解读 ./在Linux下的含义: 当前目录的意思,如果你想运行当前目录的aaa,可以使用./aaa来运行,表示执行在当前目录下面的aaa,如果你只打上aaa,那么系统会在默认的系统程序目录里面寻找aaa,多半情况是找不到无法运行了 在这里表示的是当前目录,就像 .. 表示上级目录一样。这个 / 表示的是目录级别的分隔符,他之前的就是目录名,./aaa/ 表明的就是 . (
转:Nutch-2.2.1脚本分析 为了对Nutch进行定制化,需要看懂Nutch的源码。 版本:2.2.1 最新版本 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~· ?123我们知道执行nutch时,会敲入./bin/nutch通过查看nutch的内容,我们知道这是一个shell脚本 ?
转:Cygwin下VI命令使用 在安装了cgywin之后,在里面会经常用到VI命令,在进行VLC编译时会用到VI的创建文件、修改文件等命令,如果你嫌麻烦,则可以在windows下直接对文件进行操作,如果想学下VI使用,下面的教程非常好。从一开始我也不习惯在cygwin下用VI,要修改个东西麻烦死了,后来了解了VI命令之后,慢慢就习惯了。【Vi编辑器的基本使用方法】转摘自 http://linux.chinaunix.
转:cygwin简单应用及Nutch之Crawler工作流程 cygwin简单应用:cygwin home 目录:ls / -- 根目录ls /cygdrive -- 查看本地操作系统的盘符,如c盘、d盘pwd -- 当前位置路径/home/zf -- 对应目录在 \cygwin\home\zf,cygwin的安
转:网页爬取页面去重策略 网上搜集到的网页去重策略:1.通过MD5生成电子指纹来判断页面是否改变2.nutch去重策略:nutch中digest是对采集的每一个网页内容的32位哈希值,如果两个网页内容完全一样,它们的digest值肯定会一样,但哪怕其中之一多或少一个空格,它们的digest值就会不一样。所以,我认为,用digest做id是一个非常不错的选择。 如果nutch在两次不同的时间抓某个网页,例如
Java实现快速排序 package com.lstc.sort;/** * 快速排序算法实现: * 时间效率:快速排序算法的运行时间依赖于划分是否平衡,即根据枢轴元素 pivot * 将序列划分为两个子序列中的元素个数,而划分是否平衡又依赖于所使用的枢轴元素。下面我们 在不同的情况下来分析快速排序的渐进时间复杂度。 * * 快速排序的最坏情况是每次进行划分时,在所得到的两个子序列中有一个子序列为空。O
WEB服务器、应用服务器、Tomcat、Servlet Web服务器:专门处理HTTP请求,提供WEB信息浏览服务应用服务器:可解析运行后台代码,为应用服务器提供商业逻辑Servlet:是一种运行在支持Java语言的服务器上的组件Tomcat是一个Servlet容器,也是具备WEB服务器能力的轻量级的应用服务器
Hive定义、Hive与HBase关系、Hive与RDBMS的关系、数据库与数据仓库的区别 1、Hive定义Hive 是建立在 Hadoop 上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。Hive 定义了简单的类 SQL 查询语言,称为 HQL,它允许熟悉 SQL 的用户查询数据。同时,这个语言也允许熟悉 MapReduce 开发者的开发自定义的 mapper 和 reduc
路由器和交换机有什么区别 首先说交换机(又名交换式集线器)作用可以简单的理解为将一些机器连接起来组成一个局域网。而路由器与交换机有明显区别,它的作用在于连接不同的网段并且找到网络中数据传输最合适的路径 ,可以说一般情况下个人用户需求不大。路由器是产生于交换机之后,就像交换机产生于集线器之后,所以路由器与交换机也有一定联系,并不是完全独立的两种设备。路由器主要克服了交换机不能路由转发数据包的不足。随着社会的发展,
NAT介绍,防火墙介绍 NAT(Network Address Translation,网络地址转换)是1994年提出的。当在专用网内部的一些主机本来已经分配到了本地IP地址(即仅在本专用网内使用的专用地址),但现在又想和因特网上的主机通信(并不需要加密)时,可使用NAT方法。这种方法需要在专用网连接到因特网的路由器上安装NAT软件。装有NAT软件的路由器叫做NAT路由器,它至少有一个有效的外部全球IP地址。这样,所
有8个一样的球,其中有一个要重一些。有一个天平,怎么称,才能2次就把重的球找出来? 分别拿3个球放在天平的两边,如果天平平衡,则再称剩余的两个球;如果天平不平衡,则把重的一边的3个球中任选2个球放在天平两边,若天平平衡,则剩余的那个球是比较重的那个,若不平衡,则天平下沉的一端是那个重一些的球
转载:通过Java API编程实现Nutch Crawler抓取数据存储到MySQL数据库 Nutch Crawler抓取数据并存储到MySQLApache Nutch是在Java平台上开发的开源网络爬虫工具。按照Nutch官方网站给出的向导,通过使用Nutch命令,可以比较容易地抓取指定种子网站的数据。不过,若是要通过它提供的Java API,以编程方式抓取数据,并存储到指定的数据存储,如MySQL,则有一些技巧或者说秘诀需要注意。经过这几天抽空进行的试验,并查询了相关资料,完
Hive简介 Hive是构建在Hadoop HDFS上的一个数据仓库,本质就是一个数据库Hadoop和hive都是基于Linux操作系统构建的Hive可以用来进行数据提取转化加载(ETL)Hive定义了简单的类似SQL查询语言,称之为HQL,它允许熟悉SQL的用户查询数据Hive是HQL解析引擎,他将SQL语句转移成M/R Job然后在Hadoop执行hive的表其实就是HDFS
hibernate对数据库进行CRUD操作 package com.hibernate.test;import java.util.List;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.Transaction;import org.hibernate.cfg.Configuration;import
hibernate中的sessionFactory接口讲解 * 1 在sessionFactory中存放这配置文件和所有的映射文件信息 * 2 sessionFactory是一个重量级的类(接口) * 3、一个数据库只能有一个sessionFactory * 4、一个配置文件只能连接一个数据库 * 5、只要创建了sessionFactory,表就创建完毕了 * 6、sessionFactory中存放的数据是共享数据,但是这个类本身是线程
使用json来定义函数,在里面可以定义多个函数 //普通方法 function add(a,b){ return a+b; } add(3,4); //使用json来定义函数,在里面可以定义多个函数 var method={ add:function(a,b){ return a+b; }, add2:function(a,b
java多态的实现主要体现在哪些方面 thinking in java3中的多态People are often confused by other, non-object-oriented features of Java, like method overloading, which are sometimes presented as object-oriented. Don’t be fooled: If it isn’t
String类型传递是值传递,char[]类型传递是引用传递 package com.lstc.test;public class TestDemo3 { String str = new String("hello"); char[] ch = { 'a', 'b' }; public static void main(String[] args) { TestDemo3 t = new TestDemo3(); t.change(t.
jQuery对象和DOM对象之间的相互转换 先是DOM对象转换为jQuery对象:首先需要引入jQuery函数库 //获取DOM对象 var username=document.getElementById("username"); alert(username.value); //转换为jquery对象 转换后就可以使用jQuery中的方法了 var $username=$(username)
JavaScript学习笔记之function函数改变form表单的action跳转到指定页面 患者名字: //通过获取JavaScript函数的方式访问printPerson.html和selectPerson.html function printPerson(){ //1:获取表单 var form1 = document.form1; //2.设置表单的action属性 form1.action="printPerson.htm
JS函数修改html的元素内容,及修改属性内容 修改元素内容: Hello 按钮 function demo(){ var nv = document.getElementById("pid"); nv.innerHTML="World"; } 修改元素标签属性: 呵呵 按钮 function demo(){ document.getElementById("aid").href=
js的局部变量和全局变量的定义形式举例 无标题文档 var n=10;m=100;//全局变量 任何地方都可以使用 function demo(){ var i=10;//局部变量 只能在当前函数中使用 x=10;//全局变量的另外一种定义形式 任何地方都可以使用 } demo(); alert(x);
SQL关于IN和EXISTS的用法和区别的比较 1.exist,not exist一般都是与子查询一起使用. In可以与子查询一起使用,也可以直接in (a,b.....)。2.exist会针对子查询的表使用索引. not exist会对主子查询都会使用索引. in与子查询一起使用的时候,只能针对主查询使用索引. not in则不会使用任何索引. 注意,一直以来认为exists比in效率高的说法是不准确的。in 是把外表和内表作ha
转:JSON字符串还原成JS原生值 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言。json是JavaScript的一个严格的子集,利用JavaScript中的一些模式来表示结构化数据。JSON语法:1.简单值 可以在JSON中表示字符串、数值、布尔值和null。(注:字符串最好用双引号括起来)。
转:JSON 浅谈 — 1.0 简介 JSON 是一种用于数据交换的文本格式,诞生于 2001 年。这种格式不仅人很容易进行阅读和编写,同时机器也很容易解析和生成,是当前十分流行的数据格式,尤其是在前端领域,在本站 D3 的教程中已经多次用到。1. JSON 是什么JSON,全称是 JavaScript Object Notation,即 JavaScript 对象标记法。这是一种轻量级 (Light-Weight)、
Struts中的拦截器学习笔记 拦截器的意义: 1、如果有一个比较复杂的逻辑,在没有拦截器的情况下,会把这些需求全部写在action的方法中 这样会导致方法的结构不好 2、会把一些重用性的内容写在拦截器中 3、要把这些重用性比较高的代码以很好的组织形式结合起来,一个拦截器是不够的,所以需要 拦截器栈 4、怎么样写一个拦截器 1、声明一个拦截器
JavaScript中通过getElementsByName访问name集合对象 1、查找给定name属性的所有元素,这个方法将返回一个节点集合,也可以称为对象集合。 2、这个集合可以作为数组来对待,length属性的值表示集合的个数。 3、因为在html页面中,name不能唯一确定一个元素,所以方法的名称为getElementsByName而不是getElementByName无标题文档
JavaScript中访问id对象.属性的方式访问属性 无标题文档 /* * 1、获取id为mytext的value属性的值 * 2、获取id为mytext的tyoe属性的值 */ var txtElement = document.getElementById('mytext'); //我们可以通过对象.属性的方式访问其属性。 alert(txtElement.value); alert(txtE
JavaScript中BOOLEAN类型之三种情景代码举例 无标题文档 /* * 一般性的true,false */ var flag = true; if(flag){ alert('truetrue.............'); }else{ alert('falsefalse...........'); } /* * 一个对象不存在,为null时的true,false */
JavaScript中函数定义的三种方式 无标题文档 /* *函数定义的一种方式 */ function aa(){ document.write("aaaa"); } 按钮 --> /* * 函数定义的一种方式之二 */ var aa2 = function(a,b){ return a*b; } alert(aa2(4,5));
linux下配置jdk环境变量的三种方法 一、修改/etc/profile文件当本机仅仅作为开发使用时推荐使用这种方法,因为此种配置时所有用户的shell都有权使用这些环境变量,可能会给系统带来安全性问题。用文本编辑器打开/etc/profile,在profile文件末尾加入:JAVA_HOME=/usr/share/jdk1.5.0_05PATH=$JAVA_HOME/bin:$PATHCLASSPATH=.:$JAVA_HOM
用PL/SQL语言编写一程序,实现按部门分段统计各个工资段的职工人数、以及各部门的工资总额 --用PL/SQL语言编写一程序,实现按部门分段--(6000以上、6000-3000,3000元以下)统计各个--工资段的职工人数、以及各部门的工资总额(工资总额中不包括奖金)--创建结果表--存储结果数据create table msg(deptno number,count1 number,count2 number,count3 number,saltotal numb
oracle数据库内置函数之数值函数、字符函数、日期函数、转换函数及其在查询语句中的运用 数值函数: 1、四舍五入函数round() from dual:一行一列组成 select round(23.4) from dual;--默认不写m表示m为0 select round(23.45,1) from dual;--1表示保留小数点后一位,那么是小数点的第二位四舍五入 select round(23.45,-1) from dual;---1表示小数点前一位四舍五入取整,前一
什么是ODBC ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给OD
转:include、jsp:forward等jsp中常用的标签和指令 1、include指令 作用:把多个文件中需要共享的代码放在单独的文件中,然后在需要的时候使用该指令引入这个文件。典型的应用,把网站的头部和版权信息放在单独的文件中,在其他文件中包含这两部分。 基本的语法格式: 目标文件"%> file属性指出目标文件。 例:把index.jsp和register.jsp中的共同部分做成单独的文件heade
利用oracle的游标为员工涨工资,从最低工资涨起每人涨10%,但工资总额不能超过5万元 --为员工涨工资,从最低工资涨起每人涨10%,但工资总额不能超过5万元,--请计算涨工资的人数和涨工资后的工资总额,并输出涨工资人数及工资总额--sql语句--select empno,sal from emp order by sal;--光标--循环--退出条件(1、工资总额大于5万;2、%notfound)--变量:1、初始值 2、如何得到--涨工资的人数:countEmp nu
oracle:利用游标统计每年入职的员工人数 --删除原先的表创建emp表--drop table emp;create table emp(ename varchar2(20),hiredate varchar2(20));--插入数据insert into emp values('哈哈1','1980-01-01');insert into emp values('哈哈2','1980-11-01');insert in
数组对象的初始化表达式 数组对象的初始化表达式 /* 表达式:原始表达式、初始化表达式、函数表达式、属性访问表达式 调用表达式、对象创建表达式 */ var a = [1,2]; var aa = new Array(1,2); var b=[1,,,4]; var bb = [1,undefined,undefined,4]; var c={x:1,y:2};
搜索引擎之爬虫定义和爬虫搜索网页策略 网络爬虫概述之网路爬虫定义: 网路爬虫又被称为网页蜘蛛、网络机器人,是一种按照一定规则自动 抓取万维网的程序或脚本、 特点是:一定的规则、自动抓取、网络资源、程序或脚本网络爬虫概述之网页搜索策略: 广度优先搜索: 在完成当前层次的搜索之后才进行下一层次的搜索。认为与初始URL在一定链接距离内的网页具有主题相关性的概率阅读 最佳优先搜索
转:java中include动作和include指令的区别 include指令和include动作都能实现将外部文档包含到JSP文档中的功能,名称也很相似,非常容易混淆。include指令和include动作到底有什么分别,哪一种方式会更好呢?1.include指令 include可以在JSP页面转换成Servlet之前,将JSP代码插入其中。它的主要优点是功能强大,所包含的代码可以含有总体上影响主页面的JSP构造,比如属性、方法的定义和文档
利用带参数的游标来传入指定的部门以此查出这个部门的所有员工的姓名 --查询某个部门中员工的姓名--set serveroutput ondeclare--定义带参数的游标cursor cemp(dno number) is select ename from emp where deptno=dno;pename emp.ename%type;begin --打开光标 open cemp(10);--10号部门 loop -
oracle中游标的属性和修改默认游标的大小 /*1、光标的属性%found %notfound%isopen 判断光标是否打开%rowcount 影响的行数2、光标数的限制:默认情况下,oracle数据库只有300个光标*/--set serveroutput ondeclare--定义光标cursor cemp is select empno,empjob from emp;pempno emp.empno%typ
给员工涨工资,总裁1000,经理800,其他400 --先删除原先的表empdrop table emp;--创建表empcreate table emp(ename varchar2(20),empjob varchar2(20),sal number);--select * from emp;--为表输入数据insert into emp values('smith','clerk',800);i
oracle之光标(游标)介绍 --一个具体的光标--定义光标cursor c1 is select ename from emp;--打开光标open c1;--取一行光标的值:--含义是从c1这个光标中取一条记录赋值给penamefetch c1 into pename;--(取一行到变量中)--关闭光标close c1;--(关闭游标释放资源)--使用PLSQL给
oracle游标:查询并打印员工的姓名和薪水 --查询并打印员工的姓名和薪水--set serveroutput on/*1、光标的属性 %found:如果取到了记录就是true否则是false; %notfound:*/declare--定义一个光标cursor cemp is select ename,sal from emp;--为光标定义对应的变量pename emp.ename%type;
PL/SQL学习笔记 默认情况下oracle的输出开关是关闭的,所以出现虽然程序报告我们说程序运行成功了但是我们却没有看到任何输出结果,所以我们要手动打开oracle的输出开关:set serveroutput onPL/SQL (Procedure Language/SQL):是oracle对sql语言的过程性扩展,是面向过程的语言,比面向过程语言要简单、高效、灵活。不同数据库的SQL扩展
JavaScript学习笔记之数据类型和("32"+32)和("32"-32)输出结果 JavaScript有6中数据类型,有5种原始数据类型和一种对象类型 原始类型:number(数字)、string(字符串)、boolean(布尔值)、null()、undefined object 对象:Function、Array、Date ...无标题文档 var num=32; num="This is a string"; var
JavaScript学习笔记之类型之间的判断比较 JavaScript学习笔记:巧用+/-规则转换类型,如果num是一个字符串想把它转换为数字可以:num-0如果num是一个数字想把它转换为字符串可以:num+''"1.23" == 1.23 //如果==2边一边是字符串一边是数字,会尝试把字符串转为数字进行比较0 == falsenull ==undefinednew Object() == new Object()
PL/SQL语句学习之使用while、loop和for三种循环打印数字的1-10 --使用while循环打印数字的1-10--set serveroutput ondeclare --定义循环变量赋初值为1 pnum number := 1;begin while pnum<=10 loop --循环体 dbms_output.put_line(pnum); --使得该变量+1
oracle实现查询每一个部门的员工工资排在前三的员工的基本信息详细举例 --先删除原先存在的表:drop table emp;--创建表empcreate table emp( deptno number, ename varchar2(20), sal number); --插入数据--部门1的员工信息insert into emp values(1,'王嘻嘻1',15000);insert into emp val
oracle的引用型变量和记录型变量程序举例 --引用型变量--打开oracle的输出口--set serveroutput ondeclare --定义引用型变量,查询并打印1232的姓名和薪水 --pename varchar2(20);--这2句和下面的2句效果一致 --psal number; pename emp.ename%type; psal emp.sal%type;begi
oracle存储函数之在应用程序中使用存储函数输出指定用户的基本信息 第一步,创建表和数据,省略第二部创建存储过程:如下--存储函数:查询某个员工的年收入create or replace function queryempincome(eno in number)return numberas --定义变量保存员工的薪水和奖金 psal emps.sal%type;--员工的月薪,类型和emps表的sal字段类型一致 pcom
转:oracle 存储过程详细介绍(创建,删除存储过程,参数传递等) 认识存储过程和函数 存储过程和函数也是一种PL/SQL块,是存入数据库的PL/SQL块。但存储过程和函数不同于已经介绍过的PL/SQL程序,我们通常把PL/SQL程序称为无名块,而存储过程和函数是以命名的方式存储于数据库中的。和PL/SQL程序相比,存储过程有很多优点,具体归纳如下:* 存储过程和函数以命名的数据库对象形式存储于数据库当中。存储在数据库中的优点是很明显的,因为代码不保存
oracle存储过程--在应用程序中访问存储过程程序完整举例 认识存储过程和函数 存储过程和函数也是一种PL/SQL块,是存入数据库的PL/SQL块。但存储过程和函数不同于已经介绍过的PL/SQL程序,我们通常把PL/SQL程序称为无名块,而存储过程和函数是以命名的方式存储于数据库中的。和PL/SQL程序相比,存储过程有很多优点,具体归纳如下:* 存储过程和函数以命名的数据库对象形式存储于数据库当中。存储在数据库中的优点是很明显的,因为代码不保存
转:Spring使用静态工厂方法创建Bean 如何在Spring中不再使用Spring创建Bean实例,而是把Bean创建过程转移到开发者手中。1. 使用静态工厂方法创建Bean 使用静态工厂方法创建Bean实例时,class属性也必须指定,但此时class属性并不是指定Bean实例的实现类,而是静态工厂类。因为Spring需要知道是用哪个工厂来创建Bean实例。另外,还需要使用factory-method来指定静态工厂方法
java设计模式之代理模式程序举例 代理模式:所谓代理,就是一个人或者一个机构代表另一个人或者另一个机构采取行动。在一些情况下,一个客户不想或者不能够直接引用一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。代理模式是一种结构性设计模式。当客户端不想直接调用主题对象,而希望主题对象的行为前后加上预处理或者后续处理时,则可以使用代理模式。代理模式的三种角色:主题抽象类、实际主题类、代理类。主题抽象类:p
Spring的IOC、Spring对象初始化bean时机、Spring容器生命周期 IOC指的是控制反转,把对象的创建、初始化、销毁等工作都交给Spring容器。由spring容器来控制对象的生命周期。Spring对象初始化bean时机:在默认情况下,只要在Spring容器中配置了一个bean,容器在启动时就会实例化该bean,单例模式。如果在Spring配制文件时设置懒加载模式(lazy-init=”true”),在getBean时才会实例化对象。如果s
创建一个Spring的HelloWorld程序 Spring IOCIOC指的是控制反转,把对象的创建、初始化、销毁等工作都交给Spring容器。由spring容器来控制对象的生命周期。下图可以说明我们传统创建类的方式和使用Spring之后的区别:创建Java类:package com.yihai.springioc;//IOC指的是控制反转,把对象的创建、初始化、销毁等工作都//交给Spring容器。由spring容器
oracle创建存储函数:查询某个员工的年收入 --存储函数:查询某个员工的年收入create or replace function queryempincome(eno in number)return numberas --定义变量保存员工的薪水和奖金 psal emp.sal%type;--员工的月薪,类型和emp表的sal字段类型一致 pcomm emp.comm%type;--奖金begin
oracle创建一个带参数的存储过程:为指定的员工,涨100块钱的工资;并且打印涨前和涨后的薪水 --创建一个带参数的存储过程--为指定的员工,涨100块钱的工资;并且打印涨前和涨后的薪水/* begin raisesalary(6755); raisesalary(4456); commit();//这里提交,所以说我们一般不会在存储过程或者存储函数中写提交, end; /*/--host cls--先创建表emp和插入数据,显示表的结
转:40个Java集合面试问题和答案 1.Java集合框架是什么?说出一些集合框架的优点?每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector、Stack、HashTable和Array。随着集合的广泛使用,Java1.2提出了囊括所有集合接口、实现和算法的集合框架。在保证线程安全的情况下使用泛型和并发集合类,Java已经经历了很久。它还包括在Java并发包中,阻塞接口以及它们的实现。集合框架的部分优点如下:
oracle学习之第一个存储过程:打印Hello World 数据库对象:表、视图、索引、序列、同义词、存储过程、存储函数存储过程:指的是存储在数据库中供所有用户程序调用的子程序叫存储过程、存储函数存储过程和存储函数的相同点:完成特定功能的程序存储过程和存储函数的区别:是否用return语句返回值(存储函数可以,但是存储过程不行)--第一个存储过程:打印Hello World/* 调用存储过程2种方式: 1、ex
Java中常见的注解 Java中常见的注解1、JDK自带的注解@Override @Deprecated @Suppvisewarnings常见第三方注解Spring:@Autowired @Service @RepositoryMybatis:@InsertProvider @UpdateProvider @Options注解的分类:按照运行机制分: 源码注解:注解只
转:JVM的相关知识整理和学习 JVM是虚拟机,也是一种规范,他遵循着冯·诺依曼体系结构的设计原理。冯·诺依曼体系结构中,指出计算机处理的数据和指令都是二进制数,采用存储程序方式不加区分的存储在同一个存储器里,并且顺序执行,指令由操作码和地址码组成,操作码决定了操作类型和所操作的数的数字类型,地址码则指出地址码和操作数。从dos到window8,从unix到ubuntu和CentOS,还有MAC OS等等,不同的操作系统指令集以
http请求获取到的网页源码是字节数组还是字符串? http请求获取到的网页源码是字节数组,并不是字符串。只有识别了网页所用的编码,例如utf8,将字节数组根据编码的规则,进行解码,才可以获得网页源码的字符串。编码是将字符串转换为字节数组的过程,解码是将字节数组转换成字符串的过程。
ANT介绍及ANT系统环境变量的配置 Apache Ant,是一个基于JAVA的自动化脚本引擎,脚本格式为XML。除了做JAVA编译相关任务外,ANT还可以通过插件实现很多应用的调用。默认情况下,脚本文件名为build.xml简单说来可以这么理解,如果你用记事本写JAVA程序,然后在cmd里输入javac命令编译它,但是有一天你发现每次手动输入太麻烦而且都是重复劳动,于是你下决心改变这种状况,然后学会了把javac命令写到一个
SQL Plu计算算数表达式及SQL Plus下清屏快捷键 用PL/SQL数据库语言计算sqrt(58+25*3+(19-9)^2)的值SQL Plus下清屏快捷键是host cls或者 clear screenPL/SQL计算乘方是2个*号:
转:oracle数据库里dual表是什么表? 这几天一直在研究oracle,常常会用到dual这个系统表,dual表到底是一个什么表?带着疑问google了一下,现在总结一下:DUAL是Oracle与数据字典一起自动创建的一个表,它只有一列:DUMMY,其数据类型为:VARCHAR2(1)。DUAL中只有一行数据:'X'。DUAL属于SYS模式,但所有用户都可以使用DUAL名称访问它。用SELECT计算常量表达式、伪列等值时常用该表,因为
转:使用Nutch和Solr抓取并索引网页 Nutch和Solr是两个由Apache成员创建的实用工具,你可以使用Nutch抓取网页,使用Solr索引你得到的数据。除了索引各类网站,这些工具还有很多其他功能,本文将不涉及这些,而是一篇针对如何使用Nutch抓取网页并使用Solr索引并搜索你抓取的数据的新手指南。本文将不会讨论它们如何工作的大量细节,而会告诉你如何运行一个爬虫和建立索引,我将假设你已经搭建好了tomcat服
转:Oracle数据库的驱动包ojdbc*.jar之间的差别 classes12.jar,ojdbc14.jar,ojdbc5.jar和ojdbc6.jar的区别,之间的差异 在使用Oracle JDBC驱动时,有些问题你是不是通过替换不同版本的Oracle JDBC驱动来解决的?最常使用的ojdbc14.jar有多个版本,classes12.jar有多个版本你了解吗? 连接类型:1、JDBC OCI: oci是or
java语言测试连接oracle数据库 package com.yihai.jdbc;import java.sql.Connection;import java.sql.DriverManager;/** * 测试连接oracle数据库 * @author wpc * */public class JdbcSuccess { //驱动,URL,用户名,密码 private static final String
oracle易错易混知识点小记 为什么我不能用SYS用户登陆SQL*PLUS,用SYSTEM用户可以登录,答:可以先登陆system用户再切换sys用户切换代码如下:conn sys/“密码” as sysdba在查询时,oracle可以指定列的别名,但是别名不要加引号,否则报错!在oracle数据库中,"||"是连接操作符,它用来连接两个字符串,就像java语言中用来连接两个字符串的加号"+"
oracle学习笔记:;连接查询(内连接的等值连接和非等值连接,外链接的左外、右外及全外链接) 连接查询(内连接,外链接,全连接),1、其中内连接分为等值连接和非等值连接,等值连接就是连接条件中使用"="连接2个表,而不等值连接就是指连接条件中使用> >= between ... and... in等。通常这种方式需要和其他等值运算一起使用。内连接中的关键字"INNER JOIN" 可以直接写成"JOIN",系统会把"JOIN"识别成内连接。但是"ON" 关键字不能省略。2、外链接
转:hibernate与mybatis异同与比较(涵盖网上各个版本,清晰明了) 一、序言 最近一直用mybatis做开发,以前用过hibernate,能感受到一些它们在使用上的区别,不过总想抽出时间来好好比较比较弄弄清楚它们各自的优劣,以便更好进行选择和深入的了解。 网上也看了很多资料,结合自己的使用体会,粗率地概括和总结了一下,以供大家参考。二、具体运用上的不同1、所需的jar包Mybatis:只需要3个(mybatis-3.1.
oracle的字符类型varchar2为什么要加上2呢? varchar2是oracle提供的独特的数据类型,oracle保证在任何版本中该数据类型向上向下兼容,但不保证varchar,这是因为varchar是标准sql提供的数据类型,有可能随着sql标准的变化而改变 ,varchar和varchar2在旧版本里面有些差异,在新版本里面varchar是varchar2的别名,不用关心,但是为了兼容起见,还是建议用varchar2。