首页 > 代码库 > 项目手札1

项目手札1

oa项目进行到现在已经有一周多了,最开始的一周时间都是在做项目前期的工作,比如需求分析、编码规范、人员的分工等。比较琐碎。这一周从星期二开始就开始了正式写代码的工作了。问题还是比较多的。

1.配置文件。将Spring和Hibernare整合起来。用MyEclipse自带的spring和hibernate,配置文件也是自动就生成了的,但是里面仍有一些需要自己手动来写。接着是写web.xml,这里面主要包括配置IoC容器的监听器、配置前端控制器、配置编码过滤器。最后是写前端控制器的配置文件,其实也就是配置和控制器相关的内容,包括:配置控制器所在的包、用注解的方式配置SpringMVC、静态资源有TomCa来处理、配置视图解析器、配置消息转换器、配置文件上传的解析器。

2.配置文件里面也有很多小细节,一不小心写错了或是忘写了就可能导致项目不能成功被部署,比如在<bean id=sessionFactory>这个标签里面就忘记了配置<property name="packagesToScan" value="http://www.mamicode.com/com.**.**">导致找不到需要交由Hibernate来处理的实体类。在web.xml的配置文件里配置IoC容器的监听器时

  <context-param>

    <param-name>contextConfigLocation</param-name>

  </context-param>不能写错。

3.在web项目中,我们将关键的页面都放在WEB-INF的目录下,所以必须通过假首页进行跳转。但是真正的首页由不同的页面嵌入而成的,所以在真正的首页我们需要通过控制器来拿到其他嵌入的页面,即在src="http://www.mamicode.com/goto/url",这样就可以看到完整的真正的首页了。当然这种风格是典型的RESTFUL风格,地址栏里看起来也更加优雅了。

4.当实体类的一个字段存在不同的选择类型时,比如车辆类型,有轿车、商务车等之分,这个时候将此字段定义为枚举类型,对应的表里的字段为int类型。这个时候我们在页面里真正想看到的是这个枚举类型所对应的中文解释。于是就需要将实体类的这个字段变成int类型。于是在实体类里添加如下的一个方法:比如该字段为carType.

  public int getCarTypeCode(){

    return carType.ordinal();

  }

然后在页面里用<c:if test="">来进行判断。

 

项目手札1