
j2ee
文章平均质量分 69
kongqz
精通互联网电商领域的商业模式、运营、技术架构、运维等端到端的解决方案制定。
现场从事云计算领域工作,精通云计算相关领域的解决方案设计。
展开
-
java版本的图片的缩放剪辑(二)
客户端图片的相关参数的信息分为两个部分的获取的。 第一部分是获取原始图片的相关信息,来使图片显示正确 第二部分是通过js控制图片的缩放以及确认要剪辑图片的相关参数。以便将参数传送到服务器端。 这两个部分只是通过js控制图片的显示,预览最终要裁剪的效果,并没有对服务器上存储的图片进行任何的修改。如图所示: 通过图形可以看到,我们这边的技术难点有两个原创 2008-09-24 22:35:00 · 2972 阅读 · 0 评论 -
jfreechart的柱状图处理
这里主要针对柱状图的常见设置进行简单阐述,不涉及数据库。对应的dataset模块,可以替换成查询数据库的数据处理jfreechart已经升级到1.0.13版本了,效果也是比较精美了。不说了,上代码import java.awt.Color; import java.a转载 2011-09-27 10:25:55 · 1962 阅读 · 0 评论 -
进制转换
十进制转成十六进制: Integer.toHexString(int i) 十进制转成八进制 Integer.toOctalString(int i) 十进制转成二进制转载 2011-10-11 17:59:17 · 1222 阅读 · 0 评论 -
suse linux下jfreechart显示方框问题处理
到windows系统下的fonts中找到simsun.ttf这个字体文件,上传到linux服务器下jre的font目录/usr/java/jdk1.6.0_27/jre/lib/fonts这里我的jdk就是安装到如上目录中。原理就是jdk找不到对应字体才这样显示相原创 2011-10-11 11:21:28 · 1847 阅读 · 0 评论 -
thread sleep 函数的用法
我写了一个大循环,开启了32个线程,开始没有针对内部的循环每次做sleep处理,结果很多进程内的操作没执行完就停止了。加上后就没这个问题了。我们可能经常会用到 Thread.Sleep 函数来使线程挂起一段时间。那么你有没有正确的理解这个函数的用法呢? 1.Thread.Sleep(XXXX)函数就是干这种事的,他告诉操作系统“在未来的多少毫秒内我不参与CPU竞争”。转载 2011-11-15 10:20:52 · 3929 阅读 · 0 评论 -
freemarker的内置处理相关数据的函数
一、 Sequence的内置函数1. sequence?first 返回sequence的第一个值。2. sequence?last 返回sequence的最后一个值。3. sequence?reverse 将sequence的现有顺序反转,即倒序排序4. sequence?size 返回sequence的大小5. sequence?so原创 2012-03-15 16:07:48 · 1183 阅读 · 0 评论 -
JAVA 开发中一些提升性能的关注点
1. 尽量在合适的场合使用单例使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要适用于以下三个方面:第一,控制资源的使用,通过线程同步来控制资源的并发访问;第二,控制实例的产生,以达到节约资源的目的;第三,控制数据共享,在不建立直接关联的条件下,让多个不相关的进程或线程之间实现通信。2. 尽量避免随意使用静态转载 2012-04-11 09:47:49 · 1409 阅读 · 0 评论 -
百万级访问网站前期的技术准备
开了自己域名的博客,第一篇就得来个重磅一点的才对得起这4美金的域名。作为一个技术从业者十年,逛了十年发现有些知识东一榔头西一棒槌的得满世界 看个遍才整理出个头绪,那咱就系统点的从头一步一步的说,一个从日几千访问的小小网站,到日访问一两百万的小网站,怎么才能让它平滑的度过这个阶段,别在 技术上出现先天不足,写给一些技术人员,也写给不懂技术的创业者。对互联网有了解的人都有自己的想法,有人就把想法付转载 2012-04-11 12:09:15 · 1393 阅读 · 0 评论 -
淘宝的KV存储系统的设计思路总结-tair系统
tair系统功能:(主要用来对付那些静态化相关资源)1、作为架设在各类存储介质前边的一层系统2、可以用来存储cache数据,也可以持久化数据一、要解决的问题1、当用户访问数据为海量的时候,并且并发太大的时候直接访问数据库会让数据库被穿透,直接宕机2、淘宝的用户信息和产品信息数据调用量是海量二、设计思路1、初期设计思路(1)、做一层cache来缓存数据,直原创 2012-04-18 19:24:32 · 8195 阅读 · 0 评论 -
海量图片存储策略
一、常规图片存储策略常规的一般400G以下的图片存储可以采用比较传统的分目录的形式例如目录层级为 年份/行业属性/月份/日期/用户属性有几个比较重要的原则就是1、单个目录下的文件个数不要超过2000个,多了寻址较慢,你在linux下ls就能看到数量太多的时候的效果了2、目录层级结构不要太深,这样服务器处理寻址较慢二、海量图片存储策略1、核心难点(1)海原创 2012-04-18 15:41:15 · 15093 阅读 · 3 评论 -
做电商网站的主键策略
一般最常见的主键策略都是自增但是为了应对分布式集群环境。数据库自然不能选择自增,否则并发大的时候会出现主键冲突。一般oracle下选择了sequence的方式,mysql有的会自己设计sequence,有的会用uuid策略。这里对于对外展示的数据表来说,sequence可能不是一个好主意,不管你如何加密,最后都会泄露相关数据信息。所以有些电商互联网公司选择了uuid这个策略。在oracle原创 2012-05-24 12:11:01 · 3231 阅读 · 1 评论 -
hibernate中调用存储过程
我搭建的一个ssh1(spring2.5.6+hibernate3.4+struts1.3.8)框架中需要提供一个调用存储过程的公有方法。 原理:这个其实和ssh没啥关系,主要是我们的java.sql.Connection中已经提供了这样的接口了。我们只是通过hibernate的session来获取我们的Connection而已。 具体的通用接口编码如下: /** * 直原创 2009-03-04 15:41:00 · 13413 阅读 · 6 评论 -
hibernate的主键生成策略
1、自动增长identity适用于MySQL、DB2、MS SQL Server,采用数据库生成的主键,用于为long、short、int类型生成唯一标识使用SQL Server 和 MySQL 的自增字段,这个方法不能放到 Oracle 中,Oracle 不支持自增字段,要设定sequence(MySQL 和 SQL Server 中很常用)数据库中的语法如下:MySQL:cre转载 2013-08-12 14:59:40 · 3245 阅读 · 0 评论 -
在win7*64下配置php开发环境nginx+php
一、概述win7 64位的操作系统,目标是配置PHP环境并且能直接使用,同时不影响java的开发环境nginx:作为web服务器将请求转发给phpfastcgi+php:处理php项目tomcat:处理tomcat项目二、配置步骤以及相关项1、下载nginx我直接下载的nginx1.2版本的文件,直接解压后的目录:E:\nginx-1.2.0\2、下载p原创 2013-08-14 13:56:58 · 12958 阅读 · 0 评论 -
中文乱码在java中URLEncoder.encode方法要调用两次解决
一、场景:1、我在客户端要通过get方式调用服务器端的url,将中文参数做utf-8编码,需要在js中两次的进行编码,服务器端才能用decode方法一次获取。例如:var xing=encodeURIComponent(encodeURIComponent(xing));2、如果我在客户端用java输出汉字作为参数,并且用http协议,也是需要两次才能在服务器端正常的一原创 2013-06-05 10:33:12 · 79579 阅读 · 11 评论 -
JAVA位运算
位移动运算符:例如:3 1)把3转换为二进制数字0000 0000 0000 0000 0000 0000 0000 0011,2)把该数字高位(左侧)的两个零移出,其他的数字都朝左平移2位,3)在低位(右侧)的两个空位补零。则得到的最终结果是0000 0000 0000 0000 0000 0000 0000 1100,转换为十进制是12。同理,>>表示右移. 右移一转载 2012-09-09 12:56:24 · 1494 阅读 · 0 评论 -
大型互联网站解决海量数据的常见策略
大型互联网站的数据存储与传统存储环境相比不仅是一个服务器、一个数据库那么简单,而是由网络设备、存储设备、应用服务器、公用访问接口、应用程序 等多个部分组成的复杂系统。分为 业务数据层、计算层、数据仓储、数据备份,通过应用服务器软件提供数据存储服务,并且通过监控工具对存储单元监控。 随着系统中用户数据量的线性增长,数据量将会越来越多。在这样一个数据不断膨胀的环境中,数据已经如洪水般汹涌泛滥转载 2012-10-29 11:13:16 · 2255 阅读 · 0 评论 -
activiti5.10解决分布式集群部署的主键问题
一、概要综述1、activiti5是jbpm4升级上来的一款最新版工作流引擎,已经将自己的表划分为4类:运行时、通用数据、历史数据、流程相关数据,但是有一个核心问题就是是否支持集群部署,经过我对源码的初步分析发现,他的默认主键策略是全局获取一个通用表中的字段来做增加,在大并发量的情况下会出现主键重复的问题2、activiti5的默认主键策略分析:(1)、每次需要主键的时候从act_原创 2012-09-28 09:47:36 · 13385 阅读 · 3 评论 -
设计一个高并发IM即时通讯软件的思路要点
假如要我设计一个QQ,访问量在百万级别并发。大致功能点:1、上线通知2、群的消息显示3、发送消息4、良好扩展性。增加用户能直接通过增加机器解决5、稳定性6、高性能相关数据性能。1、单个节点能支持一万左右的用户登录2、使用mysql数据库存储用户信息处理策略:1、数据库上如果是百万原创 2011-07-19 09:38:26 · 7105 阅读 · 3 评论 -
ssh2技术框架出现的第一次事务调用抛异常的问题处理
处理数据库连接池空闲时间较长引发的 初次调用异常原创 2011-04-15 10:49:00 · 3010 阅读 · 0 评论 -
攻克防图片盗链
很多大型的网站都对自己的图片做了防止盗链的处理,目的是减轻服务器的压力,方式方法都是各有绝活。对于我们这种想直接通过来访问人家的链接的网站来说的症状就是,人家显示一个警告图片,你想看的图片莫名奇妙的变成了提示页面。品德较好的网站直接让你看到一个大红叉。 为此我们不得不攻克防图片盗链的方式。 思路如下:你直接将图片的链接在浏览器中敲上,肯定可以显示。但是你内嵌到网页中通过img的s原创 2008-09-24 14:12:00 · 1831 阅读 · 0 评论 -
java版本的图片的缩放剪辑(一)
看到开心网和网易的blog在进行个人的头像修改的时候可以选定一个头像然后使用他们提供的固定的选择框进行图片的缩放和剪辑,看到了网上有.net版本的例子,却没有java版本的例子,就此我整理一个。 今天主要记录下策略: 整个开发分成几个部分: 第一部分:上传图片到服务器,然后才能修改,千万不要以为那些图片的修改都是本地的js代码在做得 第二部分:查看要修改的图片,客户端对原创 2008-09-23 22:19:00 · 1645 阅读 · 0 评论 -
java版本的八字计算
看了网上不少的例子,整理一个能计算1900年以后的八字计算程序。同时能获取生肖以及阴历生日 package com.knight.cal;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Dat原创 2008-09-26 14:43:00 · 8432 阅读 · 3 评论 -
上传文件的路径处理
今天一个程序的异常直接将我的linux下的tomcat宕机死掉,查看程序的log4j日志后发现,在tomcat宕机前的最后输出是说我们的程序中写入文件到一个不存在的目录。我检查了下发现,同事将上传图片的路径写死了。指定了一个类似/usr/local/tomcat/usr/projectname/upload 这样的目录。 在开发初期我们因为对很多jdk的不熟悉,常常会犯这种写死操作路径的原创 2008-09-27 21:44:00 · 1743 阅读 · 0 评论 -
java版本的图片的缩放剪辑(三)
看过客户端的脚本特效,剩下的就是将客户端对图片想做的修改的相关数据传送到服务器端了,这个时候我们需要做两布操作,首先是对服务器上的图片进行缩放处理,因为我们的图片剪辑是缩放后的剪辑,其次是对服务器的图片开始进行剪辑。 首先看一下我们的缩放代码 /** * 进行图片的缩放,可以将原始路径(url)的图片缩放后放到另外的路径(newUrl)。如果原创 2008-09-25 21:07:00 · 3682 阅读 · 2 评论 -
ofbiz和应用服务器结合
ofbiz本身默认使用的tomcat,你可以通过启动ofbiz目录下的startofbiz.bat(windows)或者startofbiz.sh(linux)进行启动。但是这种启动方式对于调试和监控带来不变。 如何将ofbiz和tomcat进行挂接就是一个我们要做的工作。经过我在linux下的验证。我们可以将ofbiz和tomcat融合。具体的做法是使用命令:1、安装好jdk和你原创 2009-01-09 08:58:00 · 5591 阅读 · 1 评论 -
freemarker的模板标签获取
In FreeMarker 2.2, Template has an undocumented method for examining the parsed template: getRootTreeNode 使用freemarker模板引擎进行传统的开发有个固定的模式就是我们知道模板上有哪些标签,然后我们会获取这些标签的数据来进行data+model的组合。但是如果模板上的标签名字或者个数不确原创 2009-02-19 09:52:00 · 4284 阅读 · 2 评论 -
freemarker pk velocity
1、概述Velocity是一个简单而且更加轻量级的工具,但是它没有达到FreeMarker能够做的许多任务,而且它的模板语言不是很强大我们认为对于大多数应用程序,FreeMarker比Velocity工作更简单,因为:Ø使用Velocity,你需要寻找特定工具或各种工作环境来一次次的解决典型的模板创作任务,结果会浪费更多时间Ø工作环境经常意味着在Velocity模板中原创 2009-03-04 15:33:00 · 4741 阅读 · 0 评论 -
linux下的java远程调试jpda+tomcat
项目放到linux服务器了,服务器的环境或者数据可能和我们本地不一样,这个时候我们可能需要远程的断点进行调试,来查看请求过程中的各个变量的值。这里我们的应用服务器用的tomcat5.5.17 这个时候你需要知道JPDA这个概念。 简单的概括下JPDA: Java Platform Debugger Architecture(JPDA:Java平台调试架构) 由Java虚拟机原创 2009-03-09 10:00:00 · 23652 阅读 · 1 评论 -
java的System.getProperty()方法可以获取的值
java.versionJava 运行时环境版本java.vendorJava 运行时环境供应商java.vendor.urlJava 供应商的 URLjava.homeJava 安装目录java.vm.specification.version原创 2009-03-13 13:03:00 · 235682 阅读 · 28 评论 -
jnative在linux下对c程序的动态链接库的调用问题及解决方案
我下载了jnative的JNative_1.4RC3_src版本,在windows下按照常规操作步骤,将JNativeCpp.dll文件放到windows/system32目录下,然后进行jni编程,执行情况顺利。 但是当我们将相同的程序放到linux下,并且将libJNativeCpp.so拷贝到/usr/lib下,然后执行的时候,发现我们的程序根本执行不了,这个时候,我进行了断点查看原创 2009-03-26 22:23:00 · 4877 阅读 · 5 评论 -
通过JVM获取相关的服务器信息
在我们想监控我们的JVM状态的时候,除了可以通过JMX这类jvm提供的接口服务,还是可以自己通过程序来编写一些接口来获取服务器状态信息。以下代码我在jdk1.5.10版本上测试通过。 import java.lang.management.CompilationMXBean;import java.lang.management.GarbageCollectorMXBean;imp原创 2009-05-12 16:12:00 · 3809 阅读 · 0 评论 -
imagemagick中间件的安装简要说明
imagemagic的安装简要说明,注意imagemagic的中间件和jmagic的中间件版本的对应这个的安装在jdk6+tomcat6+redhat4v4版本下安装验证通过原创 2010-12-28 17:41:00 · 1251 阅读 · 0 评论 -
跨域共享数据的十种方法
本文永久链接地址: http://www.woiweb.net/10-cross-domain-methods.html跨域共享数据的方法转载 2011-01-27 15:14:00 · 2703 阅读 · 0 评论 -
linux安装使用jprofiler6分析服务器应用状态
<br />1、当应用出现问题时可以用jprofiler进行分析cpu、内存、线程等状态,进而协助排查问题<br />2、此处我使用jprofiler6.2.1进行分析<br />我从官方网站:http://www.ej-technologies.com/products/jprofiler/overview.html下载了最新版本的jprofiler。这里分为两个软件<br />(1)、windows安装的部分:jprofiler_windows_6_2_1.exe<br /> <br />(2)、lin原创 2011-03-15 15:18:00 · 1978 阅读 · 0 评论 -
jprofiler6的使用
<br />JProfiler提供的监测内容<br />1.Memory View<br /> JProfiler 的内存视图部分可以提供动态的内存使用状况更新视图和显示关于内存分配状况信息的视图。<br /> 所有的视图都有几个聚集层并且能够显示现有存在的对象和作为垃圾回收的对象。<br /> All Objects:显示目前系统内存中的全部对象。<br /> Records Objects:显示类或所有已记录对象的包。<br /> Allocation Call Tree: 显示一棵请求树或原创 2011-03-16 09:42:00 · 2339 阅读 · 0 评论 -
struts2+jquery+easyui+datagrid+json 组合显示一个列表组件
<br />一、概述<br /> struts2提供了针对json的插件支持。常规来讲我们将如何将对象数组转成json对象在客户端直接调用呢?尤其和jquery的easyui插件配合使用,这个可能会有很多的问题需要我们解决。这里我只是将几个技术结合阐述。<br />二、将struts2增加对json的支持处理<br />1、增加相关jar包,这里我使用的是struts2.2.1.1版本,将他的官方文件下载下来可以看到我们需要的插件包都在,这里我以maven的pom文件片段说明需要增加的支持jar包。<br原创 2011-04-14 13:36:00 · 18985 阅读 · 5 评论 -
如何在不同编程语言中获取现在的Unix时间戳(Unix timestamp)
如何在不同编程语言中获取现在的Unix时间戳(Unix timestamp)?先上代码进行java时间转换成unix timestampimport java.text.DateFormat;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;/**转载 2013-02-19 10:05:15 · 5342 阅读 · 1 评论