- c# DotNetty
wangyue4
c#开发语言
对于.NET开发者来说,DotNetty是一个开源、高性能的网络库,它是对Java平台上流行的Netty异步事件驱动网络应用程序框架的一个端口。DotNetty适用于创建各种网络应用程序,如IoT(物联网)、游戏服务器以及消息传递系统等。以下是对DotNetty核心组件的简要说明:Bootstrap类——这个类用于简化创建服务器和客户端的初始化操作。对于服务器而言,通常使用ServerBootst
- 基于DotNetty实现一个接口自动发布工具 - 通信实现
液态不合群
githubwpf.net
基于DotNetty实现通信DotNetty:是微软的Azure团队,使用C#实现的Netty的版本发布。是.NET平台的优秀网络库。项目介绍OpenDeploy.Communication类库项目,是通信相关基础设施层Codec模块实现编码解码Convention模块定义约定,比如抽象的业务Handler,消息载体NettyMessage,消息上下文'NettyContext'等自定义消息格式消
- ModBus TCP/RTU 报文解析
CHHC1880
c#开发语言
ModbusTcphttps://gitee.com/szwzhsz/Modbus-TCP-client-server-DotNetty.?_from=gitee_search固定协议格式事务标识(2byte):0000,可变(递增)协议标识(2byte):0000,固定长度(2byte):0006,可变单位标识(1byte):01,固定功能码(1byte):01,可变数据(nbyte):可变功能
- .NET 跨平台RPC框架DotNettyRPC Web后台快速开发框架(.NET Core) EasyWcf------无需配置,无需引用,动态绑定,轻松使用 C# .NET 0配置使用W...
anmei1912
nettyc#后端
.NET跨平台RPC框架DotNettyRPCDotNettyRPC1.简介DotNettyRPC是一个基于DotNetty的跨平台RPC框架,支持.NET45以及.NETStandard2.02.产生背景传统.NET开发中遇到远程调用服务时,多以WCF为主。而WCF虽然功能强大,但是其配置复杂,不易于上手。而且未来必定是.NETCore的天下,WCF暂不支持.NETCore(只有客户端,无法建立
- 网络开发框架 ——Kestrel
shengyin714959
笔记最高笔记网络服务器运维
为什么推荐Kestrel网络框架千千万万,在dotnet平台,我们可以直接手撸Socket,也可以基于dotnetty来开发,或者选择某些第三方类似于dotnetty的网络库,为何我要推荐Kestrel呢?1使用框架#网络编程是简单的,简单到大概就newSocket(),Send()发送数据,Receive()接收数据,这大概是初学者的大致感受。网络编程是复杂的,让Send()和Receive()
- DotNetty使用之Echo
码到_成功
通信c#dotNetty
一、DotNetty介绍DotNetty是微软的Azure团队,使用C#实现的Netty的版本发布。不但使用了C#和.Net平台的技术特点,并且保留了Netty原来绝大部分的编程接口。让我们在使用时,完全可以依照Netty官方的教程来学习和使用DotNetty应用程序。那Netty又是什么尼?Netty是一个提供asynchronousevent-driven(异步事件驱动)的网络应用框架,是一个
- NET Core通过DotNetty和Lua实现MQTT通讯
voxer
MQTT应用已经非常广泛了,目前笔者团队需要用lua来实现mqtt通讯,而服务端需要使用.NetCore来实现,以下是相关技术研究的一个总结。本文主要介绍.NetCore和Lua的MQTT通讯示例。所有源代码可以从这里下载。1.MQTT协议开发之前,非常有必要仔细的了解一下MQTT协议的基本介绍和报文结构,可以参考用户“技术学习”的MQTT专栏,里面关于协议介绍的非常详细。2.MQTTLuaMQT
- DotNetty发送请求的最佳实践
顽石2019
长链接发送request/response时,绝大部分包都是小包,而每个小包都要消耗一个IP包,成本大约是20-30us,普通千兆网卡的pps大约是60Wpps,所以想要提高长链接密集IO的应用性能,需要做包的合并,也称为了scatter/gatherio或者vectorio.在linux下有readv/writev就是对应这个需求的,减少系统调用,减少pps,提高网卡的吞吐量.关于readv提高
- DotNetty学习(四)——时间服务(Time)
Henny_CHN
DotNetty
总览链接:https://blog.csdn.net/a1234012340a/article/details/91040073服务端:服务端我在这里只负责返回时间,别的什么也不想做所以只需要写一个read然后返回时间就ok了。客户端:在写客户端之前的讲解:ChannelActive方法:将会在连接被建立并且准备进行通信时被调用。一句话就够用了。low一点。客户端写一个ChannelActive请
- 『神坑』DotNetty 内存泄漏 解决办法
denghui6223
背景近来在用DotNetty实现一个文件上传下载的同步服务。其中:客户端下载服务端的文件,客户端多次请求,从服务端将文件分片下载下来,追加到本地磁盘。——非常简单的代码,都写了几十次了,驾轻就熟。问题来了可是:在进行压力测试时,我这边下载一个Win10的ISO镜像,4个G。我发现:客户端内存不停增长,直到内存溢出——我擦。VS2015内存诊断内存诊断,我们发现有很多16M(16777228字节)的
- dotnetty 整合 msgpack编解码框架
夜幕-星辰
C#
dotnetty整合msgpack编解码框架主要是作java开发的,这一段时间用到了netty,权衡之下编解码框架选择了messagepack,当然protobuf同样是是很好的一种编解码框架,只是项目中需要传对象需要支持byte[]形式,而protobuf并不支持,经过努力也只能封装出支持list的数据结构,能力有限,就选择了messagepack。对于java方面的用法就不多说了,资料有很多,
- Uragano,基于dotnetty实现的高性能RPC框架
汪泽林
RPC微服务
部分API已经做了调整,请查看最新文档我做c#开发已经11年了,一直没写过博客,不是不想写,实在是没文采,不擅长写文章。虽然不写,但是还是经常看别人写的技术博客,也关注了很多大牛的blog和公众号。最近这两年微服务很火,自己也一直在不断的学习,因为所在的公司基于成本考虑一直没有打算把项目往微服务方向转,但是自己还是花了不少时间去学习这方面的知识。微软终于开窍走上了开源的道路,希望netcore越来
- Net Core、JS/H5、Lua通过Apollo 实现mqtt通讯
voxer
接上篇NETCore通过DotNetty和Lua实现MQTT通讯,这一篇尝试并不自己实现MQTT的服务端,而是用成熟的代理服务ApacheApollo,Apollo的优点很多,支持多种协议,支持web的管理界面,安装配置和使用容易。以下示例目标是以Apollo为MQTTBroker,以NetCore,JS,Lua三种语言来实现Broker的MQTT客户端,在它们之间实现消息互通。所有源码请参考地址
- 使用DotNetty编写跨平台网络通信程序
weixin_33979363
为什么80%的码农都做不了架构师?>>>长久以来,.Net开发人员都非常羡慕Java有Netty这样,高效,稳定又易用的网络通信基础框架。终于微软的Azure团队,使用C#实现的Netty的版本发布。不但使用了C#和.Net平台的技术特点,并且保留了Netty原来绝大部分的编程接口。让我们在使用时,完全可以依照Netty官方的教程来学习和使用DotNetty应用程序。DotNetty同时也是开源的
- C#/Java 常用轮子 (子文章)(持续更新)
xxxxxue
C#后端
----->总文章入口C#框架/类库名称介绍Topshelfwindows服务框架Quartz定时任务框架NVelocityMVC视图引擎NPOI文档读写SignalRWebSocket框架SwaggerRESTAPI文档生成工具:NSwagSwashbuckleSwifter.Json性能最佳的JSON序列化和反序列化库Newtonsoft.Json高级用法DotNetty异步事件驱动的网络应用
- DotNetty学习(五)——点对点聊天(WebSocket)
Henny_CHN
DotNetty
总览链接:https://blog.csdn.net/a1234012340a/article/details/91040073首先贴一下我的服务端代码staticasyncTaskRunServerAsync(){//方法1////申明一个主回路调度组//vardispatcher=newDispatcherEventLoopGroup();////主工作线程组,设置为1个线程//IEventL
- NET Core微服务之路:利用DotNetty实现一个简单的通信过程
另一个老李
上一篇我们已经全面的介绍过《基于gRPC服务发现与服务治理的方案》,我们先复习一下RPC的调用过程(笔者会在这一节的几篇文章中反复的强调这个过程调用方案),看下图根据上面图,服务化原理可以分为3步:服务端启动并且向注册中心发送服务信息,注册中心收到后会定时监控服务状态(常见心跳检测);客户端需要开始调用服务的时候,首先去注册中心获取服务信息;客户端创建远程调用连接,连接后服务端返回处理信息;第3步
- DotNetty项目基本了解和介绍
weixin_30794491
一、DotNetty背景介绍DotNetty是微软的Azure团队,使用C#实现的Netty的版本发布。不但使用了C#和.Net平台的技术特点,并且保留了Netty原来绝大部分的编程接口。让我们在使用时,完全可以依照Netty官方的教程来学习和使用DotNetty应用程序。DotNetty同时也是开源的,它的源代码托管在Github上:https://github.com/azure/dotnet
- C# 搭建DotNetty客户端
一只呆毛
C#
以下是DotNetty开源项目https://github.com/Azure/DotNetty我得出的结论:(2017年3月29日)1.DotNetty只能通过vs2017进行加载;(vs2013添加项目后报错:vserror:项目的默认XML命名空间必须为MSBuildXML命名空间——去github上找是否有人提问,发现两个关键信息如下图——>于是从nuget着手!)2.不能使用marsha
- DotNetty系列二:基本使用
qq_34719168
dotnetty
开发环境:VS20171.创建二个控制台应用,.netframework4.6.1。一个服务端,一个客户端。2.nuget,将前五项引入二个控制台应用。3.服务端代码:注释写代码里了usingDotNetty.Buffers;usingDotNetty.Transport.Bootstrapping;usingDotNetty.Transport.Channels;usingDotNetty.Tr
- DotNetty完全教程(九)
聂14昊51
DotNettyC#
引导Bootstrap引导一个应用程序是指对他进行配置并且使他运行的过程。体系结构注意,DotNetty没有实现Cloneable的接口,而是直接实现了一个Clone方法。Netty实现这个接口是为了创建两个有着相同配置的应用程序,可以把一个配置整体应用到另一个上面,需要注意的是EventLoopGroup是一个浅拷贝,这就导致了拷贝的Bootstrap都会使用同一个EventLoopGroup,
- DotNetty完全教程(七)
聂14昊51
DotNettyC#
ChannelPipeline和ChannelHandleContext介绍ChannelPipeline是一系列ChannelHandler连接的实例链,这个实例链构成了应用程序逻辑处理的核心。下图反映了这种关联:ChannelHandlerContext提供了一个ChannelPipeline的上下文,用于ChannelHandler在Pipeline中的交互,这种交互十分的灵活,不仅是信息可
- DotNetty完全教程(十一)
聂14昊51
DotNettyC#
编码器和解码器定义编码器负责将应用程序可以识别的数据结构转化为可传输的数据流,解码器反之。对于应用程序来说,编码器操作出站数据,解码器操作入站数据。解码器和Handler解码器因为是处理入站数据的,所以继承了ChannelInBoundHandler.我们理解的时候可以认为解码器就是一种特殊的Handler,用于处理信息。解码器的类型ByteToMessageDecoderReplayingDec
- DotNetty完全教程(十)
聂14昊51
DotNettyC#
单元测试EmbeddedChannel介绍EmbeddedChannel是专门为了测试ChannelHandler的传输。我们先看一下他的API用一张图来描述这样的一个模拟过程编写基于xUnit的单元测试新建一个xUnit工程UnitTest新建一个用于测试EmbededChannel的工程EmbededChannelTestEmbededChannelTest工程需要引用DotNetty的类库,
- DotNetty完全教程(六)
聂14昊51
DotNettyC#
资源管理目的在处理数据的过程中,我们需要确保没有任何的资源泄漏。这时候我们就得很关心资源管理。引用计数的处理使用完ByteBuf之后,需要调整其引用计数以确保资源的释放内存内漏探测Netty提供了ResourceLeakDetector来检测内存泄漏,因为其是采样检测的,所以相关开销并不大。泄露日志检测级别手动释放消息ReferenceCountUtil.SafeRelease(this.Mess
- DotNetty完全教程(五)
聂14昊51
DotNettyC#
ChannelHandler本篇文章着重介绍ChannelHandlerChannel的生命周期我们复习一下,Channel是Socket的抽象,可以被注册到一个EventLoop上,EventLoop相当于Selector,每一个EventLoop又有自己的处理线程。复习了这部分的知识,我们就知道在Channel的生命中,有以下这么几个关键的时间节点。ChannelHandler的生命周期我们复
- DotNetty完全教程(四)
聂14昊51
DotNettyC#
ByteBufferNetty中ByteBuffer的介绍Netty的数据处理API通过两个组件暴露——abstractclassByteBuf和interfaceByteBufHolderDotNetty中有AbstractByteBufferIByteBufferIByteBufferHolder优点:它可以被用户自定义的缓冲区类型扩展;通过内置的复合缓冲区类型实现了透明的零拷贝;容量可以按需
- DotNetty完全教程(八)
聂14昊51
DotNettyC#
EventLoop介绍我们先回顾一下,EventLoop就是我们在最开始的示意图中的Selector,每个EventLoop和一个线程绑定,用于处理多个Channel。任务调度如果我们想实现延时任务的调度,比如连接成功5s之后发送一包数据,就可以用到EventLoop的计划任务ctx.Channel.EventLoop.Schedule(()=>{Console.WriteLine("delay1
- DotNetty使用之心跳机制
码到_成功
通信
因为DotNetty是从java的Netty框架仿写过来的,介绍的文档特别少,加之官方也没有提供api文档,所以之前一直不理解心跳的用法。最近忙里偷闲,稍稍研究了一番,终于有点明白了。现在将代码复制上来,留作日后查看(ps:精髓都在代码里):Uptime.Client:publicclassProgram{conststringHOST="127.0.0.1";constintPORT=8045;
- .NET Core微服务之路:利用DotNetty实现一个简单的通信过程
另一个老李
.NETCore微服务之路:利用DotNetty实现一个简单的通信过程上一篇我们已经全面的介绍过《基于gRPC服务发现与服务治理的方案》,我们先复习一下RPC的调用过程(笔者会在这一节的几篇文章中反复的强调这个过程调用方案),看下图根据上面图,服务化原理可以分为3步:服务端启动并且向注册中心发送服务信息,注册中心收到后会定时监控服务状态(常见心跳检测);客户端需要开始调用服务的时候,首先去注册中心
- apache 安装linux windows
墙头上一根草
apacheinuxwindows
linux安装Apache 有两种方式一种是手动安装通过二进制的文件进行安装,另外一种就是通过yum 安装,此中安装方式,需要物理机联网。以下分别介绍两种的安装方式
通过二进制文件安装Apache需要的软件有apr,apr-util,pcre
1,安装 apr 下载地址:htt
- fill_parent、wrap_content和match_parent的区别
Cb123456
match_parentfill_parent
fill_parent、wrap_content和match_parent的区别:
1)fill_parent
设置一个构件的布局为fill_parent将强制性地使构件扩展,以填充布局单元内尽可能多的空间。这跟Windows控件的dockstyle属性大体一致。设置一个顶部布局或控件为fill_parent将强制性让它布满整个屏幕。
2) wrap_conte
- 网页自适应设计
天子之骄
htmlcss响应式设计页面自适应
网页自适应设计
网页对浏览器窗口的自适应支持变得越来越重要了。自适应响应设计更是异常火爆。再加上移动端的崛起,更是如日中天。以前为了适应不同屏幕分布率和浏览器窗口的扩大和缩小,需要设计几套css样式,用js脚本判断窗口大小,选择加载。结构臃肿,加载负担较大。现笔者经过一定时间的学习,有所心得,故分享于此,加强交流,共同进步。同时希望对大家有所
- [sql server] 分组取最大最小常用sql
一炮送你回车库
SQL Server
--分组取最大最小常用sql--测试环境if OBJECT_ID('tb') is not null drop table tb;gocreate table tb( col1 int, col2 int, Fcount int)insert into tbselect 11,20,1 union allselect 11,22,1 union allselect 1
- ImageIO写图片输出到硬盘
3213213333332132
javaimage
package awt;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imagei
- 自己的String动态数组
宝剑锋梅花香
java动态数组数组
数组还是好说,学过一两门编程语言的就知道,需要注意的是数组声明时需要把大小给它定下来,比如声明一个字符串类型的数组:String str[]=new String[10]; 但是问题就来了,每次都是大小确定的数组,我需要数组大小不固定随时变化怎么办呢? 动态数组就这样应运而生,龙哥给我们讲的是自己用代码写动态数组,并非用的ArrayList 看看字符
- pinyin4j工具类
darkranger
.net
pinyin4j工具类Java工具类 2010-04-24 00:47:00 阅读69 评论0 字号:大中小
引入pinyin4j-2.5.0.jar包:
pinyin4j是一个功能强悍的汉语拼音工具包,主要是从汉语获取各种格式和需求的拼音,功能强悍,下面看看如何使用pinyin4j。
本人以前用AscII编码提取工具,效果不理想,现在用pinyin4j简单实现了一个。功能还不是很完美,
- StarUML学习笔记----基本概念
aijuans
UML建模
介绍StarUML的基本概念,这些都是有效运用StarUML?所需要的。包括对模型、视图、图、项目、单元、方法、框架、模型块及其差异以及UML轮廓。
模型、视与图(Model, View and Diagram)
&
- Activiti最终总结
avords
Activiti id 工作流
1、流程定义ID:ProcessDefinitionId,当定义一个流程就会产生。
2、流程实例ID:ProcessInstanceId,当开始一个具体的流程时就会产生,也就是不同的流程实例ID可能有相同的流程定义ID。
3、TaskId,每一个userTask都会有一个Id这个是存在于流程实例上的。
4、TaskDefinitionKey和(ActivityImpl activityId
- 从省市区多重级联想到的,react和jquery的差别
bee1314
jqueryUIreact
在我们的前端项目里经常会用到级联的select,比如省市区这样。通常这种级联大多是动态的。比如先加载了省,点击省加载市,点击市加载区。然后数据通常ajax返回。如果没有数据则说明到了叶子节点。 针对这种场景,如果我们使用jquery来实现,要考虑很多的问题,数据部分,以及大量的dom操作。比如这个页面上显示了某个区,这时候我切换省,要把市重新初始化数据,然后区域的部分要从页面
- Eclipse快捷键大全
bijian1013
javaeclipse快捷键
Ctrl+1 快速修复(最经典的快捷键,就不用多说了)Ctrl+D: 删除当前行 Ctrl+Alt+↓ 复制当前行到下一行(复制增加)Ctrl+Alt+↑ 复制当前行到上一行(复制增加)Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)Alt+↑ 当前行和上面一行交互位置(同上)Alt+← 前一个编辑的页面Alt+→ 下一个编辑的页面(当然是针对上面那条来说了)Alt+En
- js 笔记 函数
征客丶
JavaScript
一、函数的使用
1.1、定义函数变量
var vName = funcation(params){
}
1.2、函数的调用
函数变量的调用: vName(params);
函数定义时自发调用:(function(params){})(params);
1.3、函数中变量赋值
var a = 'a';
var ff
- 【Scala四】分析Spark源代码总结的Scala语法二
bit1129
scala
1. Some操作
在下面的代码中,使用了Some操作:if (self.partitioner == Some(partitioner)),那么Some(partitioner)表示什么含义?首先partitioner是方法combineByKey传入的变量,
Some的文档说明:
/** Class `Some[A]` represents existin
- java 匿名内部类
BlueSkator
java匿名内部类
组合优先于继承
Java的匿名类,就是提供了一个快捷方便的手段,令继承关系可以方便地变成组合关系
继承只有一个时候才能用,当你要求子类的实例可以替代父类实例的位置时才可以用继承。
在Java中内部类主要分为成员内部类、局部内部类、匿名内部类、静态内部类。
内部类不是很好理解,但说白了其实也就是一个类中还包含着另外一个类如同一个人是由大脑、肢体、器官等身体结果组成,而内部类相
- 盗版win装在MAC有害发热,苹果的东西不值得买,win应该不用
ljy325
游戏applewindowsXPOS
Mac mini 型号: MC270CH-A RMB:5,688
Apple 对windows的产品支持不好,有以下问题:
1.装完了xp,发现机身很热虽然没有运行任何程序!貌似显卡跑游戏发热一样,按照那样的发热量,那部机子损耗很大,使用寿命受到严重的影响!
2.反观安装了Mac os的展示机,发热量很小,运行了1天温度也没有那么高
&nbs
- 读《研磨设计模式》-代码笔记-生成器模式-Builder
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/**
* 生成器模式的意图在于将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示(GoF)
* 个人理解:
* 构建一个复杂的对象,对于创建者(Builder)来说,一是要有数据来源(rawData),二是要返回构
- JIRA与SVN插件安装
chenyu19891124
SVNjira
JIRA安装好后提交代码并要显示在JIRA上,这得需要用SVN的插件才能看见开发人员提交的代码。
1.下载svn与jira插件安装包,解压后在安装包(atlassian-jira-subversion-plugin-0.10.1)
2.解压出来的包里下的lib文件夹下的jar拷贝到(C:\Program Files\Atlassian\JIRA 4.3.4\atlassian-jira\WEB
- 常用数学思想方法
comsci
工作
对于搞工程和技术的朋友来讲,在工作中常常遇到一些实际问题,而采用常规的思维方式无法很好的解决这些问题,那么这个时候我们就需要用数学语言和数学工具,而使用数学工具的前提却是用数学思想的方法来描述问题。。下面转帖几种常用的数学思想方法,仅供学习和参考
函数思想
把某一数学问题用函数表示出来,并且利用函数探究这个问题的一般规律。这是最基本、最常用的数学方法
- pl/sql集合类型
daizj
oracle集合typepl/sql
--集合类型
/*
单行单列的数据,使用标量变量
单行多列数据,使用记录
单列多行数据,使用集合(。。。)
*集合:类似于数组也就是。pl/sql集合类型包括索引表(pl/sql table)、嵌套表(Nested Table)、变长数组(VARRAY)等
*/
/*
--集合方法
&n
- [Ofbiz]ofbiz初用
dinguangx
电商ofbiz
从github下载最新的ofbiz(截止2015-7-13),从源码进行ofbiz的试用
1. 加载测试库
ofbiz内置derby,通过下面的命令初始化测试库
./ant load-demo (与load-seed有一些区别)
2. 启动内置tomcat
./ant start
或
./startofbiz.sh
或
java -jar ofbiz.jar
&
- 结构体中最后一个元素是长度为0的数组
dcj3sjt126com
cgcc
在Linux源代码中,有很多的结构体最后都定义了一个元素个数为0个的数组,如/usr/include/linux/if_pppox.h中有这样一个结构体: struct pppoe_tag { __u16 tag_type; __u16 tag_len; &n
- Linux cp 实现强行覆盖
dcj3sjt126com
linux
发现在Fedora 10 /ubutun 里面用cp -fr src dest,即使加了-f也是不能强行覆盖的,这时怎么回事的呢?一两个文件还好说,就输几个yes吧,但是要是n多文件怎么办,那还不输死人呢?下面提供三种解决办法。 方法一
我们输入alias命令,看看系统给cp起了一个什么别名。
[root@localhost ~]# aliasalias cp=’cp -i’a
- Memcached(一)、HelloWorld
frank1234
memcached
一、简介
高性能的架构离不开缓存,分布式缓存中的佼佼者当属memcached,它通过客户端将不同的key hash到不同的memcached服务器中,而获取的时候也到相同的服务器中获取,由于不需要做集群同步,也就省去了集群间同步的开销和延迟,所以它相对于ehcache等缓存来说能更好的支持分布式应用,具有更强的横向伸缩能力。
二、客户端
选择一个memcached客户端,我这里用的是memc
- Search in Rotated Sorted Array II
hcx2013
search
Follow up for "Search in Rotated Sorted Array":What if duplicates are allowed?
Would this affect the run-time complexity? How and why?
Write a function to determine if a given ta
- Spring4新特性——更好的Java泛型操作API
jinnianshilongnian
spring4generic type
Spring4新特性——泛型限定式依赖注入
Spring4新特性——核心容器的其他改进
Spring4新特性——Web开发的增强
Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC
Spring4新特性——Groovy Bean定义DSL
Spring4新特性——更好的Java泛型操作API
Spring4新
- CentOS安装JDK
liuxingguome
centos
1、行卸载原来的:
[root@localhost opt]# rpm -qa | grep java
tzdata-java-2014g-1.el6.noarch
java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el6_5.x86_64
java-1.6.0-openjdk-1.6.0.0-11.1.13.4.el6.x86_64
[root@localhost
- 二分搜索专题2-在有序二维数组中搜索一个元素
OpenMind
二维数组算法二分搜索
1,设二维数组p的每行每列都按照下标递增的顺序递增。
用数学语言描述如下:p满足
(1),对任意的x1,x2,y,如果x1<x2,则p(x1,y)<p(x2,y);
(2),对任意的x,y1,y2, 如果y1<y2,则p(x,y1)<p(x,y2);
2,问题:
给定满足1的数组p和一个整数k,求是否存在x0,y0使得p(x0,y0)=k?
3,算法分析:
(
- java 随机数 Math与Random
SaraWon
javaMathRandom
今天需要在程序中产生随机数,知道有两种方法可以使用,但是使用Math和Random的区别还不是特别清楚,看到一篇文章是关于的,觉得写的还挺不错的,原文地址是
http://www.oschina.net/question/157182_45274?sort=default&p=1#answers
产生1到10之间的随机数的两种实现方式:
//Math
Math.roun
- oracle创建表空间
tugn
oracle
create temporary tablespace TXSJ_TEMP
tempfile 'E:\Oracle\oradata\TXSJ_TEMP.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent m
- 使用Java8实现自己的个性化搜索引擎
yangshangchuan
javasuperword搜索引擎java8全文检索
需要对249本软件著作实现句子级别全文检索,这些著作均为PDF文件,不使用现有的框架如lucene,自己实现的方法如下:
1、从PDF文件中提取文本,这里的重点是如何最大可能地还原文本。提取之后的文本,一个句子一行保存为文本文件。
2、将所有文本文件合并为一个单一的文本文件,这样,每一个句子就有一个唯一行号。
3、对每一行文本进行分词,建立倒排表,倒排表的格式为:词=包含该词的总行数N=行号