java成长小路
看透了的风景
懂得自己的底线.
展开
-
java类加载器、双亲委派以及沙箱安全
java自带三种加载器bootstrap启动类加载器默认加载jdk中的rt.jar包中的class文件,比如Object 、Array、String等等,这就是我们安装jdk后直接能使用这些类的原因,启动类加载器使用的是C++语音写的测试: @Test public void classLoaderTest() { Object object = new Object(); System.out.println(object.getClass().getCl原创 2020-06-10 15:03:10 · 219 阅读 · 0 评论 -
Redis在linux环境下的安装和部署
我选择安装在usr/local/redis目录下cd use/local/mkdir rediscd redis下载tar安装包wget http://download.redis.io/releases/redis-5.0.2.tar.gz解压tar文件 进入redis-5.0.2文件夹,并编译tar xzf redis-5.0.2.tar.gzcd redis-5.0.2make这是后已经安装完毕运行:./src/redis-server运行带有配置文件的 命令 ./原创 2020-06-01 16:17:40 · 225 阅读 · 0 评论 -
注解加反射获取包名下的类
在项目中会经常用到反射获取指定的类,看了元注解之后有了更好的实现方式记录一下 以后可以使用:import java.lang.annotation.*;@Documented@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.TYPE)public @interface Handler { int command();}想要获取的类@Handler(command = 1)public class FightHandl原创 2020-05-18 17:18:36 · 754 阅读 · 0 评论 -
简单 的netty服务端
public void start() throws Exception { EventLoopGroup bossGroup = new NioEventLoopGroup(); EventLoopGroup workerGroup = new NioEventLoopGroup(); ServerBootstrap serverBootstrap = new ServerBootstrap(); ServerBootstrap b = .原创 2020-05-13 15:36:02 · 310 阅读 · 0 评论 -
简单的Netty客户端
public static int SERVER_PORT = 9000; public static String ip = "127.0.0.1"; private void start() { EventLoopGroup eventExecutors = new NioEventLoopGroup(); try { Bootstrap bootstrap = new Bootstrap(); ...原创 2020-05-13 15:31:38 · 177 阅读 · 0 评论 -
实现一个根据权重获取随机物品的功能
实现一个根据权重获取随机物品的功能 //Object要返回的对象 Integer是自己的权重 private Object weightRamdom(HashMap<Object, Integer> map) { int weightNum = 0; for (Map.Entry<Object, Integer> entry : map.entrySet()) { weightNum += entry.getValu原创 2020-05-13 15:30:11 · 308 阅读 · 0 评论 -
浅谈protocol buffer的使用
浅谈protocol buffer的使用 1.环境windows 2.需要的软件 protoc.exe protoc-2.5.0 3.首先配置.proto文件,此文件可以为记事本编写 官方给出的有示例文档package protobuf; option java_package = "com.sq.protobuf"; option java_outer_classname = "Fi原创 2017-04-22 18:28:28 · 411 阅读 · 0 评论 -
Mina 简单案例(客户端与服务端)
Mina封装好了很完善的方法,代码注释的很清楚直接上代码: // 创建一个非阻塞的Server端socket,用NIO IoAcceptor acceptor = new NioSocketAcceptor(); // 创建接受数据的过滤器, 处理最简单的字符串传输,Mina 已经为我们提供了原创 2017-05-04 16:22:53 · 507 阅读 · 0 评论 -
遍历HashMap的四种方法
[java] view plain copy print?public static void main(String[] args) { Map<String, String> map = new HashMap<String, String>(); map.put(”1”, “value1”); map.put(”2”, “value2”); map.put(”3转载 2017-05-02 18:53:26 · 363 阅读 · 0 评论 -
protobuf文件编写
1. 简单介绍protobuf文件:就是定义你要的消息(类似Java中的类)和消息中的各个字段及其数据类型(类似java类中的成员变量和他的数据类型)2. Protobuf消息定义消息由至少一个字段组合而成,类似于C语言中的结构。每个字段都有一定的格式。字段格式:限定修饰符① | 数据类型② | 字段名称③ | = | 字段编码值④ | [字段默认值⑤]1)限定修饰符包含 required\opt转载 2017-05-02 10:22:59 · 1047 阅读 · 0 评论 -
java mina的使用
// 创建一个非阻塞的Server端socket,用NIO IoAcceptor acceptor = new NioSocketAcceptor(); // 创建接受数据的过滤器, 处理最简单的字符串传输,Mina 已经为我们提供了TextLineCodecFactory // 编解码器工厂来对字符串进行编解码处理。 acceptor.getFilterChain(原创 2017-04-29 14:29:37 · 3111 阅读 · 0 评论