201111:实体类上注解-zk配置部署-zk启动报错-zk版本-cmd文件中停止命令-数据库插入当前时间-duceap中修改方法问题-String数组怎么定义

一. IllegalArgumentException异常

异常信息

java.lang.IllegalArgumentException: Not a managed type: class com.dragonsoft.

实体类上加注解:@Entity

二. zookeeper配置部署

可以从 https://zookeeper.apache.org/releases.html 下载ZooKeeper,目前最新的稳定版本为 3.4.8 版本,用户可以自行选择一个速度较快的镜像来下载即可。

下载并解压ZooKeeper软件压缩包后,可以看到zk包含以下的文件和目录:

  • bin目录
    zk的可执行脚本目录,包括zk服务进程,zk客户端,等脚本。其中,.sh是Linux环境下的脚本,.cmd是Windows环境下的脚本。
  • conf目录
    配置文件目录。zoo_sample.cfg为样例配置文件,需要修改为自己的名称,一般为zoo.cfg。log4j.properties为日志配置文件。
  • lib
    zk依赖的包。
  • contrib目录
    一些用于操作zk的工具包。
  • recipes目录
    zk某些用法的代码示例

运行配置

上面提到,conf目录下提供了配置的样例zoo_sample.cfg,要将zk运行起来,需要将其名称修改为zoo.cfg。
打开zoo.cfg,可以看到默认的一些配置。

  • tickTime
    时长单位为毫秒,为zk使用的基本时间度量单位。例如,1 * tickTime是客户端与zk服务端的心跳时间,2 * tickTime是客户端会话的超时时间。
    tickTime的默认值为2000毫秒,更低的tickTime值可以更快地发现超时问题,但也会导致更高的网络流量(心跳消息)和更高的CPU使用率(会话的跟踪处理)。
  • clientPort
    zk服务进程监听的TCP端口,默认情况下,服务端会监听2181端口。
  • dataDir
    无默认配置,必须配置,用于配置存储快照文件的目录。如果没有配置dataLogDir,那么事务日志也会存储在此目录。

启动

在Windows环境下,直接双击zkServer.cmd即可。在Linux环境下,进入bin目录,执行命令

./zkServer.sh start

这个命令使得zk服务进程在后台进行。如果想在前台中运行以便查看服务器进程的输出日志,可以通过以下命令运行:

./zkServer.sh start-foreground

执行此命令,可以看到大量详细信息的输出,以便允许查看服务器发生了什么。

使用文本编辑器打开zkServer.cmd或者zkServer.sh文件,可以看到其会调用zkEnv.cmd或者zkEnv.sh脚本。zkEnv脚本的作用是设置zk运行的一些环境变量,例如配置文件的位置和名称等。

连接

如果是连接同一台主机上的zk进程,那么直接运行bin/目录下的zkCli.cmd(Windows环境下)或者zkCli.sh(Linux环境下),即可连接上zk。
直接执行zkCli.cmd或者zkCli.sh命令默认以主机号 127.0.0.1,端口号 2181 来连接zk,如果要连接不同机器上的zk,可以使用 -server 参数,例如:

bin/zkCli.sh -server 192.168.0.1:2181

三. 使用Shell命令查看zookeeper版本

echo stat|nc localhost 2181

执行结果

jiafeimao@jiafeimaodeMacBook-Pro:~$     echo stat|nc localhost 2181
Zookeeper version: 3.4.6-1569965, built on 02/20/2014 09:09 GMT
Clients:
 /127.0.0.1:58098[0](queued=0,recved=1,sent=0)
 
Latency min/avg/max: 0/0/0
Received: 2
Sent: 1
Connections: 1
Outstanding: 0
Zxid: 0x4d6c
Mode: standalone
Node count: 176

四. cmd文件中停止命令

@pause

五. windows环境下安装zookeeper教程详解(单机版)

windows环境下安装zookeeper教程详解参考文章

六. 异常UnsupportedClassVersionError:

UnsupportedClassVersionError: org/apache/zookeeper/server/quorum/QuorumPeerM

解决:java的环境变量配置为1.8的版本

七. 往数据库插入当前时间

insert into test (creatime) values (sysdate)

八. String数组怎么定义

String items[] = {};

九. duceap中修改方法问题

平台update修改如果实体类中有字段为null会出现出错,下面的方法参数可以避免这个问题,把修改了的属性的放到后面的参数里

Message update = messageRepository.update(message,"messageTitle","lostTime");

你可能感兴趣的:(201111:实体类上注解-zk配置部署-zk启动报错-zk版本-cmd文件中停止命令-数据库插入当前时间-duceap中修改方法问题-String数组怎么定义)