`
bloodwolf_china
  • 浏览: 131466 次
社区版块
存档分类
最新评论
文章列表
  由于80端口需要root用户才能使用,所以tomcat都是root用户管理的,为了安全起见昨天安装了一个nginx作为反向代理,tomcat改为8080端口。但测试发现有几个接口一直报错,几个HTTP头取不到值,比对其他请求发现是包含了下划线。在百度和stackoverflow上查找问题发现,要求配置一下nginx,支持HTTP Header name支持下划线: 引用 underscores_in_headers on | off; Default:off Context:http, server Enables or disables the use of underscores ...
  之前使用过几次maven,真正使用发现有点麻烦包括XML的繁冗,不够灵活,学习曲线陡峭。因为对grails和groovy很熟悉,发现gradle是个很合适的构建工具。gradle是以 Groovy 语言为基础,面向Java应用为主.基于DSL(领域特定语言)语法的自动化构建工具,从maven转到gradle非常简单。  但使用gradle要解决几个问题,我是这么解决的   一、环境区分问题   gradle本身不提供类似maven profile机制,但想自己实现非常简单。主要是资源及配置问题,要区分开发环境、测试环境、验收环境和商用环境,每个环境中的配置有相同的地方,也有不同的地方。所有要 ...
  前几天因为笔记本有点慢,心血来潮想试着换成ubuntu操作系统试试。于是试着在家里台式机安装,按着网上的教程安装成功,启动菜单出现双系统,进入ubunt,就以为安装成功了。第二天老丈人说电脑用不了,一看果然windows 7进不去了。   再网上找了各种资料尝试,下了各种windowPE制作中U盘启动盘进行修复也没成功。想想算了还是研究一下原理,把这几天的研究记录一下。   grub2dos:linux下开源多系统引导程序   grldr:grub的主引导程序,按照menu.lst配置引导系统   bootmgr:windows7(NT6.1)的主引导程序,按照boot/bcd配置引导系统 ...
   最近一段时间由于服务器响应有些异常,所以花了半天做了一个简单实时监控页面。如下图 基本原理如下: 1、使用Filter拦截请求,采集服务器响应数据。 若是要收集响应状态码注意构造新的HttpServletResponse package com.cmgame.ecms.statistic import javax.servlet.http.HttpServletResponseWrapper import javax.servlet.http.HttpServletResponse /** * 功能描述 * @author huzl * @ver ...
这几天发现现网几台服务器的应用有内存泄露的现象,对其中缓存中各个对象数据进行检查,发现ehcache对象数量是2万多个,查询业务表中发现商用状态的业务数据还不到1万。 自己就写一段代码使用visualvm工具。对Ehcache中对象回收机制进行分析    BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); CacheManager cacheManager = CacheManager.getInstance(); long startTime = ...
    单元测试是对最小单元即方法的测试,要隔离对他模块的依赖,一般采用stub和mock两种方式     集成测试是对功能的测试,对于大部分web模块来说需要启动web容器,进行集成测试     maven生命周期中已经包含测试(test)和集成测试(integration-test),但未对两种测试代码做区分,需要自己解决启动web容器和代码区分问题。     首先配置maven jetty插件在集成测试阶段自动启动     <plugin> <groupId>org.mortbay.jetty</groupId> ...
   Java面试中关于容器类List,Set是必问题目。但在我的面试经历中很难遇到满意的答复。大部分只能了解其大概使用方法,对其内部结构缺乏了解,错误的使用方式会导致性能大幅下降。    首先介绍ArrayList,顾名思义内部数据结构是数组 private transient Object[] elementData; private int size; public ArrayList(int initialCapacity){ }    在增加元素时,若容量不足进行扩充 public void ensureCapacity(int min ...
groovy的SimpleTemplateEngine实现了模板功能,类似于jsp。那就分析groovy是如何实现模板的。 使用模板 Template template = new SimpleTemplateEngine().createTemplate( new StringReader("<% // This is a comment that will be filtered from output %>\n" + "Hello <%out.println(name);%> !") ...
步骤:   1、从mysql导出数据文件 select sender,imsi,random_code,date_format(token_create_time,'%Y%m%d%H%i%s'),date_format(last_login_time,'%Y%m%d%H%i%s'),1 as status from tb_sms_token where last_login_time is not null into outfile '/home/mysql/TB_GH_WLAN_TOKEN.dat' FIELDS TERMINATED BY '$' ESCAPED BY '\\ ...
  忙碌的工作让我很久没有写过博客了,另外技术上也没有明显的进步,也缺乏兴奋点。项目正式上线很长时间,随要访问压力的增大,每天PV差不多有500万。这时出现了一些问题,主要的是访问响应慢,程序中未发现异常。错误日志有数据库连接的错误,怀疑是数据库连接丢失或有某些请求会锁表。因此写一段代码跟踪数据库连接获取和释放的情况。    原理很简单,拦截DataSource的getConnnection方法,把当前Connection和调用堆栈保存到连接列表;拦截Connection对象close方法,把Connection从连接列表中删除。   直接上代码:   package com.emagsof ...
   在tomcat的conf目录下添加文件context.xml,这个文件中的配置会在所有的应用中生效。    添加JNDI连接池配置 以mysql为例: <Resource name="jdbc/gamehall2" auth="Container" type="javax.sql.DataSource" driverClassName="com.mysql ...
  DES(Data Encryption Standard)算法,于1977年得到美国政府的正式许可,是一种用56位密钥来加密64位数据的方法。一般密码长度为8个字节,其中56位加密密钥,每个第8位都用作奇偶校验。    DES的几种工作方式 第一种电子密本方式(ECB)    将明文分成n个64比特分组,如果明文长度不是64比特的倍数,则在明文末尾填充适当数目的规定符号。对明文组用给定的密钥分别进行加密,行密文C=(C0,C1,……,Cn-1)其中Ci=DES(K,xi),i=0,1,…..,n-1。   第二种密文分组链接方式(CBC)    在CBC方式下,每个明文组xi在加密 ...
Grails小技巧 一、Controlller中params Controlller中params是grails框架中的GrailsParameterMap类,继承自TypeConvertingMap,而不是一个简单的Map, 除了支持普通的Map方法以外,还有其他几个方法非常有用 Integer int(String name); Long long(String name); Double double(String name); Short(String name); List list(String name); 若需要得到数值类型的参数就非常方便了 in ...
   逆波兰表达式又叫做后缀表达式,它将复杂表达式转换为可以依靠简单的操作得到计算结果的表达式,解决了四则运算中括号改变运算符优先级的问题。 四则运算的表达式一般都是中缀表达式如 1+2*(3-4)+5,即操作符在两个操 ...
技术方面:    工作流jBPM,OSWorkflow,用户权限Acegi和OSUser,ajax框架smartClient,java开发框架JBoss Seam,规则引擎JBoss rules。有空再读读grails和spring的源码。 系统设计:    设计中需要的各种文档,UML各种概念和UML工具Visio,Jude的使用 项目管理:    项目配置管理中各种概念基线、里程碑、分支等等,svn的使用,了解一下需求管理,学习使用JIRA
Global site tag (gtag.js) - Google Analytics