项目文件截图

Java运行截图

 package domain;

 import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner; import org.apache.hadoop.hbase.client.Put; import com.sun.corba.se.spi.orbutil.fsm.Guard.Result;
import com.sun.org.apache.xml.internal.security.keys.content.KeyValue; import hbase.dao.HBaseDAO;
import hbase.dao.imp.HBaseDAOImp; public class Test { public static void main(String[] args) {
HBaseDAOImp hBaseDAOImp=new HBaseDAOImp();
try
{
int n=0; Scanner in = new Scanner(System.in);
while(n!=20)
{ System.out.println("**********欢迎使用HBase系统××××××××××");
System.out.println("1.创建指定的数据库");
System.out.println("2.列出 Hbase 所有的表的信息");
System.out.println("3.向数据库表中插入信息");//添加信息
System.out.println("4.查看指定数据库表的信息");//查看信息
System.out.println("5.清空指定的表的所有记录数据");
System.out.println("6.统计数据库中数据表的行数");
System.out.println("7.向指定数据库表中插入某一行全部信息");
System.out.println("8.查看指定数据库表中某一行全部信息");
System.out.println("9.删除指定数据库表中某一行的指定行健的的信息");
System.out.println("10.修改指定数据库表中某一行的指定列的信息");
System.out.println("############多条件查询###########");
System.out.println("11.按照两列的值进行查询");
System.out.println("20.退出");
System.out.println("请选择:");
if(in.hasNextInt())
{
n=in.nextInt();
}
else
{
System.out.println("输入的不是整数,请重新输入:");
continue;
}
switch(n)
{
case 1:{
System.out.println("输入你要创建的数据库的名称");
String tablename=in.next();
System.out.println("输入你要创建的数据库的列族名称");
String field=in.next();
String[] fields= {field};
//String[] fields= {"name","num","password"};
hBaseDAOImp.createTable(tablename, fields); break;
}
case 2:{
hBaseDAOImp.listTables();
break;
}
case 3:{
String tablename=null;
tablename="zythbase";
String rowKey=null;
rowKey="zyt001";
String family=null;
family="zyt";
String quailifer=null;//列的名称
quailifer="name";
String value=null;
value="张运涛";
hBaseDAOImp.insert(tablename, rowKey, family, quailifer, value);
break;
}
case 4:{
System.out.println("输入你要查询的数据库的名称");
String tablename=in.next();
hBaseDAOImp.getData(tablename);
break;
}
case 5: {
System.out.println("输入你要清空的数据库的名称");
String tablename=in.next();
hBaseDAOImp.clearRows(tablename);
break;
} case 6:{
System.out.println("输入你要统计的数据库的行数名称");
String tablename=in.next();
hBaseDAOImp.countRows(tablename); break;
}
case 7:{
System.out.println("输入你要插入的数据库的名称");
String tablename=in.next();
System.out.println("输入你要插入的此行数据的的行健");
String hqname=in.next();
System.out.println("输入你要插入的此行数据的的列族名称");
String lzname=in.next(); List<Put> list = new ArrayList<Put>();
Put put = new Put(hqname.getBytes());//参数为行键的值
put.add(lzname.getBytes(), "name".getBytes(), "啊是的飒飒大家阿诗丹顿所".getBytes()) ;//参数为列族的名称,列的名称,列对应的值
list.add(put) ; put.add(lzname.getBytes(), "addr".getBytes(), "shanghai1".getBytes()) ;
list.add(put) ;
put.add(lzname.getBytes(), "age".getBytes(), "30".getBytes()) ;
list.add(put) ;
put.add(lzname.getBytes(), "tel".getBytes(), "13567882341".getBytes()) ;
list.add(put) ;
hBaseDAOImp.save(list, tablename);//参数为数据库的名称
System.out.println("数据插入成功!!!!"); break;
}
case 8:{
System.out.println("输入你要查看的数据库的名称");
String tablename=in.next();
System.out.println("输入你要查看的此行数据的的行健");
String hqname=in.next();
System.out.println("数据查询结果如下!!!!");
hBaseDAOImp.showlistOneRow(tablename, hqname); break;
}
case 9:{
System.out.println("输入你要删除的数据库的名称");
String tablename=in.next();
System.out.println("输入你要删除的此行数据的的行健");
String hqname=in.next(); hBaseDAOImp.deleteRow(tablename, hqname);
System.out.println("数据删除成功!!!!"); break;
}
case 10:{
System.out.println("输入你要修改的数据库的名称");
String tablename=in.next();
System.out.println("输入你要修改的此行数据的的行健");
String hqname=in.next();
System.out.println("输入你要修改的此行数据的列族");
String column=in.next();
System.out.println("输入你要修改的此行数据的列名");
String lieming=in.next();
System.out.println("输入你要修改后的值");
String val=in.next(); hBaseDAOImp.modifyData(tablename, hqname, column, lieming, val);
System.out.println("数据修改完成!!!!"); break;
}
case 11:{
/*System.out.println("输入你要查询的数据库的名称");
String tablename=in.next();*/
/*System.out.println("输入你要修改的此行数据的的行健");
String hqname=in.next();
System.out.println("输入你要修改的此行数据的列族");
String column=in.next();*/ hBaseDAOImp.QueryByCondition2("Student"); break;
}
case 20:break;
default:System.out.println("输入错误,请重新输入");break;
}
} }
catch (Exception e)
{
e.printStackTrace();
}
} }

Javaweb运行截图

全部源代码:https://pan.baidu.com/s/1gsgFQ1RpbtTb43_xoOAiAA

HBASE的Java与Javaweb(采用MVC模式)实现增删改查附带源码的更多相关文章

  1. 使用jdbc实现简单的mvc模式的增删改查

    Mvc模式设计: 视图:添加界面(addUser.jsp),修改界面(updateUser.jsp),显示页面(allUser.jsp) 控制器:添加信息控制器(AddUserServlet),修改信 ...

  2. java springboot整合zookeeper入门教程(增删改查)

    java springboot整合zookeeper增删改查入门教程 zookeeper的安装与集群搭建参考:https://www.cnblogs.com/zwcry/p/10272506.html ...

  3. 关于MVC工厂模式的增删改查sql存储过程

    这里MVC中用到了反射,工厂,泛型,接口 在搭建框架的时候,除了MVC的三层以外,还有泛型的接口层和工厂层 下面是dal层调用sql存储过程,增删改查,dal层继承了接口层,实现了接口层里面的方法 1 ...

  4. EasyUI + Spring MVC + hibernate实现增删改查导入导出

    (这是一个故事--) 前言 作为一个JAVA开发工程师,我觉得最基本是需要懂前端.后台以及数据库. 练习的内容很基础,包括:基本增删改查.模糊查询.分页查询.树菜单.上传下载.tab页 主管发我一个已 ...

  5. java程序设计课期中考试——数据库的增删改查和简单的js界面

    首先是设计思路,对于数据库的增删改查,我们借助Ecilipse来进行前端和后端的编写.Ecilipse是可以进行java web项目的操作的. 前端,我们选择用使用jsp,所谓的jsp就是可以嵌入其他 ...

  6. 【ASP.NET MVC】jqGrid 增删改查详解

    1   概述 本篇文章主要是关于JqGrid的,主要功能包括使用JqGrid增删查改,导入导出,废话不多说,直接进入正题. 2   Demo相关 2.1   Demo展示 第一部分 第二部分 2.2 ...

  7. EasyUI +MVC +EF实现增删改查

    OA项目的框架已经搭建好了,接下来就是在这个框架下完成相应的业务的编码,接下来实现UserInfo页面的增删改查. 1.首先先谈一下遇到的一个框架上的问题:提示EF版本不一致之类的问题,主要是解决方案 ...

  8. Java连接MySQL数据库,并进行增删改查

    1.具体的代码实现 import java.sql.*; public class DatabaseService { /** * Create Connection * * @param dbtyp ...

  9. Java 实现一个 能够 进行简单的增删改查的 超市管理系统

    1. 首先编写一个 Fruitltem 的商品类, 描述 商品的基本信息. 代码如下: 保证详细, 运行的起来, 有什么 问题也可以评论留言. /* * 自定义类, 描述商品信息 * * 商品的属性: ...

随机推荐

  1. 百度brpc 压测工具rpc_press解析

    1. 背景 昨天看到一段brpc中的压测代码rpc_press, 看着不错.整理一下. 发压工具的难点不是发送请求,而是要注意下面的2点: 保证能发出足够的qps,比如上万qps 控制发送合理的qps ...

  2. jQuery CSS 操作 - offset() 方法

    今天在一个页面需要知道jquery版本号,来决定使用什么样的方法,有以下方式可以获取到 $.fn.jquery $.prototype.jquery 这两种方式都可以获取到jquery的版本号 --- ...

  3. svn文件夹解锁批处理

    清除svn文件的bat脚本整理 从svn上检出的项目,不在myeclipse工具中脱离svn的管辖,怎么办呢,下面有我的方法,也是借鉴别人的,用了特别好使,故推荐给大家. 首先创建一个xxx.bat文 ...

  4. 【Geek软技能】程序员,为什么写不好一份简历?

    一份好简历会是一份好工作的开端. 为什么?沧海也会遗珠   简历,是如此重要,它是获得一份满意工作的敲门砖,但不同的简历敲门的声响可不同. 但很多时候简历给人的感觉也似乎微不足道,因为没有人会真正细致 ...

  5. 每天一个linux命令:df

    1.命令简介 df (disk free) 其功能显示每个文件所在的文件系统的信息,默认是显示所有文件系统. 2.用法 df [选项]... [文件]... 3.选项   4.示例 示例1:显示磁盘使 ...

  6. exception The valid characters are defined in RFC 7230 and RFC 3986

      1.情景展示 当你使用浏览器进行问号传参与后台进行交互时,会报这个异常. tomcat控制台报错信息如下: The valid characters are defined in RFC 7230 ...

  7. np.memmap读取大文件

    Numpy中的ndarray是一种新形式的Python内建类型.因此,它可以在需要时被继承.ndarray形成了许多有用类的基础. np.memmap就是其中一种,它是内存映射文件.本质上就是使用C语 ...

  8. 摘:PC客户端 XP兼容性调查

    现象1:XP SP2下,客户端安装失败(或者启动失败) 解决方案:需要安装以下3个补丁(已经集成到安装包中) ==系统Hotfix(仅仅XP SP2需要安装): http://support.micr ...

  9. Unity应用架构设计(4)——设计可复用的SubView和SubViewModel(Part 2)

    在我们设计和开发应用程序时,经常要用到控件.比如开发一个客户端WinForm应用程序时,微软就为我们提供了若干控件,这些控件为我们提供了可被定制的属性和事件.属性可以更改它的外观,比如背景色,标题等, ...

  10. python – 基于pandas中的列中的值从DataFrame中选择行

    如何从基于pandas中某些列的值的DataFrame中选择行?在SQL中我将使用: select * from table where colume_name = some_value. 我试图看看 ...