摘要: Servlet 2.3 ...Servlet 2.4 ...Servlet 2.5 ... action-servlet.xml或 阅读全文
posted @ 2014-01-06 08:59 锐洋智能 阅读(1424) 评论(0) 推荐(0)
摘要: Spring项目组今天发布了Spring 框架4.0.0版本。Spring是一个开源的轻量级Java SE和Java EE开发应用框架,其目的是用于简化企业级应用程序开发。 Spring框架第一个版本发布于2004年,自发布以来已历经三个主要版本更新:Spring 2.0提供了XML命名空间和AspectJ支持;Spring 2.5增加了注释驱动(annotation-driven)的配置支持;Spring 3.0增加了对Java 5+版本的支持和@Configuration模型。今天发布的Spring 4.0.0则首次增加对Java 8的支持。Spring 4.0.0主要改进包括:改进了入. 阅读全文
posted @ 2013-12-14 11:57 锐洋智能 阅读(620) 评论(0) 推荐(0)
摘要: Bean Serializable Interface 的接口让BEAN可以串行化,将其变成一个可保存为以后使用的二进制流。当一个BEAN被系列化到磁盘上或者其他任何地方,其状态被保存起来,其中的属性 值也不会改变。在BEAN的规范中,JSP并没有要求BEAN实现Serializable接口。但是,如果您希望自己控制您所创建的组件的 serialization进程,或者您想serialize并不是标准组件扩展的组件,您必须了解serialization and deserialization的细节。 有几个原因你会把BEAN冷藏起来以备后用。有些服务器通过将所有的SESSION 数据(包括B. 阅读全文
posted @ 2013-12-08 10:41 锐洋智能 阅读(479) 评论(0) 推荐(0)
摘要: Quartz,每次执行job,job永远是全新的对象,但是,如果job实现org.quartz.StatefulJob接口,而不是job接口.此时JobDetail的JobDataMap将会共享一个对象。注意:当实现有状态接口,StatefulJob时,只有JobDetail的JobDataMap是共用的,其他的,比如,Job本身,Trigger等,仍然每次执行的时候是全新的对象。所以,只有JobDetail的JobDataMap是共用的,其他的trigger.getJobDataMap(),context.getMergedJobDataMap(),等这些JobDataMap,任然是全新的以 阅读全文
posted @ 2013-12-08 09:53 锐洋智能 阅读(14849) 评论(1) 推荐(2)
摘要: JobDataMap被用来保存一系列的(序列化的)对象,这些对象在Job执行时可以得到。JobDataMap是Java Map接口的一个实现,而且还增加了一些存储和读取主类型数据的便捷方法。 如果使用一个持久的JobStore,那么必须注意存放在JobDataMap中的内容。因为放入JobDataMap中的内容将被序列化,而且容易出现类型转换问题。很明显,标准Java类型将是非常安全的,但除此之外的类型,任何时候,只要有人改变了你要序列化其实例的类的定义,就要注意是否打破了程序的兼容性。另外,你可以对JobStore和JobDataMap采用一种使用模式:就是只把主类型和String类型存放在 阅读全文
posted @ 2013-12-07 21:50 锐洋智能 阅读(4613) 评论(0) 推荐(0)
摘要: 本例中我启动了两个Tomcat作效果测试,先看效果图:现在我们关闭一个Tomcat注意红线的位置和设置的参数有关#org.quartz.jobStore.clusterCheckinInterval 属性定义了Scheduler 实例检入到数据库中的频率(单位:毫秒)。 #Scheduler 检查是... 阅读全文
posted @ 2013-12-07 18:00 锐洋智能 阅读(3428) 评论(2) 推荐(1)
摘要: 由于在集群环境下定时器会出现并发和重复执行的问题,我再三考虑记录有5一、把定时器模块单独拿出来放到一台tomcat或者新建一个Java工程手动启动定时器,这样定时器的任务就可以从原来的集群中抽离开来,原来的tomcat集群不再执行定时器任务,而是交给定时器应用单独执行。二、不从集群当中抽离定时器,而是采用另外一个应用统一调度,每次只有一台tomcat执行定时器任务。三、 采用数据库来记录每台tomcat定时器执行的状态,执行的状态可以采用当前执行的时间点来区分,当定时器执行的时候首先应该把当前时间点记录到数据库中 防止另外一台机器重复执行,当另外一台tomcat上面的定时器执行的时候首先会比较 阅读全文
posted @ 2013-12-05 09:54 锐洋智能 阅读(8412) 评论(0) 推荐(0)
摘要: 以前的项目使用Nginx作为反向代理实现了多个Tomcat的负载均衡,为了实现多个Tomcat之间的session共享,使用了开源的Memcached-Session-Manager框架。 此框架的优势: 1、支持Tomcat6和Tomcat7 2、操作粘性或不黏性Session 3、没有单点故障 4、Tomcat的故障转移 5、Memcached的故障转移 6、可插拔的Session序列化 7、支持异步保存Session 8、Sessions发送到Memcached如果他确实修改了 9、JMX管理和监控 步骤: 以下操作步骤的前提... 阅读全文
posted @ 2013-11-30 18:36 锐洋智能 阅读(474) 评论(0) 推荐(0)
摘要: 假设Memcached在如下目录:C:\memcached\memcached.exe在CMD中执行如下命令即可再安装一个Memcached服务(记得换个端口号啊!):sc create "Memcached Server1" start= auto binPath= "C:\memcached\memcached.exe -d runservice -m 32 -p 11220 -l 127.0.0.1" DisplayName= "Memcached Server1"下面是启动、停止、卸载该服务的命令:sc start " 阅读全文
posted @ 2013-11-30 18:17 锐洋智能 阅读(1440) 评论(0) 推荐(0)
摘要: 在 web.xml里面加入 下面的代码: validatecode webapp.servlet.ValidateCodeServlet validatecode /images/validatecode.jpeg servlet类:import java.awt.Color;import java.awt.Font;import java.awt.Graphics2D;import java.awt.image.BufferedImage;import java.util.Random;import javax.imageio.ImageIO;import javax.ser... 阅读全文
posted @ 2013-11-30 13:08 锐洋智能 阅读(3584) 评论(0) 推荐(1)
摘要: 我 们都知道对于一些大型的web2.0的网站,在正式部署时一般是部署在不同故障域的多台应用服务器上,以j2ee应用为例,一般我们都会部署在 tomcat下,假如我们部署了10台tomcat服务器,那这10台tomcat可能是部署在不同的机器上,然后将应用程序copy到这10台 tomcat下,然后启动所有tomcat,一般来说这样做的目的是为了达到负载均衡以及避免单点故障,另外也考虑到国内网络环境的原因,避免跨网络运营 商访问而导致访问速度低下的问题,当然不要忘了坐镇这10台tomcat前端的还有我们的反向代理服务器,比如nginx,这个就是另一个话题了,我今天 主要讲的是,对于这种分布式to 阅读全文
posted @ 2013-11-30 08:46 锐洋智能 阅读(547) 评论(0) 推荐(0)
摘要: 在windows下作nginx负载均衡测试。nginx的配置文件如下: worker_processes 1;events {worker_connections 1024;}http {includemime.types;default_type application/octet-stream;upstream localhost {server 127.0.0.1:8080 weight=1 max_fails=2fail_timeout=30s;server 127.0.0.1:8081 weight=1 max_fails=2fail_timeout=30s;}sendfileon; 阅读全文
posted @ 2013-11-30 06:50 锐洋智能 阅读(1640) 评论(0) 推荐(0)
摘要: 研究tomcat做负载均衡的时候如何实现ha,还有就是不采用session复制的方法做集群。想到的是将session全部存储在后端的缓存服务器中。正好网上有这么一个工具Memcached-session-manager(后面简称msm),所以直接扒下来用了。地址如下:http://code.google.com/p/memcached-session-manager/msm支持 stickty(沾粘会话)和non-sticky(非沾粘会话)两种集群方式。sticky就是前端的loadbanlence能保证每个用户的请求都路由到了同一个tomcat上。non-sticky则每一次请求都可能路由到 阅读全文
posted @ 2013-11-29 23:06 锐洋智能 阅读(4653) 评论(0) 推荐(0)
摘要: 一,环境说明操作系统是Windows7家庭版(有点不专业哦,呵呵!),JDK是1.6的版本,Tomcat是apache-tomcat-6.0.35-windows-x86,下载链接:http://tomcat.apache.org/Nginx是nginx-1.3.0,下载链接:http://nginx.org/en/download.htmlMemcached是memcached-1.2.6-win32-bin,下载链接:http://code.jellycan.com/files/memcached-1.2.6-win32-bin.zip,http://blog.couchbase.com/ 阅读全文
posted @ 2013-11-29 21:59 锐洋智能 阅读(2534) 评论(0) 推荐(0)
摘要: 今天因为在调试一个程序,因为工程中用到spring,每次修改类代码时都要重启服务器,搞得很郁闷,于是上网找找有没有可以让java代码每次修改之后 直接加载到服务器的,找了一些还果真有,不过有些方法我试了之后还是不行,最终找到一个可行的方法,在此记下: javaRebel是一个jvm插件,http://www.zeroturnaround.com/jrebel/current/(下载地址) 用起来挺简单的,首先下载javaRebel ,然后打开 MyEclispse 中 Window--Preference--MyEclipse Enterprise Workbench--Servers--T. 阅读全文
posted @ 2013-11-29 17:54 锐洋智能 阅读(758) 评论(0) 推荐(0)
摘要: 在开发过程中我们肯定会遇到这样的问题,当我们调试程序的时候,走到一个地方发现引用了一个第三方的东西,点进去一看,会出现一下的画面,没有源代码!!!!这让人很头疼,今天给大家介绍一个Myeclipse上可以用的反编译插件 jad jadclipse,这样就永远与上面的界面说再见了。 jad是java的反编译工具,是命令行执行,反编译出来的源文件可读性较高。 可惜用起来不太方便。还好找到eclipse下的插件,叫jadclipse,安装好之后,可在Eclipse中双击.class文件,就能直接看源文件,或 jar包中的class文件,也可以直接反编译[可直接查看]。 点解下载插件(如果... 阅读全文
posted @ 2013-11-29 17:39 锐洋智能 阅读(462) 评论(0) 推荐(0)
摘要: 最 近的项目是SSH,View层采用Freemarker,但是遇到了一个很大问题,每次修改完ftl文件,都要重新启动tomcat才可以看到所修改的内 容,不但麻烦,而且浪费时间,特别怀念jsp,后来在网上查找解决办法,原来只是一个配置项的问题,对直freemarker的了解又加深了一步,原理及 修改办法如下(以下部分为转载^_^):一般来讲,模版文件改动不会很频繁,在一个流量非常大的网站中,如果频繁的读取模版文件对系统的负担还是很重的,因此 FreeMarker 通过将模版文件的内容进行缓存,来降低模版文件读取的频次,降低系统的负载。当处理某个模版时,FreeMarker 直接从缓存中返回对应 阅读全文
posted @ 2013-11-29 17:05 锐洋智能 阅读(2697) 评论(1) 推荐(0)
摘要: 淘宝用的是JBoss,框架是iBATIS,缓存服务器是自己开发的,基本遵循SNA架构,水平扩展,数据库是Oracle,阿里集团的DBA几乎是国内最强悍的。目前淘宝的系统架构正在重构,计划用两到三年时间重写,目标有两个:1、水平扩展已经不满足需求了,还需要水平加垂直扩展 2、开放API,让店家可以把外部网站资源集成到淘宝,不必直接在淘宝开店淘宝首席架构师是原来JBoss的Ben Wang,现在正在招募技术高手加盟,从事这项很有挑战性的工作:设计下一代开放性、支撑数十亿访问量的在线电子商务网站,有意着可以和我联系,向我投递简历: fankai@gmail.com淘宝架构更详细的情况就不方便透露了。 阅读全文
posted @ 2013-11-27 07:25 锐洋智能 阅读(1166) 评论(0) 推荐(0)
摘要: Flashcache是Facebook技术团队的又一力作,最初是为加速MySQL设计的。Flashcache是在Linux层面的,所以任何受磁盘IO困绕的软件或应用都可以方便的使用之。1. Why Flashcache随着时间的流逝,网站上的数据一直在不停的积累。如果你经营的只是一个博客的话,这不会是问题,因为10G的空间,大概就够你写一辈子了(如果放在硬盘上,其实一辈子很短)。如果你恰巧在一个快速增长的公司,数据会越来越多,从MB,到GB,再到TB。如果将这些数据全部放在大容量的SATA、SAS盘上时,会发现性能(响应时间)不够;如果全放在SSD上时,又会发现成本很高。即使公司能够大气 到都 阅读全文
posted @ 2013-11-27 07:08 锐洋智能 阅读(700) 评论(0) 推荐(0)
摘要: 最近,由于项目需要,在做关于flashcache的一些工作,主要涉及模块组织、元数据管理及数据分布、读写流程分析、数据在磁盘和 cache(SSD)之间的调度、缺点及可优化方向等一些方面的分析研究。也想,抽空写一下心得,整理一下最近工作的思路,以弥补自己不善于表达的恶习。 特别是,要深入下去的话,会涉及到整个Linux系统栈的各个层次,从文件系统、磁盘缓存、通用块层、驱动层,以及DM的工作流程(细节),也遇到了很多 问题,像DM层基于split_bio如何做拆分,在拆分中的边界问题等,不可能一下子解决,也趁此机会,记录下心里的困惑。好了,不啰嗦了,马上开始!还是从源头讲起。。。flashcac 阅读全文
posted @ 2013-11-27 07:05 锐洋智能 阅读(2513) 评论(0) 推荐(0)
摘要: 江枫先给我们介绍一下自己,和你在这次淘宝“双十一”事件中所扮演的角色? 大家好,我是淘宝技术保障部的江枫。目前主要负责数据库的稳定性这一块。双十一这一天,我主要是负责协调整个数据库团队和保障整个数据库在“双十一”过程中的稳定性不受任何影响。 那给我们详细的谈一下淘宝网现在整个数据库整体的一个架构,包括它硬件的组成。 淘 宝的数据库发展到今天,已经是一个非常复杂的系统。我大概算了一下,淘宝目前所有的数据库服务器加起来可能已经超过800台。那在这么一个规模底下,淘宝 的数据库团队这么多年也是随着淘宝的业务发展一起成长起来的,但淘宝数据库目前核心的数据库还在小型机和高端的存储上面,还有很多的数... 阅读全文
posted @ 2013-11-27 07:01 锐洋智能 阅读(1575) 评论(0) 推荐(0)
摘要: 对于二次开发来说,很大一部分就找找文件和找数据库的变化情况对于数据库变化。还没有发现比较好用的监控数据库变化监控软件。今天,我就给大家介绍一个如何使用mysql自带的功能监控数据库变化1、打开数据库配置文件my.ini (一般在数据库安装目录)(D:\MYSQL)2、在数据库的最后一行添加log=log.txt代码3、重启mysql数据库4、去数据库数据目录 我的是(D:\MYSQL\data) 你会发现多了一个log.txt文件我的是在C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.5\dat 阅读全文
posted @ 2013-11-26 13:06 锐洋智能 阅读(48153) 评论(4) 推荐(1)
摘要: 使用不同的兩個帳戶发送email时,第一个账户可以发送成功,但到第二个账户的时候就报出了501mailfromaddressmustbesameasauthorizationuser的错误。具体代码如下:importjava.util.Date;importjava.util.List;importjava.util.Properties;importjavax.mail.Address;importjavax.mail.Authenticator;importjavax.mail.Message;importjavax.mail.Session;importjavax.mail.Transp 阅读全文
posted @ 2013-11-25 22:59 锐洋智能 阅读(16835) 评论(1) 推荐(2)
摘要: LocalSessionFactoryBean有好几个属性用来查找hibernate映射文件: mappingResources、mappingLocations、mappingDirectoryLocations与mappingJarLocations 1.mappingResources:指定classpath下具体映射文件名 eg: xml代码 或者利用list同时指定多个 映射文件 cn/com/env/DAO/tickets/Tusers.hbm.xml cn/com/env/DAO/tickets/Tprojectneed.hbm.xml 2.ma... 阅读全文
posted @ 2013-11-24 19:38 锐洋智能 阅读(445) 评论(0) 推荐(0)
摘要: DB2是IBM的数据库产品,近年来Oracle、Sybase等数据库的大力发展曾使很多人认为DB2将逐步退出数据库市场,但几年过去了,DB2不但没有退出的迹象,反而一步步发展壮大,逐步夺回失去的市场。在这篇文章中我将其与Oracle、Sybase等数据库作一简单的对比,希望能让读者了解DB2能屹立不倒的原因。 DB2与Oracle比较 开放性/可移植性 IBM DB2 UDB在各层面,从网络协议的支持到应用开发程序的编程接口,数据库存储程序及触发器,服务器之间的分布式运作,都是基于最新的国际标准,以确保其开放性及移植性。ORACLE的许多功能都是使用其私有的,非开放性的技术。例如:ORA... 阅读全文
posted @ 2013-11-23 23:54 锐洋智能 阅读(1302) 评论(0) 推荐(0)
摘要: 整合Spring3.1.2 与 Hibernate 4.1.8首先准备整合jar:Spring3.1.2:org.springframework.aop-3.1.2.RELEASE.jarorg.springframework.asm-3.1.2.RELEASE.jarorg.springframework.aspects-3.1.2.RELEASE.jarorg.springframework.beans-3.1.2.RELEASE.jarorg.springframework.context.support-3.1.2.RELEASE.jarorg.springframework.cont 阅读全文
posted @ 2013-11-23 23:49 锐洋智能 阅读(9591) 评论(0) 推荐(2)
摘要: 1.1 测试环境:操作系统:windows xp sp3 数据库:mysql 5.1 1.2 测试条件:initialSize=30; maxSize=200; minSize=30; 其余参数为默认值;1.3 测试代码:利用JAVA代码模拟多线程对这三种数据库连接池进行测试,通过花费的时间判断效率 DBTest.java: public class DBTest implements Runnable /*extends Thread*/ { public long date1=0; private static Proxool proxool; public static int coun 阅读全文
posted @ 2013-11-23 19:50 锐洋智能 阅读(490) 评论(0) 推荐(0)
摘要: 背景前段时间做了个项目,主要优化一个产品页面。整个优化过程中,针对velocity的分析过程占了比较大的比重,这里做一下整理和记录。描述velocity版本:Java代码 org.apache.velocityvelocity1.6.4优化1: 锁优化通过velocimacro.library.autoreload=false进行关闭autoreload,因为使用了同步锁,非常影响性能Java代码 "TP-Processor20"daemonprio=10tid=0x00002aab4c7cb800nid=0x3d46waitingformonitorentry[0x000 阅读全文
posted @ 2013-11-22 07:50 锐洋智能 阅读(3464) 评论(0) 推荐(0)
摘要: 下载了最新的JUnit版本,是4.11,结果尝试使用发现总是报java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing这样的错误,上网查了一下,一般的解决方案是,换一个低一点的版本就好了。还有人说,是缺少hamcrest的包。去官网又看了一下,结果发现这样一段话:junit.jar: Includes the Hamcrest classes. The simple all-in-one solution to get started quickly.Starting with version 4.11, Hamcrest is n 阅读全文
posted @ 2013-11-20 11:31 锐洋智能 阅读(606) 评论(0) 推荐(0)
摘要: 今天在网上部署项目的时候出现在了问题 tomcat一直部署不上 网上查了一下 原因记下来供大家查看[plain] Deployment failure on Tomcat 6.x. Could not copy all resources to D:\Program Files\apache-tomcat-6.0.16\webapps\fuNan_conv. If a file is locked, you can wait until the lock times out to redeploy, or stop the server and redeploy, or manually re 阅读全文
posted @ 2013-11-18 11:33 锐洋智能 阅读(3937) 评论(0) 推荐(0)
摘要: 步骤:1、下载相关包 quartz-2.2.1.jar quartz-jobs-2.2.1.jar spring相关jar包2、编写配置文件静态 say */10 * * ? * * 3、动态 动态定时事件效果图: 阅读全文
posted @ 2013-10-14 22:43 锐洋智能 阅读(11002) 评论(4) 推荐(0)
摘要: 在进行大批量数据insert的时候,我使用的是hibernate的进行save,而数据库采用mysql.但是在save的时候,速度很慢。 刚开始以为是MYSQL进行DNS解析的问题,于是修改hosts文件或修改my.ini文件,最终都不管用,后来发现,原来我的表的格式是Innodb(因为我是用hibernate自动生成表结构生成的),于是我将其引擎改为MYISAM,这样的话,速度超快。 当然,进行批量插入时,如果数据量到达了千万级别,一定得先看硬盘够不够了,不然会郁闷的 阅读全文
posted @ 2013-09-21 12:02 锐洋智能 阅读(3725) 评论(0) 推荐(0)
摘要: 需求:要实现多文件上传,且要支持手机等移动设备... springmvc文件上传真头疼,网上搜了半天没发现都是TMD的用submit按钮提交到后台的,就没有插件的吗?最后发现了fineUploader 先看一下电脑版的 再看一下手机上的运行效果: 目前发现的问题:FineUploader的on "c 阅读全文
posted @ 2013-09-19 22:30 锐洋智能 阅读(7668) 评论(7) 推荐(2)
摘要: 案例:工人工资按天按班别存入数据库,想实现一根据部门及员工姓名还有日期的汇总表...汇总表效果如下:还可以根据XY坐标对应的值查询显示该日期的明细记细2013-09-06升级(如是当月最多只能显示当前日期) 阅读全文
posted @ 2013-09-08 21:29 锐洋智能 阅读(327) 评论(0) 推荐(0)
摘要: 环境:spring3.2.2+jquery用户的附件管理要实现发送附件可以是单个也可以是多个。由于用户在上传附件的时候采用了重命名机制,所以存在服务器上的文件是重命名后的文件,如果用户要将文件以邮件方式发送给其它人那么就得重命名回来...方案要:在上传的时候将用户上传的文件原文件名也存入数据库,方便取出...界面如下: 阅读全文
posted @ 2013-09-04 22:45 锐洋智能 阅读(1265) 评论(0) 推荐(0)
摘要: 系统中的附件分享功能界面 抄送多个效果图 多个接收者效果图 抄送多人带附件源码 多个接收者带附件源码 阅读全文
posted @ 2013-08-11 10:59 锐洋智能 阅读(4304) 评论(0) 推荐(0)
摘要: Access restriction: The type BASE64Decoder is not accessible due to restriction on required library D:\java\jre1.5.0_08\lib\rt.jar在网上找到了解决方法如下,我是用第二种方法解决的~~Solution 1 :import=”sun.misc.BASE64Decoder”出现错误提示为:Access restriction: The type BASE64Decoder is not accessible due to restrictionon required li 阅读全文
posted @ 2013-07-29 22:56 锐洋智能 阅读(959) 评论(0) 推荐(0)
摘要: 效果如图: 阅读全文
posted @ 2013-07-08 22:29 锐洋智能 阅读(2212) 评论(2) 推荐(1)
摘要: DruidDataSource大部分属性都是参考DBCP的,如果你原来就是使用DBCP,迁移是十分方便的。参考配置 在上面的配置中,通常你需要配置url、username、password,maxActive这三项。测试与 quartz-all-2.1.6.jar 有冲突。。。有待完善。。。 阅读全文
posted @ 2013-07-07 22:35 锐洋智能 阅读(1152) 评论(0) 推荐(0)