SSH框架整合的一些步骤整理(二)

这一章讲spring和struts2的整合

一、为项目添加struts2的功能


添加后出现struts配置文件(等一下会配置):

二、修改Web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>SpringHibernateStruts</display-name>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  <!-- 服务器启动时,通过监听器初始化Spring的配置环境   
    	监听器,默认加载文件是:/WEB-INF/applicationContext.xml  
  -->  
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  <!-- 用于指定Spring的配置文件路径 -->
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
  </context-param>
 <!-- struts2框架的核心调度器 -->
  <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>*.action</url-pattern>
  </filter-mapping>
</web-app>
我们需要修改filter节点中的filter-class为:

<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
Web.xml配置完成。

三、修改struts.xml文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
	<!-- 将action托管给spring -->
	<constant name="struts.objectFactory" value="spring" />
	<package name="default" namespace="/" extends="struts-default">
		<!-- 此处action对应的类名应为Bean的名称 -->
		<action name="login" class="provinceAction">
			<!-- 定义逻辑视图和物理资源之间的映射 -->
			<result name="success">/success.jsp</result>
			<result name="error">/error.jsp</result>
		</action>
	</package>
</struts>
四、新建action类

package demo.action;

import java.util.List;

import demo.dao.ProvinceDao;
import demo.pojo.Province;

public class ProvinceAction {
	
	private ProvinceDao dao;

	public void setDao(ProvinceDao dao) {
		this.dao = dao;
	}
	
	public String execute(){
		List<Province> list = dao.find(new Province(), 1, 10);
		for (Province p : list) {
			System.out.println(p.getProvinceId()+":"+p.getProvince());
		}
		return "success";
	}
}
五、applicationContext.xml文件中配置要注入的bean

<bean name="provinceAction" class="demo.action.ProvinceAction">
	<property name="dao" ref="provinceDao"></property>
</bean>

六、访问网站http://localhost:8080/SpringHibernateStruts/login.action,查看是否能拿到值

结果是:


控制台有显示数据,说明我们的整合成功了,接下来就是去页面呈现数据了

七、修改ProvinceAction类

package demo.action;

import java.util.List;

import demo.dao.ProvinceDao;
import demo.pojo.Province;

public class ProvinceAction {
	
	private List<Province> list;
	private ProvinceDao dao;

	public void setDao(ProvinceDao dao) {
		this.dao = dao;
	}
	
	public List<Province> getList() {
		return list;
	}

	public String execute(){
		list = dao.find(new Province(), 1, 10);
		for (Province p : list) {
			System.out.println(p.getProvinceId()+":"+p.getProvince());
		}
		
		return "success";
	}
}
新建一个success.jsp文件

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'success.jsp' starting page</title>
</head>

<body>
	<ul>
		<c:forEach items="${list }" var="obj">
			<li>${obj.province }</li>
		</c:forEach>
	</ul>
</body>
</html>
输入网址,结果如下:


到此,框架的整合基本完毕,还有很多功能没有加入,需要我们根据实际的情况,不断完善配置文件,使其功能越来越强大。







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值