一步一步做项目(11)扩展(管理课程信息)
在前面一步一步做项目(7)管理用户信息之Web页面构建的基础上进行。
由于前面已经建立了整个系统的框架,各部分构件也便于修改和扩展,这里就给大家展示如何扩展。
这里,可以在git中建立分支,以便进行练习。
model包
创建实体类Course.java,建立Hibernate映射配置文件Course.hbm.xml,这两个文件基于Users.java和Users.hbm.xml来产生,在它们的基础上进行查找替换,替换时注意选择大小写敏感,如下图所示:
替换时要注意大写开头的和小写开头的都要替换一遍,当然,不要文件将中文的“用户”替换成“课程”。
当然,这里,Course实体包含的信息是关键。
dao包
同样的,创建CourseDao.java,基于UserDao.java来复制粘贴,然后,查找与替换即可。
service包
创建CouseService.java,这里不再赘述。
action包
创建CouseAction.java和CourseAction-validation.xml,同样不再赘述。
配置
现在,就要添加配置了。
struts.xml
首先,从struts-admin.users.xml复制,创建struts-admin.course.xml,查找替换即可,然后,将struts-admin.course.xml包含在struts.xml中即可,如下所示:
<include file="struts-admin.course.xml" />
applicationContext.xml
配置applicationContext.xml文件,这里需要配置bean,如下所示:
<!-- START 配置业务层的类 -->
<!-- cmis.service -->
<bean id="userService" class="cn.lut.curiezhang.service.UserService">
<property name="userDao" ref="userDao"/>
</bean>
<bean id="courseService" class="cn.lut.curiezhang.service.CourseService">
<property name="courseDao" ref="courseDao"/>
</bean>
<!-- /cmis.service -->
<!-- END 配置业务层的类 -->
<!-- START 配置Dao类 -->
<!-- cmis.dao -->
<bean id="userDao" class="cn.lut.curiezhang.dao.UserDao">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<bean id="courseDao" class="cn.lut.curiezhang.dao.CourseDao">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<!-- /cmis.dao -->
<!-- END 配置Dao类 -->
<!-- START 配置Action的类 -->
<!-- cmis.action -->
<bean id="userAction" class="cn.lut.curiezhang.action.UserAction" scope="prototype">
<!-- 手动注入Service -->
<property name="userService" ref="userService"/>
</bean>
<bean id="courseAction" class="cn.lut.curiezhang.action.CourseAction" scope="prototype">
<!-- 手动注入Service -->
<property name="courseService" ref="courseService"/>
</bean>
<!-- /cmis.action -->
<!-- END 配置Action的类 -->
还需要配置Hibernate映射资源,如下所示:
<!-- cmis.values -->
<value>cn/lut/curiezhang/model/Users.hbm.xml</value>
<value>cn/lut/curiezhang/model/Course.hbm.xml</value>
<!-- /cmis.values -->
现在,就完成了java的编程了,是不是很简单啊。
Web页
构造Web页,同样简单,将users目录,复制粘贴成course,然后进行查找替换即可。
Messages.properties
在java和jsp中,都用到了一些描述信息,这些信息存储在Messages.properties中,同样需要进行处理,类似的,进行查找替换,将如下标记中间的代码进行复制,如下所示:
#################### cmis.admin.users ######################
。。。
#################### /cmis.admin.users ######################
粘贴后,进行查找替换,在查找替换时,要查找替换选中的行,如下图所示:
这样,就不会查找替换所有的了,就不会把前面的也替换掉了。
运行
所有的查找替换执行完之后,程序就可以重新部署并运行,应该没有错误,一次成功,如下图所示: