2012年05月31日 星期四 下午 3:53 Linux文件名的长度限制是255个字符 在dos下文件名长度应为 8.3 即8位文件名3位扩展名。 windows下完全限定文件名(包括盘符和路径)必须少于260个字符,目录名必须小于248个字符。 linux下文件数、目录数、文件名长度的各种限制 以下测试都是在没有优化或修改内核的前提下测试的结果 1. 测试目的:ext3文件系统下filename最大字符长度 测试平台:RHEL |
2012年05月23日 星期三 下午 8:58 应用程序--->JDBC(定义接口规范)--->驱动(实现接口规范)--->MySQL数据库 涉及到数据库的操作首先要引入第三方驱动包 操作基本步骤: 注册驱动:Class.forName("com.mysql.jdbc.Driver"); (推荐此方式注册驱动) 建立连接:Connection conn = DriverManager |
2012年05月23日 星期三 下午 8:57 前面写过一篇:Oracle 驱动版本引起的显示字段奇怪编码问题。讲到因 Oracle 8.0.5 不支持子查询排序,为改善原来那种每次翻页时都捋出所有数据成对象到 List 中,然后从中拣取页面实际要显示的记录的性能问题时,采用了 rs.absolute() 直接跳到起始记录游标的方法,但又引入了乱码问题,例如:"无效",变成了 "0xE697A0E69588"。 虽说,换个驱动,如 8.1.7.0. |
2012年05月23日 星期三 下午 8:56 一.JDBC原理概述 1,JDBC是一套协议,是JAVA开发人员和数据库厂商达成的协议,也就是由Sun定义一组接口,由数据库厂商来实现,并规定了JAVA开发人员访问数据库所使用的方法的调用规范。 2,JDBC的实现是由数据库厂商提供,以驱动程序形式提供。 3,JDBC在使用前要先加载驱动。 JDBC对于使用者要有一致性,对不同的 |
2012年05月23日 星期三 下午 8:53 现在项目的分页是使用jdbc的 absolute的方法,设置Resultset为TYPE_SCROLL_INSENSITIVE。用了几年,问题也不大,在几个数据库上都测试过,100万条记录一点问题没有。 当初曾经查看过jdbc的文档,确定数据只是在真正要取的时候才会从数据库读取, jdbc会根据fetch size的大小一次的预读一部分记录。 这几天看的wicket的开发文档和pojo in action都提到这种jdbc的读取方式会有性能问题, 由不得我不测试一下。 先写了一个最简单的jdbc测试,在100万记录的情况下对 |
2012年05月23日 星期三 下午 8:51 rs.absolute(...)允许你指定结果集的绝对位置, 如果没有它,假如你要取第1000条记录的数据,就只能rs.next()1000次了:) rs.isAfterLast()是一种特殊的状态,表征已到达结果集的结尾,此时你如果调用rs.next()就会抛出异常 rs.next();//向后滚动 rs.getRow();//得到当前行号 rs.absolute(n);//光标定位到n行 rs.relative(int n);//相对移动n行 一,SQL复习 1,SQL语句分为两类:DDL(Data Defi |
2012年05月23日 星期三 下午 5:05 SGA_TARGET自动内存管理 在10g里,你不需要手工设置如下组件的参数 shared_pool_size java_pool_size large_pool_size db_cache_size 你可以设置一个参数SGA_TARGET。并且保证STATISTICS_LEVEL 参数设置为 TYPICAL (the default) 或者 ALL. 如果使用了SGA_TARGET,设置STATISTICS_LEVEL=BASIC,这时数据库将无法启动,因为在10g中, |
2012年05月23日 星期三 下午 4:21 修改SGA必须保持的原则: 1.sga_target不能大于sga_max_size,可以设置为相等。 2.SGA加上PGA等其他进程占用的内存总数必须小于操作系统的物理内存。 做如下操作前,必须备份dbs目录下的所有文件。 方法一:直接SQL命令行修改: 显示代码打印1 SQL>alter system set sga_target=1024m scope=spfile; 2 SQL>alter system set sga_max_size=1024m scope=spfile; (如果spfile文件不存在,需先创建create spfile from pfile;) |
2012年05月23日 星期三 上午 10:01 缓存的使用 我们先来模拟一个缓存的机制 以查询学生为示例: public class Test { public static void main(String[] args) throws Exception { MyClassDao myClassDao = new MyClassDao(); StudentDao studentDao = new StudentDao(); Student student = studentDao.findById("4028810027d8be080127d8be0d790002"); System.out.println(student.getName()); |
2012年05月21日 星期一 上午 11:32 Hibernate允许我们在映射文件里控制insert和update语句的内容.比如在映射文件中<property 元素中的update属性设置成为false,那么这个字段,将不被包括在基本的update语句中,修改的时候,将不包括这个字段了.insert同理.dynamic动态SQL语句的配置也是很常用的.下面介绍配置SQL语句的具体属性: 1)<property>元素 insert属性:设置为false,在insert语句中不包含这个字段,表示永远不会被插入,默认true |
2012年05月15日 星期二 下午 4:35 目录 SpringSecurity3.X--一个简单实现 SpringSecurity3.X--前台与后台登录认证 SpringSecurity3.X--remember-me SpringSecurity3.X--验证码 一般来说,登录时都会要求用户输入验证码,以防止恶意登录。 可是,SpringSecurity并没有为我们提供这样的功能,所以就需要我们自己来解决了。 那么该如何解决呢,其实也挺简单的, 核对验证码信息,当然是在登录时处理的,所以,使用filter是最佳 |
2012年04月25日 星期三 下午 5:49 Content-disposition 是 MIME 协议的扩展,MIME 协议指示 MIME 用户代理如何显示附加的文件。当 Internet Explorer 接收到头时,它会激活文件下载对话框,它的文件名框自动填充了头中指定的文件名。(请注意,这是设计导致的;无法使用此功能将文档保存到用户的计算机上,而不向用户询问保存位置。) Content-Disposition就是当用户想把请求所得的内容存为一个文件的时候提供一个默认的文件名。具体的定义如下 content-disposition = “Content-Disposition” “:” |
2012年04月16日 星期一 下午 8:46 一、问题的提出。 项目使用Spring MVC框架,并用jackson库处理JSON和POJO的转换。在POJO转化成JSON时,希望动态的过滤掉对象的某些属性。所谓动态,是指的运行时,不同的controler方法可以针对同一POJO过滤掉不同的属性。 以下是一个Controler方法的定义,使用@ResponseBody把获得的对象列表写入响应的输出流(当然,必须配置jackson的MappingJacksonHttpMessageConverter,来完成对象的序列化) [java] view plaincopy @Reques |
2012年04月16日 星期一 下午 8:42 Feature: JSON Filter(see Jira entry JACKSON-312 for details) In addition to existing serialization-side filtering functionality (like JacksonFeatureJsonViews), Jackson 1.7 adds a new flexible, powerful and efficient mechanism for doing dynamic filtering on per-call basis. The basic idea is th |
2012年04月16日 星期一 下午 8:40 - 简但且方便的JSON解析,以及与Java对象的相互转换。
- 通过注释(annotations)和配置(settings)可扩展的配置性。
- 超快的基于流的解析性能,以及完整的数据绑定。
但许多其他Java的JSON库仅考虑方便性和配置性,性能反倒不是面向用户的最重要层面。 那么,为何Java开发人员不选择J |
| | |