ssh框架开发过程问题及其解决方法log

资料管理系统
开发环境:
- ssh框架:spring 3.2.4,struts 2.3,hibernate 3.6
- 数据库:兼容达梦数据库和oracle数据库
- web服务器:tomcat
以下是项目开发过程中遇到的小问题汇总
1、 tomcat打开超时

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.

解决:hibernate项目下默认只有slf4j日志工具的api包,没有实现包。登录www.slf4j.org/download.html 下载slf4j日志工具,解压后将添加到lib目录下。

Initializing Spring root WebApplicationContext
log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

解决:项目中使用连接了数据库的操作,而却没有开启数据库,直到tomcat连接数据库超时之后才会进行下一步,所以启动比较慢。打开数据库后再启动tomcat。成功。
2、配置log4j文件时发现找不到文件问题
一般我们直接将log4j.properties放置在src目录下,这样系统自动会找到的,其实就是放在WEB-INF/classes文件下。这个路径在classpath下,所以直接就能找到。如果现在我们想把log4j.properties文件放置在其它目录下,例如:WEB-INF下和web.xml放在一起。这时候就需要我们手动指定log4j配置文件的路径,否则系统是找不到的。
在web.xml中配置好log4j.properties路径:

 param>
     <param-name>log4jConfigLocationparam-name>
     <param-value>/WEB-INF/log4j.propertiesparam-value>
 param>

3、hibernate映射文件问题
http-bio-8080-exec-4 : PERSON is not mapped from PERSON
配置文件


  <class name="org.military.po.Warship" table="warship" schema="MilitaryMS" optimistic-lock="all" dynamic-update="true">
        <id name="shipversion" type="string">
            name="shipversion" length="100" />
            class="assigned" />
        id>
     ……
 

解决:因为hql操作的是po,不是table,所以hql=“from Warship”,而不是写成“from warship”。
4、无法解析的成员访问表达式[PERSON0_.USERNAME]
达梦查询语句会默认自动改成大些字母,如果在安装数据库时选择大小写敏感,而表名或者字段名为小写,则会报错。
5、bootstrap或者html标签写的页面跳转到action时总是找不到?
解决:添加struts标签引用<%@ taglib prefix =”s” uri =”/struts-tags”%>,在form元素前添加s:标记。form表单内的元素可以不添加s:前缀,只需输入表单元素的name与action中封装的属性名称一致即可。
本质原因:s:前缀会自动将action添加相应前缀路径,另一个解决方法是更改action路径:

String path = request.getContextPath();
action="<%=path%>/loginAction"

6、jsp文件中引入js文件时,js文件中的中文会乱码
解决:eclipse中,在js文件上右击,选择属性,选择编码方式为utf-8(跟jsp编码方式一致);

你可能感兴趣的:(java,web实践)