http://xiaotian-ls.iteye.com/blog/273232
今天遇到一个问题,在spring配置文件中的id第二个字母不能大写,否则会产生异常:Bean property 'kManager' is not writable or has an invalid setter method. Did you mean 'KManager'?.为了解决问题研究了一下问题的原因:spring在autoWire的同时用到了jdk提供的java.beans.*目录下的类(等有时间好好研究一下这些类,功能很强大),通过它们能够得到bean的详细信息。其中有个类PropertyDestriptor类能够通过bean中的set/get方法找到property,不过有个小前提:property的命名要遵循第二个字母不能大写。因为java是国外开发的,它对命名遵循了英语的一个规范:大部分的单词第二个字母都是小写的,除了URL之类的单词。
下面的java.beans.Introspector类中通过set/get方法找到property的代码(希望大家可以自己去看看java.beans.*的代码)。Open Source! I love it.
/**
* Utility method to take a string and convert it to normal Java variable
* name capitalization. This normally means converting the first
* character from upper case to lower case, but in the (unusual) special
* case when there is more than one character and both the first and
* second characters are upper case, we leave it alone.
* <p>
* Thus "FooBah" becomes "fooBah" and "X" becomes "x", but "URL" stays
* as "URL".
*
* @param name The string to be decapitalized.
* @return The decapitalized version of the string.
*/
public static String decapitalize(String name) {
if (name == null || name.length() == 0) {
return name;
}
if (name.length() > 1 && Character.isUpperCase(name.charAt(1)) &&
Character.isUpperCase(name.charAt(0))){
return name;
}
char chars[] = name.toCharArray();
chars[0] = Character.toLowerCase(chars[0]);
return new String(chars);
}
分享到:
相关推荐
在 Spring 中,Bean 的命名规则遵循 XML 命名规范,由字母、数字、下划线组成,驼峰式,首个单词字母小写,从第二个单词开始首字母大写。这种命名规则可以确保 Bean 的名称是唯一的和易读的。 二、配置全限定类名 ...
6. 变量命名:变量首字母小写,多词命名时第二个词及以后首字母大写,如userName。英文变量名更能表达意义,如果名称过长,可以适当缩写,但需遵循Java命名规范。 7. 字段命名:数据库表名和字段名均使用小写英文,...
通用用户管理系统, 实现最常用的用户注册、登录、资料管理、个人中心、第三方登录等基本需求,支持扩展二次开发。 > zheng-wechat-mp 微信公众号管理平台,除实现官网后台自动回复、菜单管理、素材管理、用户管理...
- **类名和方法名:** 类名首字母大写,采用驼峰式命名法;方法名采用小驼峰式命名。 **实体类示例:** ```java public class User { private Integer id; private String name; private String address; ...
注意,`pId`的第二个字母必须是大写的,否则zTree将无法正确识别父子关系。 接下来,你需要编写一个服务方法,从数据库中获取数据,将其转换为`ZtreeNode`对象列表,最后再转换为JSON字符串。以下是一个示例: ```...
3. Spring的bean配置文件名必须小写,格式为xxx.bean.xml,xxx.bean.xml配置文件中的<bean id=”” ,此处的id,就是将类名的第一个字母小写放到此处。 4. xwork的配置文件名必须小写,且遵循xwork_xxx.xml的格式...
第二章 系统设计 2.1. 系统分析 在整个blog进行开发之前,要确定出整个项目的整体架构,包括系统的选型、运行环境的确定及系统结构设计。下面对这进行详细介绍。 在进行软件系统开发的最初环节,一般都需要进行...
cap_first:使字符串第一个字母大写 lower_case:将字符串转换成小写 upper_case:将字符串转换成大写 trim:去掉字符串前后的空白字符 下面是集合的常用内建函数 size:获取序列中元素的个数 下面是数字值的常用...