Sometimes Love Just Aint Enough
前几天(到底是几天已经忘记了)半夜把床边的吉他碰倒。吉他意外的不争气的只发出一声闷响。这才想起,几个星期前断了弦后,一直没买回。几天前(又忘记了)更把吉他其他弦都松掉了。。。。
哎,哎。。
晚上听孙燕姿的Sometimes Love Just Aint Enough 觉得还不错,就顺便找来谱子,抱起5根弦的吉他弹弹。恩,还有点意思,周末去买弦吧。
这个blog关闭啦,请移步到新地点
前几天(到底是几天已经忘记了)半夜把床边的吉他碰倒。吉他意外的不争气的只发出一声闷响。这才想起,几个星期前断了弦后,一直没买回。几天前(又忘记了)更把吉他其他弦都松掉了。。。。
哎,哎。。
晚上听孙燕姿的Sometimes Love Just Aint Enough 觉得还不错,就顺便找来谱子,抱起5根弦的吉他弹弹。恩,还有点意思,周末去买弦吧。
Posted by Mistapostle 发表于 10/19/2006 11:11:00 PM 0 评论
Strut 多模块的功能还是很有用的,USER GUIDE上的介绍稍微简单了点。
在N次失败后,终于成功了,顺便把经验贴出来
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
<init-param>
<param-name>config/man</param-name>
<param-value>/WEB-INF/struts-config-man.xml</param-value>
</init-param>
struts-config-man.xml里面配置了一个 path="/try" 的action
然后在网页的根目录上建了一个目录man,并在里面放上index.jsp
index.jsp有一个FORM,内容如下:
代码
<html:form action="/try">
......
</html:form>
这时若直接访问index.jsp会报错说找不到action什么的
但是如果不用html:form标签而是使用普通HTML是可以的:
代码
<form action="try.do">
......
</form>
原因是访问JSP时
解决办法是在man 所在的module里增加个action来跳转
如在struts-config-man.xml里加一个action:
<action forward="/index.jsp" path="/index" />
访问/man/index.do后STRUTS就会载入man的module path ,于是就可以正常访问index.jsp了
Posted by Mistapostle 发表于 10/18/2006 11:34:00 PM 0 评论
标签: struts
Posted by Mistapostle 发表于 10/17/2006 12:30:00 AM 0 评论
javaeye上看到有人讨论
使用JIVE的代理模式来扩展struts+Spring+Hibernate的web框架
其实是想用PROXY实现权限控制,作者认为:
管理员对系统模块的操作权限认证,有主要有三种方法:
1.在每个需要认证的模块前面插入一段验证码.
2.使用AOP或拦截器.
3.使用代理设计模式.
Posted by Mistapostle 发表于 10/14/2006 11:35:00 AM 0 评论
关键字: java 获取 配置文件 资源文件 Properties ClassLoader
几乎所有的系统都需要通过获取配置/资源文件来方便配置系统
但怎样获取资源文件呢
java的应用通常把配置文件和工程中的其他class放在一起(如log4j),原因是可以方便的使用classLoader的 getResourceAsStream()方法获取资源(其实java内部就是这样来
load class的),下面是一个简单例子:
比如你把文件(abc.properties)放到com.yourcompany.common包里面,在确保classpath包括该包的情况
下就可以按下面的方法获取资源
ClassLoader cl = this.getClass().getClassLoader();
InputStream is = cl.getResourceAsStream("com/yourcompany/"+abc.properties)
如果abc.properties是一个标准的properties文件的话 , 假设它的内容如下:
messageA = Ok!
则可以这样获取配置信息:
Properties props = new Properties();
props.load(is);
String messageA = props.getProperty("messageA ");
则messageA就会等于 "Ok"
当然properties也可以是XML格式,只要他符合http://java.sun.com/dtd/properties.dtd的规范并且声明了DOCTYPE declaration,就可以用props.loadFromXML(InputSteam in)方法载入property
ps:property 也提供store()和storeToXML方法保存属性
关于classLoader也可以看看 《classloader相关基础知识》 这个文章
Posted by Mistapostle 发表于 10/12/2006 11:59:00 PM 0 评论