centos7防火墙导致java程序访问mongodb3.0.1时报错的问题分析
环境描述:
数据库:mongodb3.0.1
数据库系统:centos7,(虚拟机,最小安装)
数据库驱动:mongo-Java-driver-3.0.0.jar
问题描述:shell环境下用mongo客户端程序能正常连接mongod,但java程序始终报错。
查看centos7的官方文档,知道centos7最小安装默认只安装防火墙的动态配置规则服务(firewalld),静态配置规则服务(iptables与ip6tables)需要另行安装。
1、关闭firewall:
systemctl stop firewalld.service #停止firewall systemctl disable firewalld.service #禁止firewall开机启动
2、安装iptables防火墙
yum install iptables-services #安装
修改配置:vi /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 27017 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
systemctl start iptables.service #启动防火墙
systemctl stop iptables.service #停止防火墙
systemctl restart iptables.service #重启防火墙
systemctl status iptables.service #查看防火墙状态
systemctl enable iptables.service #设置防火墙开机启动
以上所述是小编给大家介绍的centos7防火墙导致java程序访问mongodb3.0.1时报错的问题分析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
相关推荐
-
mongodb聚合_动力节点Java学院整理
今天跟大家分享一下mongodb中比较好玩的知识,主要包括:聚合,游标. 一:聚合 常见的聚合操作跟sql server一样,有:count,distinct,group,mapReduce. <1> count count是最简单,最容易,也是最常用的聚合工具,它的使用跟我们C#里面的count使用简直一模一样. <2> distinct 这个操作相信大家也是非常熟悉的,指定了谁,谁就不能重复,直接上图. <3> group 在mongodb里面做group操作有点小
-
java操作mongodb时,对象bean和DBObject相互转换的方法(推荐)
如下所示: package com.iqbon.spider.util; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.util.Date; import org.apache.commons.beanutils.BeanUtils; import com.mongodb.BasicDBObject; import com.mongodb.DBObje
-
Java连接MongoDB进行增删改查的操作
Java连接MongoDB进行增删改查的操作 1.创建数据库的连接,进行增删改查 (分别为接口和实现类) package com.dao; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mo
-
Mongodb3.0.5 副本集搭建及spring和java连接副本集配置详细介绍
Mongodb3.0.5 副本集搭建及spring和java连接副本集配置详细介绍 一.基本环境: mongdb3.0.5数据库 spring-data-MongoDB-1.7.2.jar mongo-Java-driver-3.0.2.jar Linux-redhat6.3 tomcat7 二.搭建mongodb副本集: 1. 分别在三台linux系统机上安装mongodb,(为避免和机器上原有的mongodb端口冲突,这里设为57017): 192.168.0.160 192.168.0.
-
浅谈java实现mongoDB的多条件查询
需求:在mongDB客户端,我们很容易实现多条件查询,那么使用java操作时怎么实现呢? 客户端代码: db.url.find({index:4,status:0,url:{$regex:"2016"}}).limit(1) java代码主要用到DBObject BasicDBObject doc5 = new BasicDBObject(); doc5.put("index", 3); doc5.put("status", 0); //doc5
-
centos7防火墙导致java程序访问mongodb3.0.1时报错的问题分析
环境描述: 数据库:mongodb3.0.1 数据库系统:centos7,(虚拟机,最小安装) 数据库驱动:mongo-Java-driver-3.0.0.jar 问题描述:shell环境下用mongo客户端程序能正常连接mongod,但java程序始终报错. 查看centos7的官方文档,知道centos7最小安装默认只安装防火墙的动态配置规则服务(firewalld),静态配置规则服务(iptables与ip6tables)需要另行安装. 1.关闭firewall: systemctl st
-
如何在Java程序中访问mysql数据库中的数据并进行简单的操作
在上篇文章给大家介绍了Myeclipse连接mysql数据库的方法,通过本文给大家介绍如何在Java程序中访问mysql数据库中的数据并进行简单的操作,具体详情请看下文. 创建一个javaProject,并输入如下java代码: package link; import java.sql.*; /** * 使用JDBC连接数据库MySQL的过程 * DataBase:fuck, table:person: * 使用myeclipse对mysql数据库进行增删改查的基本操作. */ public
-
最有价值的50道java面试题 适用于准入职Java程序员
下面的内容是对网上原有的Java面试题集及答案进行了全面修订之后给出的负责任的题目和答案,原来的题目中有很多重复题目和无价值的题目,还有不少的参考答案也是错误的,修改后的Java面试题集参照了JDK最新版本,去掉了EJB 2.x等无用内容,补充了数据结构和算法相关的题目.经典面试编程题.大型网站技术架构.操作系统.数据库.软件测试.设计模式.UML等内容,同时还对很多知识点进行了深入的剖析,例如hashCode方法的设计.垃圾收集的堆和代.Java新的并发编程.NIO.2等,相信对准备入职的Ja
-
详解centos6和centos7防火墙的关闭
CentOS6.5查看防火墙的状态: [zh@localhost ~]$service iptable status 显示结果: [zh@localhost ~]$service iptable status Redirecting to /bin/systemctl status iptable.service iptable.service Loaded: not-found (Reason: No such file or directory) Active: inactive (dead
-
java程序员如何编写更好的单元测试的7个技巧
测试是开发的一个非常重要的方面,可以在很大程度上决定一个应用程序的命运.良好的测试可以在早期捕获导致应用程序崩溃的问题,但较差的测试往往总是导致故障和停机. 虽然有三种主要类型的软件测试:单元测试,功能测试和集成测试,但是在这篇博文中,我们将讨论开发人员级单元测试.在我深入讲述具体细节之前,让我们先来回顾一下这三种测试的详细内容. 一.软件开发测试的类型 单元测试用于测试各个代码组件,并确保代码按照预期的方式工作.单元测试由开发人员编写和执行.大多数情况下,使用JUnit或TestNG之类的测试
-
Java程序员容易犯的10大低级错误
本文根据java开发人员在编码过程中容易忽视或经常出错的地方进行了整理,总结了十个比较常见的低级错误点,方便大家学习. 1.不能用"=="比较两个字符串内容相等. 2. 对list做foreach循环时,循环代码中不能修改list的结构. 3. 日志和实际情况不一致;捕获异常后没有在日志中记录异常栈. 4. 魔鬼数字. 5. 空指针异常. 6. 数组下标越界. 7. 将字符串转换为数字时没有捕获NumberFormatException异常. 8. 对文件.IO.数据库等资源进行操作后
-
win2003防火墙导致ftp无法使用的解决方法
在windows2003开启防火墙后导致系统无法通过ftp访问其他服务器服务器 使用资源管理器打开ftp服务器直接提示无权限,使用FileZilla客户端提升应用层网关等限制信息,说明是windows防火墙导致的. 打开注册表在中 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ALG\ISV\{6E590D61-F6BC-4dad-AC21-7DC40D304059} 打开键值PreferExternalManifest 修改为disable 如果开启防火墙那么仅仅
-
Java程序员常犯的五个错误
下面针对每一个错误用文字说明结合代码详解的方式展示给大家,具体内容如下: 1. Null 的过度使用 避免过度使用 null 值是一个最佳实践.例如,更好的做法是让方法返回空的 array 或者 collection 而不是 null 值,因为这样可以防止程序抛出 NullPointerException.下面代码片段会从另一个方法获得一个集合: List<String> accountIds = person.getAccountIds(); for (String accountId :
-
java程序运行时内存分配详解
一. 基本概念 每运行一个java程序会产生一个java进程,每个java进程可能包含一个或者多个线程,每一个Java进程对应唯一一个JVM实例,每一个JVM实例唯一对应一个堆,每一个线程有一个自己私有的栈.进程所创建的所有类的实例(也就是对象)或数组(指的是数组的本身,不是引用)都放在堆中,并由该进程所有的线程共享.Java中分配堆内存是自动初始化的,即为一个对象分配内存的时候,会初始化这个对象中变量.虽然Java中所有对象的存储空间都是在堆中分配的,但是这个对象的引用却是在栈中分配,也就是说
随机推荐
- JavaScript面象对象设计
- iis8.5显示ASP的详细错误信息500 内部服务器错误解决方法
- Oracle客户端 NLS_LANG 的设置方法
- ADO.Net对oracle数据库操作的实例代码
- javascript使用 concat 方法对数组进行合并的方法
- Python匹配中文的正则表达式
- Python+Socket实现基于TCP协议的客户与服务端中文自动回复聊天功能示例
- Go语言基础学习教程
- Windows下使用Dev-C++开发基于pthread.h的多线程程序实例
- Android编程开发音乐播放器实例
- PHP记录和读取JSON格式日志文件
- 支持IE,Firefox的javascript 日历控件
- MyBatis入门程序
- 深入理解Java Socket通信
- 详解百度百科目录导航树小插件
- 判断js对象是否拥有某一个属性的js代码
- Android组件必学之TabHost使用方法详解
- VC实现屏幕截词功能的方法详解
- 新版Android studio导入微信支付和支付宝官方Demo问题解决大全
- c#中设置快捷键