Java-Web
vaanhq
这个作者很懒,什么都没留下…
展开
-
Java中将InputStream读取为String, 各种方法的性能对比
如下, 一共存在11种实现方式及其对应的性能测试结果:1. 使用IOUtils.toString (Apache Utils)String result = IOUtils.toString(inputStream, StandardCharsets.UTF_8); 2. 使用CharStreams (guava)String result = CharStreams.toStrin...原创 2018-09-17 13:12:18 · 3539 阅读 · 0 评论 -
配置JAVA的环境变量
下面开始配置环境变量,右击【我的电脑】---【属性】-----【高级】---【环境变量】,如图: 选择【新建系统变量】--弹出“新建系统变量”对话框,在“变量名”文本框输入“JAVA_HOME”,在“变量值”文本框输入JDK的安装路径(也就是步骤5的文件夹路径),单击“确定”按钮,如图: 在“系统变量”选项区域中查看...原创 2015-12-01 11:35:49 · 76 阅读 · 0 评论 -
Tomcat内存设置详解
Java内存溢出详解 一、常见的Java内存溢出有以下三种: 1. java.lang.OutOfMemoryError: Java heap space ----JVM Heap(堆)溢出JVM在启动的时候会自动设置JVM Heap的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)不可超过物理内存。可以利用JVM提供的-Xmn -Xms -Xmx等选项...原创 2016-11-01 18:53:55 · 89 阅读 · 0 评论 -
RESTful API 设计指南
网络应用程序,分为前端和后端两个部分。当前的发展趋势,就是前端设备层出不穷(手机、平板、桌面电脑、其他专用设备......)。因此,必须有一种统一的机制,方便不同的前端设备与后端进行通信。这导致API构架的流行,甚至出现"API First"的设计思想。RESTful API是目前比较成熟的一套互联网应用程序的API设计理论。我以前写过一篇《理解RESTful架构》,探讨如何理解这个概念。...原创 2016-10-10 19:39:59 · 65 阅读 · 0 评论 -
iframe自适应高度(兼容多种浏览器)
最近些项目遇到用iframe的地方,发现设置的固定高有时不能完全适应项目环境,不是高了就是不够高,在页面里看着很不爽。 想来想去,何不让iframe自适应高度呢。经过一番折腾,最终还是弄出来。下面是实现的源码:<div id="leamain"> <iframe src="#" marginheight="0" marginwidth...原创 2015-11-15 18:32:19 · 321 阅读 · 0 评论 -
Tomcat的URL中文乱码解决以及传输优化
默认的tomcat容器如果直接使用get方式在url中传中文时,传到后台接收会是乱码。 乱码问题原因:tomcat默认的在url传输时是用iso8859-1编码。 解决方案一:在使用get传输参数时,将参数中的中文转换成url格式,也就是使用urlEncode和urlDecode来传输,使用这种方式就是把中文转换成以%开头的编码在url中传输。使用这种方法时,要注...原创 2015-10-12 11:11:49 · 141 阅读 · 0 评论 -
JAVA字符串与字符编码处理的终极解决
图中详细描述了 字符串类String 与 文件File ,ByteBuffer,CharBuffer,byte[] 数组,char[]数组之间的互相转换。 几点心得:1)String类始终是以Unicode编码形式存储.2)注意String.getBytes()的使用: 如果不带字符集参数,就会依赖于JVM的字符集编码,LINUX上一般为UNI...原创 2015-09-25 15:46:27 · 205 阅读 · 0 评论 -
J2EEi企业开发框架和界面大全
功能特点:1、适配所有设备(PC、平板、手机等),兼容所有浏览器(Chrome、Firefox、Opera、Safari、IE等),适用所有项目(MIS管理信息系统、OA办公系统、ERP企业资源规划系统、CRM客户关系管理系统、网站、管理后台等)。2、快速开发,敏捷的数据持久层解决方案。 2.1、事务自动处理。 2.2、O/R Mapp...原创 2015-08-20 18:31:59 · 271 阅读 · 0 评论 -
JSONObject使用方法
package com.common.bssp.common.util; import java.util.Date;import java.util.List; import net.sf.json.JSONArray;import net.sf.json.JSONObject; public class JsonUtil { public st...原创 2015-07-13 14:32:19 · 159 阅读 · 0 评论 -
BigDecimal如何比较是否相等
例子:BigDecimal a = new BigDecimal("2.00");BigDecmial b = new BigDecimal(2);System.out.println(a.equals(b));输出结果是:false原因是:BigDecimal比较时,不仅比较值,而且还比较精度???解决方法:BigDecimal a = new BigDecimal...原创 2016-11-29 18:30:24 · 4248 阅读 · 0 评论 -
Filter 过滤器
原文链接:http://tianweili.github.io/blog/2015/01/26/java-filter/1、简介 Filter也称之为过滤器,它是Servlet技术中最实用的技术,WEB开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, 静态图片文件或静态 html 文件等进行拦截,从而实现一些特殊的功能。例如实现URL级...原创 2017-04-18 09:32:08 · 64 阅读 · 0 评论 -
Java Socket接收和发送(字符串)
备注:必须先运行服务器端,然后运行客户端 1.客户端 LoginClient.java package pb.socket.LoginStr; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io...原创 2016-01-22 15:23:23 · 1958 阅读 · 0 评论 -
浅谈@RequestMapping @ResponseBody 和 @RequestBody 注解的用法与区别
1.@RequestMapping国际惯例先介绍什么是@RequestMapping,@RequestMapping 是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径;用于方法上,表示在类的父路径下追加方法上注解中的地址将会访问到该方法,此处需注意@RequestMapping用在类上可以没用,但是用在方法上必须有。例如:...原创 2018-07-29 21:10:33 · 117 阅读 · 0 评论 -
关于split截取字符时,问号的特殊情况
有一段字符 tring str = “gjjxxcx/gjjxx_cx.jsp?zgzh=1010024000019”如果使用如下代码:String[] strArray = str.split("gjjxx_cx.jsp?");System.out.println("strArray[0]:"+strArray[0]);System.out.println("strArray[...原创 2018-06-10 00:09:25 · 5370 阅读 · 0 评论 -
CentOS下安装JDK的三种方法
由于各Linux开发厂商的不同,因此不同开发厂商的Linux版本操作细节也不一样,今天就来说一下CentOS下JDK的安装:方法一:手动解压JDK的压缩包,然后设置环境变量1.在/usr/目录下创建java目录[root@localhost ~]# mkdir/usr/java[root@localhost ~]# cd /usr/java2.下载jdk,然后解压[root@...原创 2018-04-15 23:31:42 · 90 阅读 · 0 评论 -
报错:No main manifest attribute
报错信息在Linux系统下执行Java -jar XXX.jar com.HelloWorld 往往会提示:No main manifest attribute, in XXX.jar原因如下:正常情况下,java打包成jar包需要在MANIFEST.MF中指定Main-Class项以便运行java -jar XXX.jar时找到对应的主类。因为-jar的含义就是后面跟的jar包是...原创 2018-04-15 23:21:39 · 1195 阅读 · 0 评论 -
Lombok 安装、入门 - 消除冗长的 java 代码
前言: 逛开源社区的时候无意发现的,用了一段时间,觉得还可以,特此推荐一下。 lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码。特别是相对于 POJO,光说不做不是我的风格,先来看看吧。lombok 的官方网址:http://projectlombok.org/ lombok 其实到这里我就介绍完了,开个玩笑,其实官网上有 lombo...原创 2017-10-25 22:31:50 · 91 阅读 · 0 评论 -
HttpClient使用详解
Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们再讨论),它不仅是客户端发送Http请求变得容易,而且也方便了开发人员测试接口(基于Http协议的),即提高了开发的效率,也方便提高代码的健壮性。因此熟练掌握HttpClient是很重要的必修内容,掌握HttpClient后,相信对...原创 2016-04-04 14:45:52 · 79 阅读 · 0 评论 -
Java实现tomcat启动时自动运行代码
方法1:tomcat 自动执行servlet写一个servlet,在init()方法中写好想要执行的程序,程序如下:eclipse新建一个web\Dynamic Web Project , name = myweb1 , 把tomcat中的 servlet-api.jar复制到lib中,新建一个类MyServlet.java, 继承 javax.servlet.HttpServle...原创 2014-12-07 22:22:35 · 1319 阅读 · 0 评论 -
Java中文字符所占的字节数是多少?
Java语言中,中文字符所占的字节数取决于字符的编码方式,一般情况下,采用ISO8859-1编码方式时,一个中文字符与一个英文字符一样只占1个字节;采用GB2312或GBK编码方式时,一个中文字符占2个字节;而采用UTF-8编码方式时,一个中文字符会占3个字节。我们可以通过String类的getBytes(String charsetName)方法来获取到字符串以指定编码方式编码后所得到的字...原创 2016-01-22 15:25:50 · 355 阅读 · 0 评论 -
详解Java解析XML的四种方法
XML现在已经成为一种通用的数据交换格式,它的平台无关性,语言无关性,系统无关性,给数据集成与交互带来了极大的方便。对于XML本身的语法知识与技术细节,需要阅读相关的技术文献,这里面包括的内容有DOM(Document Object Model),DTD(Document Type Definition),SAX(Simple API for XML),XSD(Xml Schema Defini...原创 2015-07-13 12:23:30 · 55 阅读 · 0 评论 -
关于eclipse部署时"Add Deployment"错误
出现这种错误一般是导入非本机项目所致,原因就是JDK版本不一致,这个小小的问题可能没引起人的注意。 An internal error occurred during: "Add Deployment". 具体步骤如下: 右键项目名→Properties→Java Build Path→Libraries→选中JRE System Library[Sun JDK 1.6.0...原创 2015-07-10 13:09:58 · 801 阅读 · 0 评论 -
Web.xml配置详解之context-param
转自:http://blog.csdn.net/liaoxiaohua1981/article/details/6759206• 格式定义:01. <context-param> 02. <param-name>contextConfigLocation</param-name> 03. <param-value>contextConfigL...原创 2015-05-15 09:27:47 · 755 阅读 · 0 评论 -
web.xml 配置中classpath: 与classpath*:的区别
首先 classpath是指 WEB-INF文件夹下的classes目录 解释classes含义: 1.存放各种资源配置文件 eg.init.properties log4j.properties struts.xml 2.存放模板文件 eg.actionerror.ftl 3.存放class文件 对应的是项目开发时的src目录编译文件 总结:这是一个定位资源的入口 如果你知道开发过程中有这么一...原创 2015-04-29 10:55:31 · 73 阅读 · 0 评论 -
sun.misc.BASE64Encoder找不到jar包的解决方法
1.右键项目-》属性-》java bulid path-》jre System Library-》access rules-》resolution选择accessible,下面填上** 点击确定即可!!!2.在MyEclipse中编写Java代码时,用到了BASE64Decoder,import sun.misc.BASE64Decoder;可是Eclipse提示: Access re...原创 2015-04-29 10:14:32 · 98 阅读 · 0 评论 -
文件上传示例代码(1)
jar包:commons-fileupload.jarcommons-io.jarJsp代码[code="java"] 导入号码文件: 说明:目前支持txt格式文件,文件大小不超过10M. 模板下载 ...原创 2015-03-23 08:16:31 · 134 阅读 · 0 评论 -
JSP中include指令和include行为区别
[size=medium] 我们都知道在jsp中include有两种形式,分别是 前者是指令元素、后者是行为元素。具体它们将在何处用?如何用及它们有什么区别?这应该是很多人看到它都会想到的问题。下面一起来看看吧。 通常当应用程序中所有的页面的某些部分(例如标题、页脚和导航栏)都相同的时候,我们就可以考虑用include。具体在哪些时候用,哪些时候用.这种形...原创 2015-03-19 10:27:42 · 73 阅读 · 0 评论 -
JSTL 标签库详解(一个不漏)
JSTL 标签库详解(一个不漏)采集自:www.web-tag.net 转载请保留出处 [b]catch[/b]动作用于捕获JSP元素在其体中抛出的异常。示范代码: ${param.sampleSingleValue[9] == 3} ${err} [b]choose[/b] 用于控制嵌套和动作的处理。示范代码:...原创 2015-03-17 11:18:21 · 89 阅读 · 0 评论 -
查看TOMCAT内存使用情况(JAVA)
最近做个项目,就是要取得cpu占有率等等的系统信息,一开始以为要用动态链接库了,但后来发现可以像下面这样做,不去调用jni,这样省去了很多看新技术的时间o(∩_∩)o...在Java中,可以获得总的物理内存、剩余的物理内存、已使用的物理内存等信息,下面例子可以取得这些信息,并且获得在Windows下的内存使用率。 首先编写一个MonitorInfoBean类,用来装载监控的...原创 2015-03-17 10:51:41 · 376 阅读 · 0 评论 -
查看TOMCAT内存使用情况(JSP)
您可以用把下列代码放在一个JSP文件中,如写入memory.jsp,放到你的TOMCAT下的任何一应用中,就可以看到你的TOMCAT总大可使用多少内存,已经使用了多少.[code="java"]JVM memory[/code] 同样也可以进入tomcat管理页面,查看内存使用情况,但是平常在生产环境都禁掉了管理员登录页...原创 2015-03-17 10:48:46 · 726 阅读 · 1 评论 -
Filter及FilterChain的使用详解
一、Filter的介绍及使用什么是过滤器?与Servlet相似,过滤器是一些web应用程序组件,可以绑定到一个web应用程序中。但是与其他web应用程序组件不同的是,过滤器是"链"在容器的处理过程中的。这就意味着它们会在servlet处理器之前访问一个进入的请求,并且在外发响应信息返回到客户前访问这些响应信息。这种访问使得过滤器可以检查并修改请求和响应的内容。过滤器适用于那些地方?...原创 2015-05-15 10:05:07 · 194 阅读 · 0 评论 -
Quartz作业调度框架
Quartz 是一个开源的作业调度框架,它完全由 Java 写成,并设计用于 J2SE 和 J2EE 应用中。它提供了巨大的灵活性而不牺牲简单性。你能够用它来为执行一个作业而创建简单的或复杂的调度。本系统结合通过 Spring 来集成 Quartz 。Quartz 下载地址 : http://grepcode.com/snapshot/repo1.maven.o...原创 2016-04-20 14:11:43 · 91 阅读 · 0 评论 -
企业数据总线(ESB)和注册服务管理(dubbo)的区别
一、概述1、什么是ESB就是企业数据总线的意思,他的核心功能就是兼容各种协议接口,可以将数据在各种协议之间进行流转,并且可以针对数据格式进行编排转换。(格式转换、协议转换、代理、编排、安全控制、监控、不支持高并发,类似于路由器维护着一张路由表进行路由转发)代表性的项目有:JBOSS ESB,Mule,Camel 以及一些其他的esb项目 2、什么是服务注册就是将所有的服务...原创 2016-04-20 17:50:36 · 225 阅读 · 0 评论 -
window.parent与window.openner区别介绍
今天总结一下js中几个对象的区别和用法: 首先来说说 parent.window与top.window的用法 "window.location.href"、"location.href"是本页面跳转 "parent.location.href"是上一层页面跳转 "top.location.href"是最外层的页面跳转 举例说明: 如果A,B,C,D都是jsp,D是C的iframe,C是B的ifr...原创 2015-07-06 10:34:10 · 81 阅读 · 0 评论 -
深入了解Session
注:request.getSession(true):若存在会话则返回该会话,否则新建一个会话。request.getSession(false):若存在会话则返回该会话,否则返回NULL session在web开发中是一个非常重要的概念,这个概念很抽象,很难定义,也是最让人迷惑的一个名词,也是最多被滥用的名字之一,在不同的场合,session一次的含义也很不相同。这里只探讨H...原创 2015-07-03 11:18:41 · 97 阅读 · 0 评论 -
break和break lable的用法(区别continue)
public class BreakTest //一次循环体, 这里加不加Label无区别 private static void once() { for (int index = 0; true; index ++) { if (index == 10) { System.out.println(...原创 2015-07-02 18:22:08 · 243 阅读 · 0 评论 -
Cookie/Session机制详解
来自:http://blog.csdn.net/fangaoxin/article/details/6952954 会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。本章将系统地讲述Cookie与Session机制...原创 2015-07-02 18:21:12 · 124 阅读 · 0 评论 -
getJdbcTemplate中execute和update的区别
1、update可以带参数,而execute不可以。例如:jdbcTemplate.update("update TableA set name = 'Andy’ where id=?", new Object[] {new Integer(3)}); jdbcTemplate.execute("update TableA set name = 'Andy’ where id=3"); 2、up...原创 2016-04-29 17:48:54 · 1290 阅读 · 0 评论 -
处理大数字BigInteger与BigDecimal
关键技术剖析:² BigInteger:支持任意精度的整数,可以精确地表示任意大小的整数值,同时在运算过程中不会丢失任何信息。² BigDecimal:可以精确地表示任意精度的小数,同时在运算过程中不会丢失任何信息。 源码:import java.math.BigDecimal;import java.math.BigInteger; public clas...原创 2016-04-27 17:01:33 · 80 阅读 · 0 评论 -
深入理解 Java中的 流 (Stream)
个人小站,正在持续整理中,欢迎访问:http://shitouer.cn小站博文地址:深入理解 Java中的 流(Stream)机制最近在看《Hadoop:The Definitive Guide》,对其分布式文件系统HDFS的Streaming data access不能理解。基于流的数据读写,太抽象了,什么叫基于流,什么是流?Hadoop是Java语言写的,所以想理解好Hadoop的...原创 2016-04-27 16:58:42 · 92 阅读 · 0 评论