- Netty学习------2024/02/19
客卿123
Netty学习学习服务器网络
non-blockingio非阻塞IO1.三大组件1.1Channel&Bufferchannel有一点类似于stream,它就是读写数据的双向通道,可以从channel将数据读入buffer,也可以将buffer的数据写入channel,而之前的stream要么是输入,要么是输出,channel比stream更为底层graphLRchannel-->bufferbuffer-->channel常
- Netty学习笔记(3) Netty进阶3 -聊天室
JWASX
Nettyjava开发语言后端
文章目录前言聊天室群聊1.思路2.代码1.handler,用于处理消息1.好友聊天消息处理器2.群聊消息处理器3.创建群消息处理器4.加入群聊消息处理器5.查看群成员消息处理器6.退出群消息处理器7.登陆消息处理器8.退出程序处理器2.消息类,用于发送返回1.AbstractResponseMessage2.ChatRequestMessage3.ChatResponseMessage4.Grou
- Netty学习之Netty介绍
颜洛滨
Netty学习之Netty介绍前言本周开始学习Netty,主要的参考资料是《NettyInAction》原版书,这本书写得真好,一开始学习Netty的时候,看得有些云里雾里,后面弄懂之后,再回头看一下这本书,就发现这本书真的言简意赅,精炼地将Netty的各个组件展现出来。传统的Java网络编程在传统的Java网络编程中,是基于阻塞形式的IO,在这种形式的IO模型中,由于当数据没有到来的时候,对应的
- Netty学习笔记
等待花开I
Netty学习网络服务器
Netty应用开发语雀链接1.引言1.1什么是Nettyhttps://netty.io/Nettyisanasynchronousevent-drivennetworkapplicationframeworkforrapiddevelopmentofmaintainablehighperformanceprotocolservers&clients.Netty是一个异步事件驱动的网络应用框架。用
- Netty | 第1章 Java NIO 网络编程《Netty In Action》
多氯环己烷
前言参考资料:《NettyInAction》;B站《尚硅谷Netty视频教程》;本系列为Netty学习笔记,本篇介绍总结JavaNIO网络编程。Netty作为一个异步的、事件驱动的网络应用程序框架,也是基于NIO的客户、服务器端的编程框架。其对JavaNIO底层API进行了封装,因此有必要对Java网络编程做个大概了解。本篇将重点放在NIO网络编程模型上,对BIO及AIO仅做简要说明;1.Java
- Netty学习(七):心跳检测机制
玉面大蛟龙
javajava网络编程netty
一、什么是心跳检测机制所谓心跳,即在TCP长连接中,客户端和服务器之间定期发送的一种特殊的数据包,通知对方自己还在线,以确保TCP连接的有效性.心跳机制主要是客户端和服务端长时间连接时,客户端需要定时发送心跳包来保证自己是存活的,否则一个连接长时间没有作用就会浪费服务端的资源。二、心跳检测机制的适用场景长连接的应用场景非常的广泛,比如监控系统,IM系统,即时报价系统,推送服务等等。像这些场景都是比
- Netty学习
CopyLower
Java学习学习服务器架构
一、NIO概念阻塞:需要等待缓冲区中的数据准备好后才处理其他的事情,否则一直等待。非阻塞:进程访问数据缓冲区的,如数据没有准备好直接返回,不会等待;如数据已经准备好,也是直接返回。同步:是应用程序要直接参与IO读写的操作。异步:所有的IO读写交给操作系统去处理,应用程序只需要等待通知。二、BIO是一个同步并阻塞的IO模式,传统的java.io包,基于流模式实现。交互方式是同步、阻塞的方式。三、NI
- Netty学习(一):初识Netty
如我般骄傲
#Nettyjava
章节1、Netty学习(一):初识Netty2、Netty学习(二):Netty的核心组件3、Netty学习(三):Netty的流程分析4、Netty学习(四):Netty零拷贝(转载)5、Netty学习(五):Netty实现UDP的Server端一、概述本质:Netty的本质是一个网络应用程序框架实现:异步、事件驱动特性:高性能、可维护、快速开发用途:开发服务器和客户端作为当前最流行的NIO框架
- 04、Netty学习笔记—(黏包半包及协议设计解析)
长路 ㅤ
#Nettyjavanetty黏包半包协议设计
文章目录一、粘包与半包1.1、现象分析1.1.1、粘包、半包情况分析1.1.2、滑动窗口、MSS限制、Nagle算法介绍1.2、粘包、半包现象复现1.2.1、粘包复现1.2.2、半包复现1.3、解决方案①短链接(连接、停止作为边界)②定长解码器(指定字节长度解码)③行解码器(分割符解决)④LTC解码器(基于长度字段的帧解码器,长度+内容组成)四个基础字段分析实际案例二、协议设计与解析2.1、red
- Netty学习之NIO基础
南京大学软工研究生
学习nio数据库
Netty学习之NIO基础本博客是根据黑马程序员Netty实战学习时所做的笔记一、三大组件简介Channel与BufferJavaNIO系统的核心在于:通道(Channel)和缓冲区(Buffer)。通道表示打开到IO设备(例如:文件、套接字)的连接。若需要使用NIO系统,需要获取用于连接IO设备的通道以及用于容纳数据的缓冲区。然后操作缓冲区,对数据进行处理简而言之,通道负责传输,缓冲区负责存储常
- Netty学习笔记:三、NIO零拷贝
象话
NettyNIO零拷贝mmap和sendfile零拷贝sendFile
1、传统IO4次上下文切换、4次内存拷贝上图中,上半部分表示用户态和内核态的上下文切换。下半部分表示数据复制操作。下面说说他们的步骤:read调用导致用户态到内核态的一次变化,同时,第一次复制开始:DMA(DirectMemoryAccess,直接内存存取,即不使用CPU拷贝数据到内存,而是DMA引擎传输数据到内存,用于解放CPU)引擎从磁盘读取index.html文件,并将数据放入到内核缓冲区。
- Netty火热平时却接触不多?1515页Netty学习进阶笔记真香
啊码
.netjava
Netty的介绍Netty是由JBOSS提供的一个Java开源框架,现为Github上的独立项目。Netty是一个异步的、基于事件驱动的网络应用框架,用以快速开发高性能、高可靠性的网络IO程序。Netty是一个异步的、基于事件驱动的网络应用框架,用以快速开发高性能、高可靠性的网络IO程序。Netty主要针对在TCP协议下,面向Clients端的高并发应用,或者Peer-to-Peer场景下的大量数
- Netty学习
CopyLower
学习学习java开发语言
一、原理高性能、异步事件驱动的NIO框架,基于JAVANIO提供的API实现,它提供了对TCP、UDP和文件传输的支持,作为一个异步的NIO框架,Netty的所有IO操作都是异步非阻塞的,通过Future-Listene机制,用户可以方便的主动获取或者通过通知机制获得IO操作结果。二、高性能IO多路复用技术,系统不需要创建新的额外进程或者线程,也不需要维护这些进程和线程的运行,降低了系统的维护工作
- NIO网络编程
yzhSWJ
nio网络
Netty学习之NIO基础-Nyima'sBlog1、阻塞阻塞模式下,相关方法都会导致线程暂停ServerSocketChannel.accept会在没有连接建立时让线程暂停SocketChannel.read会在通道中没有数据可读时让线程暂停阻塞的表现其实就是线程暂停了,暂停期间不会占用cpu,但线程相当于闲置单线程下,阻塞方法之间相互影响,几乎不能正常工作,需要多线程支持但多线程下,有新的问题
- netty学习
程序猿小蝌蚪 黄小帅
netty
netty是一个NIO框架,它提供了一个高性能、异步事件驱动的网络应用程序框架NIO三大主键channel&buffer通道/缓冲?有哪些selector选择器(适合连接多,流量低)多路复用单线程配合selector管理多个channel适合:多线程设计适合少连接线程池适合短连接(没有处理完就堵塞)selector管理多个channelFileChannelbyteBuffer指针/limit/容
- Netty学习笔记
只因我实在是太美
学习笔记java
1.NIO基础non-blockingio,jdk1.4后新增1.1三大组件1.1.1Channel读写数据的双向通道,可以用channel将数据从buffer中读出,也可以将buffer的数据写入channel,而java的Stream流要么输入要么输出,常用的Channel有SocketChannel、ServerSocketChannel、FileChannel1.1.2BufferBuff
- Netty 学习和进阶策略
boonya
NettyJavaNettyIONIO
目录背景Netty框架的特点初学者常见问题Netty学习策略入门知识准备Netty源码学习Netty项目实践gRPC服务端gRPC客户端线程模型Netty故障定位技巧接收不到消息内存泄漏作者介绍背景Netty框架的特点Netty的一个特点就是入门相对比较容易,但是真正掌握并精通是非常困难的,原因有如下几个:涉及的知识面比较广:Netty作为一个高性能的NIO通信框架,涉及到的知识点包括网络通信、多
- Netty学习五-线程模型
孟诸
NettyNetty
1Reactor线程模型讨论Netty线程模型的时候,一般会想到经典的Reactor线程模型。尽管不同的NIO框架对Reactor线程模型实现不太一样,但本质上还是遵循Reactor基础线程模型1.1单线程模型所有的IO操作都在一个NIO线程完成,NIO线程职责如下作为NIO服务端,接收客户TCP连接作为NIO客户端,向服务端发起TCP连接读取通信对端请求或应答消息向通信对端发送请求或应答消息单线
- Netty学习笔记(四)Netty概述及传统阻塞 IO 、Reactor 模式线程模型
yangwen-bo
后端开发nettyjava多线程
原生NIO存在的问题1.NIO的类库和API繁杂,使用麻烦:需要熟练掌握Selector、ServerSocketChannel、SocketChannel、ByteBuffer等。2.需要具备其他的额外技能:要熟悉Java多线程编程,因为NIO编程涉及到Reactor模式,你必须对多线程和网络编程非常熟悉,才能编写出高质量的NIO程序。3.开发工作量和难度都非常大:例如客户端面临断连重连、网络闪
- Netty学习笔记三-TCP粘包拆包
无聪帅
案例重现首先我们通过具体的case重现一下TCP粘包的过程我们模拟下故障场景,客户端循环一百次调用服务端传输报文,服务端接收报文并打印接收报文和计数,同时根据报文回应客户端服务端代码publicclassTimeServerHandlerextendsChannelHandlerAdapter{privateintcount;@OverridepublicvoidchannelRead(Chann
- 【netty学习笔记八】IdleStateHandler心跳检测机制
月落亦莫离
在节点通信时,经常需要心跳机制来探测对方是否是存活的。在netty中,IdleStateHandler就能提供这种心跳检测功能。让我们先看看例子:服务端添加的handler.childHandler(newChannelInitializer(){@OverridepublicvoidinitChannel(SocketChannelch)throwsException{ChannelPipeli
- 20191013 Netty基础知识学习
LLLLLLLLEE
java-web
Netty学习预备1、前言使用Netty,可能是相对简单的。但是要搞懂Netty,可能就不是那么容易的事情了,因为要了解的基础知识太多了。如线程模型、IO迷行、NIO、传统IO等等。笼统的去学习Netty,或者说没有一条学习线路去学习Netty,就会像我一样头脑混乱,即使遇到不懂的问题,可能也不知道要怎么提问。为什么连提问都不会?因为自己的思路都是不清晰的,各种东西糅杂在一起了。我之前是这样学习N
- Netty学习二十:源码分析之Netty Reactor 线程模型
爱打羽球的程序猿
Netty学习系列学习java开发语言
一、Reactor线程执行的主流程Reactor线程模型是Netty实现高性能的核心所在,在Netty中EventLoop是Reactor线程模型的核心处理引擎,那么EventLoop到底是如何实现的呢?又是如何保证高性能和线程安全性的呢?因为Netty是基于NIO实现的,所以推荐使用NioEventLoop实现,通过NioEventLoop的核心入口run()方法回顾NettyReactor线程
- Netty源码编译不了,如何正确编译
chengCodeX
源码编译nettyjavajavanettygithub
Netty编译不了netty源码编译教程今天想编译netty源码,进行源码学习,却遇到无法编译的问题。这里记录一下正确的操作环境java环境+Maven环境+Jdk8clonehttps://github.com/netty/netty学习源码首先三连fork后,克隆到本地为什么要fork?因为fork之后自己修改的源码(如果要上传,方便直接上传到自己的github)gitclonehttps:/
- netty学习推荐书_Netty学习之Netty介绍
weixin_36369259
netty学习推荐书
Netty学习之Netty介绍前言本周开始学习Netty,主要的参考资料是《NettyInAction》原版书,这本书写得真好,一开始学习Netty的时候,看得有些云里雾里,后面弄懂之后,再回头看一下这本书,就发现这本书真的言简意赅,精炼地将Netty的各个组件展现出来。传统的Java网络编程在传统的Java网络编程中,是基于阻塞形式的IO,在这种形式的IO模型中,由于当数据没有到来的时候,对应的
- netty学习(3):SpringBoot整合netty实现多个客户端与服务器通信
青铜爱码士
springboot学习服务器netty
1.创建SpringBoot父工程创建一个SpringBoot工程,然后创建三个子模块整体工程目录:一个server服务(netty服务器),两个client服务(netty客户端)pom文件引入netty依赖,springboot依赖4.0.0pomserverclient1client2org.springframework.bootspring-boot-starter-parent2.2.
- Netty学习笔记
倩mys
Java学习笔记
文章目录1Netty2BIO1、介绍2、工作机制3、应用实例4、问题分析3NIO1、介绍2、BIOvs.VIO3、NIO三大核心原理4、Buffer缓冲区5、Channel通道6、Selector选择器7、NIO网络编程应用实例-群聊系统8、NIO与零拷贝9、AIO4Netty1、概述2、高性能架构设计3、Netty模型4、异步模型5、核心模块6、实例:群聊系统7、实例:心跳检测机制8、实例:We
- 开发两年还不会Netty?有了这么详细的学习文档,加薪指日可待!
Java胖胖
何为Netty?Netty是一个异步事件驱动(NIO)的网络应用程序框架,用于快速开发可维护的搞性能协议服务器和客户端。极大的简化了TCP和UDP套接字服务器等网络编程。Netty支持多种协议,如FTP,SMTP,HTTP以及各种二进制和基于文本的传输协议。那么我们应该如何学习Netty呢?今天,我就带着这一份阿里架构师的Netty学习文档,向你们走过来了!希望大家在领取到这一份文档之后都能够认真
- Netty学习笔记(二)——netty组件及其用法
给我来一杯可乐
学习javajvm服务器网络
1、Netty是一个异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。原生NIO存在的问题1)NIO的类库和API繁杂,使用麻烦:需要熟练掌握Selector、ServerSocketChannel、SocketChannel、ByteBuffer等。2)需要具备其他的额外技能:要熟悉Java多线程编程,因为NIO编程涉及到Reactor模式,你必须对多线程和网络编程非
- Netty学习之 三种Reactor模型,Netty工作原理 , Netty编程实例
尬尬_
#Nettyjava网络开发语言
文章目录前言1.原生NIO存在的问题如下一、三种Reactor模型1.单Reactor模型2.单Reactor多线程3.主从Reactor多线程二、工作原理1.一般模型2.原理三、编程实例NettyServerNettyServerHandlerNettyClientNettyClientHandler前言介绍Netty的三种模型及其工作原理,Netty编程Demo1.原生NIO存在的问题如下NI
- 统一思想认识
永夜-极光
思想
1.统一思想认识的基础,才能有的放矢
原因:
总有一种描述事物的方式最贴近本质,最容易让人理解.
如何让教育更轻松,在于找到最适合学生的方式.
难点在于,如何模拟对方的思维基础选择合适的方式. &
- Joda Time使用笔记
bylijinnan
javajoda time
Joda Time的介绍可以参考这篇文章:
http://www.ibm.com/developerworks/cn/java/j-jodatime.html
工作中也常常用到Joda Time,为了避免每次使用都查API,记录一下常用的用法:
/**
* DateTime变化(增减)
*/
@Tes
- FileUtils API
eksliang
FileUtilsFileUtils API
转载请出自出处:http://eksliang.iteye.com/blog/2217374 一、概述
这是一个Java操作文件的常用库,是Apache对java的IO包的封装,这里面有两个非常核心的类FilenameUtils跟FileUtils,其中FilenameUtils是对文件名操作的封装;FileUtils是文件封装,开发中对文件的操作,几乎都可以在这个框架里面找到。 非常的好用。
- 各种新兴技术
不懂事的小屁孩
技术
1:gradle Gradle 是以 Groovy 语言为基础,面向Java应用为主。基于DSL(领域特定语言)语法的自动化构建工具。
现在构建系统常用到maven工具,现在有更容易上手的gradle,
搭建java环境:
http://www.ibm.com/developerworks/cn/opensource/os-cn-gradle/
搭建android环境:
http://m
- tomcat6的https双向认证
酷的飞上天空
tomcat6
1.生成服务器端证书
keytool -genkey -keyalg RSA -dname "cn=localhost,ou=sango,o=none,l=china,st=beijing,c=cn" -alias server -keypass password -keystore server.jks -storepass password -validity 36
- 托管虚拟桌面市场势不可挡
蓝儿唯美
用户还需要冗余的数据中心,dinCloud的高级副总裁兼首席营销官Ali Din指出。该公司转售一个MSP可以让用户登录并管理和提供服务的用于DaaS的云自动化控制台,提供服务或者MSP也可以自己来控制。
在某些情况下,MSP会在dinCloud的云服务上进行服务分层,如监控和补丁管理。
MSP的利润空间将根据其参与的程度而有所不同,Din说。
“我们有一些合作伙伴负责将我们推荐给客户作为个
- spring学习——xml文件的配置
a-john
spring
在Spring的学习中,对于其xml文件的配置是必不可少的。在Spring的多种装配Bean的方式中,采用XML配置也是最常见的。以下是一个简单的XML配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.or
- HDU 4342 History repeat itself 模拟
aijuans
模拟
来源:http://acm.hdu.edu.cn/showproblem.php?pid=4342
题意:首先让求第几个非平方数,然后求从1到该数之间的每个sqrt(i)的下取整的和。
思路:一个简单的模拟题目,但是由于数据范围大,需要用__int64。我们可以首先把平方数筛选出来,假如让求第n个非平方数的话,看n前面有多少个平方数,假设有x个,则第n个非平方数就是n+x。注意两种特殊情况,即
- java中最常用jar包的用途
asia007
java
java中最常用jar包的用途
jar包用途axis.jarSOAP引擎包commons-discovery-0.2.jar用来发现、查找和实现可插入式接口,提供一些一般类实例化、单件的生命周期管理的常用方法.jaxrpc.jarAxis运行所需要的组件包saaj.jar创建到端点的点到点连接的方法、创建并处理SOAP消息和附件的方法,以及接收和处理SOAP错误的方法. w
- ajax获取Struts框架中的json编码异常和Struts中的主控制器异常的解决办法
百合不是茶
jsjson编码返回异常
一:ajax获取自定义Struts框架中的json编码 出现以下 问题:
1,强制flush输出 json编码打印在首页
2, 不强制flush js会解析json 打印出来的是错误的jsp页面 却没有跳转到错误页面
3, ajax中的dataType的json 改为text 会
- JUnit使用的设计模式
bijian1013
java设计模式JUnit
JUnit源代码涉及使用了大量设计模式
1、模板方法模式(Template Method)
定义一个操作中的算法骨架,而将一些步骤延伸到子类中去,使得子类可以不改变一个算法的结构,即可重新定义该算法的某些特定步骤。这里需要复用的是算法的结构,也就是步骤,而步骤的实现可以在子类中完成。
 
- Linux常用命令(摘录)
sunjing
crondchkconfig
chkconfig --list 查看linux所有服务
chkconfig --add servicename 添加linux服务
netstat -apn | grep 8080 查看端口占用
env 查看所有环境变量
echo $JAVA_HOME 查看JAVA_HOME环境变量
安装编译器
yum install -y gcc
- 【Hadoop一】Hadoop伪集群环境搭建
bit1129
hadoop
结合网上多份文档,不断反复的修正hadoop启动和运行过程中出现的问题,终于把Hadoop2.5.2伪分布式安装起来,跑通了wordcount例子。Hadoop的安装复杂性的体现之一是,Hadoop的安装文档非常多,但是能一个文档走下来的少之又少,尤其是Hadoop不同版本的配置差异非常的大。Hadoop2.5.2于前两天发布,但是它的配置跟2.5.0,2.5.1没有分别。 &nb
- Anychart图表系列五之事件监听
白糖_
chart
创建图表事件监听非常简单:首先是通过addEventListener('监听类型',js监听方法)添加事件监听,然后在js监听方法中定义具体监听逻辑。
以钻取操作为例,当用户点击图表某一个point的时候弹出point的name和value,代码如下:
<script>
//创建AnyChart
var chart = new AnyChart();
//添加钻取操作&quo
- Web前端相关段子
braveCS
web前端
Web标准:结构、样式和行为分离
使用语义化标签
0)标签的语义:使用有良好语义的标签,能够很好地实现自我解释,方便搜索引擎理解网页结构,抓取重要内容。去样式后也会根据浏览器的默认样式很好的组织网页内容,具有很好的可读性,从而实现对特殊终端的兼容。
1)div和span是没有语义的:只是分别用作块级元素和行内元素的区域分隔符。当页面内标签无法满足设计需求时,才会适当添加div
- 编程之美-24点游戏
bylijinnan
编程之美
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Random;
import java.util.Set;
public class PointGame {
/**编程之美
- 主页面子页面传值总结
chengxuyuancsdn
总结
1、showModalDialog
returnValue是javascript中html的window对象的属性,目的是返回窗口值,当用window.showModalDialog函数打开一个IE的模式窗口时,用于返回窗口的值
主界面
var sonValue=window.showModalDialog("son.jsp");
子界面
window.retu
- [网络与经济]互联网+的含义
comsci
互联网+
互联网+后面是一个人的名字 = 网络控制系统
互联网+你的名字 = 网络个人数据库
每日提示:如果人觉得不舒服,千万不要外出到处走动,就呆在床上,玩玩手游,更不能够去开车,现在交通状况不
- oracle 创建视图 with check option
daizj
视图vieworalce
我们来看下面的例子:
create or replace view testview
as
select empno,ename from emp where ename like ‘M%’
with check option;
这里我们创建了一个视图,并使用了with check option来限制了视图。 然后我们来看一下视图包含的结果:
select * from testv
- ToastPlugin插件在cordova3.3下使用
dibov
Cordova
自己开发的Todos应用,想实现“
再按一次返回键退出程序 ”的功能,采用网上的ToastPlugins插件,发现代码或文章基本都是老版本,运行问题比较多。折腾了好久才弄好。下面吧基于cordova3.3下的ToastPlugins相关代码共享。
ToastPlugin.java
package&nbs
- C语言22个系统函数
dcj3sjt126com
cfunction
C语言系统函数一、数学函数下列函数存放在math.h头文件中Double floor(double num) 求出不大于num的最大数。Double fmod(x, y) 求整数x/y的余数。Double frexp(num, exp); double num; int *exp; 将num分为数字部分(尾数)x和 以2位的指数部分n,即num=x*2n,指数n存放在exp指向的变量中,返回x。D
- 开发一个类的流程
dcj3sjt126com
开发
本人近日根据自己的开发经验总结了一个类的开发流程。这个流程适用于单独开发的构件,并不适用于对一个项目中的系统对象开发。开发出的类可以存入私人类库,供以后复用。
以下是开发流程:
1. 明确类的功能,抽象出类的大概结构
2. 初步设想类的接口
3. 类名设计(驼峰式命名)
4. 属性设置(权限设置)
判断某些变量是否有必要作为成员属
- java 并发
shuizhaosi888
java 并发
能够写出高伸缩性的并发是一门艺术
在JAVA SE5中新增了3个包
java.util.concurrent
java.util.concurrent.atomic
java.util.concurrent.locks
在java的内存模型中,类的实例字段、静态字段和构成数组的对象元素都会被多个线程所共享,局部变量与方法参数都是线程私有的,不会被共享。
- Spring Security(11)——匿名认证
234390216
Spring SecurityROLE_ANNOYMOUS匿名
匿名认证
目录
1.1 配置
1.2 AuthenticationTrustResolver
对于匿名访问的用户,Spring Security支持为其建立一个匿名的AnonymousAuthenticat
- NODEJS项目实践0.2[ express,ajax通信...]
逐行分析JS源代码
Ajaxnodejsexpress
一、前言
通过上节学习,我们已经 ubuntu系统搭建了一个可以访问的nodejs系统,并做了nginx转发。本节原要做web端服务 及 mongodb的存取,但写着写着,web端就
- 在Struts2 的Action中怎样获取表单提交上来的多个checkbox的值
lhbthanks
javahtmlstrutscheckbox
第一种方法:获取结果String类型
在 Action 中获得的是一个 String 型数据,每一个被选中的 checkbox 的 value 被拼接在一起,每个值之间以逗号隔开(,)。
所以在 Action 中定义一个跟 checkbox 的 name 同名的属性来接收这些被选中的 checkbox 的 value 即可。
以下是实现的代码:
前台 HTML 代码:
- 003.Kafka基本概念
nweiren
hadoopkafka
Kafka基本概念:Topic、Partition、Message、Producer、Broker、Consumer。 Topic: 消息源(Message)的分类。 Partition: Topic物理上的分组,一
- Linux环境下安装JDK
roadrunners
jdklinux
1、准备工作
创建JDK的安装目录:
mkdir -p /usr/java/
下载JDK,找到适合自己系统的JDK版本进行下载:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
把JDK安装包下载到/usr/java/目录,然后进行解压:
tar -zxvf jre-7
- Linux忘记root密码的解决思路
tomcat_oracle
linux
1:使用同版本的linux启动系统,chroot到忘记密码的根分区passwd改密码 2:grub启动菜单中加入init=/bin/bash进入系统,不过这时挂载的是只读分区。根据系统的分区情况进一步判断. 3: grub启动菜单中加入 single以单用户进入系统. 4:用以上方法mount到根分区把/etc/passwd中的root密码去除 例如: ro
- 跨浏览器 HTML5 postMessage 方法以及 message 事件模拟实现
xueyou
jsonpjquery框架UIhtml5
postMessage 是 HTML5 新方法,它可以实现跨域窗口之间通讯。到目前为止,只有 IE8+, Firefox 3, Opera 9, Chrome 3和 Safari 4 支持,而本篇文章主要讲述 postMessage 方法与 message 事件跨浏览器实现。postMessage 方法 JSONP 技术不一样,前者是前端擅长跨域文档数据即时通讯,后者擅长针对跨域服务端数据通讯,p