Eclipse3.2、MyEclipse5.01、Tomcat5.5.9、MsSQL2000
1.新建项目
2.增加Struts
3.建文件index.jsp,在其中放一相超连接
<a href="showjobs.do">显示</a>
4.建文件showjobs.jsp,在其中写
<logic:empty name="jobs">
<h1><font color="red">Not Found</font></h1>
</logic:empty>
5.建一个Action
<action path="/showjobs" type=" com.me.struts.action.ShowjobsAction ">
<forward name="show" path="/showjobs.jsp" />
</action> ShowjobsAction.java代码
return mapping.findForward("show");
1.新建项目
2.增加Struts
3.建文件index.jsp,在其中放一相超连接
<a href="showjobs.do">显示</a>
4.建文件showjobs.jsp,在其中写
<logic:empty name="jobs">
<h1><font color="red">Not Found</font></h1>
</logic:empty>
5.建一个Action
<action path="/showjobs" type=" com.me.struts.action.ShowjobsAction ">
<forward name="show" path="/showjobs.jsp" />
</action> ShowjobsAction.java代码
return mapping.findForward("show");
6.增加Spring框架了,在这里我将Spring所有的包全部加载进去,将
applicationContext.xml放在
WebRoot/WEB-INF/文件夹
7.在
applicationContext.xml文件中增加bean
<bean name=" /showjobs" class=" com.me.struts.action.ShowjobsAction" singleton="false">
</bean>
<bean name=" /showjobs" class=" com.me.struts.action.ShowjobsAction" singleton="false">
</bean>
8.给Struts增加Spring插件
配置struts-config.xml文件,添加(spring)的插件
<plug-in className=" org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property=" contextConfigLocation" value=" /WEB-INF/applicationContext.xml" />
</plug-in>
配置struts-config.xml文件,添加(spring)的插件
<plug-in className=" org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property=" contextConfigLocation" value=" /WEB-INF/applicationContext.xml" />
</plug-in>
9.修改struts-config.xml文件中的Action的class
<action path=" /showjobs" type=" org.springframework.web.struts.DelegatingActionProxy">
<forward name="show" path="/showjobs.jsp" />
</action>
<action path=" /showjobs" type=" org.springframework.web.struts.DelegatingActionProxy">
<forward name="show" path="/showjobs.jsp" />
</action>
10.此时可以部署运行,可以测试程序完成Struts+Spring功能这一步一定要成功!
11.配置Hibernate的数据源
12.增加Hibernate框架,增加过程中注意在
第二步选择: Spring Configuration file
第三步选择: Existing Spring configuration file
SessionFactoryID: sessionFactory
第四步选择已配置好的数据源, Bean Id : ds
第二步选择: Spring Configuration file
第三步选择: Existing Spring configuration file
SessionFactoryID: sessionFactory
第四步选择已配置好的数据源, Bean Id : ds
13.使用MyEclipse的数据Database Explorer工具创建jobs表映射文件在第一步中注意选择
java package:
选中 Hibernate mapping files(*.hbm.xml) for each database table 及子项
选中 Java Data Object(POJO <> DB Table) 及子项
选中 Java Data Access Object(DAO) (Hibnate 3 only)及子项 在第二步中选择 ID Generator 最后会生成 AbstractJobs.java, Jobs.java, JobsDAO.java和 Jobs.hbm.xml
并会自动在 applicationContext.xml中加入 数据源
<bean id="ds" class="org.apache.commons.dbcp.BasicDataSource">
....
</bean>
SessionFactory
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="ds" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>com/me/db/Jobs.hbm.xml</value> hbm映射文件
</list>
</property>
</bean> *作Bean
<bean id="JobsDAO" class="com.me.db.JobsDAO">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
选中 Hibernate mapping files(*.hbm.xml) for each database table 及子项
选中 Java Data Object(POJO <> DB Table) 及子项
选中 Java Data Access Object(DAO) (Hibnate 3 only)及子项 在第二步中选择 ID Generator 最后会生成 AbstractJobs.java, Jobs.java, JobsDAO.java和 Jobs.hbm.xml
并会自动在 applicationContext.xml中加入 数据源
<bean id="ds" class="org.apache.commons.dbcp.BasicDataSource">
....
</bean>
SessionFactory
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="ds" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>com/me/db/Jobs.hbm.xml</value> hbm映射文件
</list>
</property>
</bean> *作Bean
<bean id="JobsDAO" class="com.me.db.JobsDAO">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
14.在JobsDAO中增加一个方法用于获取所有数据
public List getAll(){
String sql="from Jobs";
try {
return this.getHibernateTemplate().find(sql);
} catch (RuntimeException e) {
throw e;
}
}
}
15.在ShowjobsAction.java中增加如下代码
private JobsDAO jobsDAO;
public JobsDAO getJobsDAO() {
return jobsDAO;
}
public void setJobsDAO(JobsDAO jobsDAO) {
this.jobsDAO = jobsDAO;
}
private JobsDAO jobsDAO;
public JobsDAO getJobsDAO() {
}
public void setJobsDAO(JobsDAO jobsDAO) {
}
16.修改ShowjobsAction.java文件中
execute方法如下
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
request.getSession().setAttribute("jobs",jobsDAO.getAll());
获取所有数据
return mapping.findForward("show");
}
17.修改 applicationContext.xml中的"/showjobs" Bean
<bean name="/showjobs" class="com.me.struts.action.ShowjobsAction" singleton="false">
<property name="jobsDAO">
<ref bean="JobsDAO"/>
</property>
</bean>
public ActionForward execute(ActionMapping mapping, ActionForm form,
}
17.修改 applicationContext.xml中的"/showjobs" Bean
<bean name="/showjobs" class="com.me.struts.action.ShowjobsAction" singleton="false">
<property name="jobsDAO">
<ref bean="JobsDAO"/>
</property>
</bean>
18.修改showjobs.jsp内容如下
<body>
<logic:empty name="jobs">
<h1><font color="red">Not Found</font></h1>
</logic:empty>
<logic:notEmpty name="jobs">
<table border=1 width=500>
<logic:iterate id="job" name="jobs">
<tr>
<td><bean:write name="job" property="jobId"/></td>
<td><bean:write name="job" property="jobDesc"/></td>
<td><bean:write name="job" property="minLvl"/></td>
<td><bean:write name="job" property="maxLvl"/></td>
</tr>
</logic:iterate>
</table>
</logic:notEmpty>
</body>
<body>
<logic:empty name="jobs">
<h1><font color="red">Not Found</font></h1>
</logic:empty>
<logic:notEmpty name="jobs">
<table border=1 width=500>
<logic:iterate id="job" name="jobs">
<tr>
<td><bean:write name="job" property="jobId"/></td>
<td><bean:write name="job" property="jobDesc"/></td>
<td><bean:write name="job" property="minLvl"/></td>
<td><bean:write name="job" property="maxLvl"/></td>
</tr>
</logic:iterate>
</table>
</logic:notEmpty>
</body>
19.到此大功告成,部置运行即可。