`

SSI 整合Demo

阅读更多
SSI 整合 Demo



spring_struts2_ibatis整合开发Demo:


1.web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
	
	<!-- 1.加载spring配置文件applicationContext.xml -->
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>
			/WEB-INF/classes/applicationContext.xml
		</param-value>
	</context-param>
	<listener>
		<listener-class>
			org.springframework.web.context.ContextLoaderListener
		</listener-class>
	</listener>

   <!-- 2.编码过滤 -->
	<filter>
		<filter-name>CharacterEncodingFilter</filter-name>
		<filter-class>
			org.springframework.web.filter.CharacterEncodingFilter
		</filter-class>
		<init-param>
			<param-name>encoding</param-name>
			<param-value>UTF-8</param-value>
		</init-param>
		<init-param>
			<param-name>forceEncoding</param-name>
			<param-value>true</param-value>
		</init-param>
	</filter>
	<filter-mapping>
		<filter-name>CharacterEncodingFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
	
	<!-- 3.ActioncontextCleanUp对象对ACTION进行监、管理容器,告诉JVM某个不使用的对象需要被销毁 -->
	<filter>
		<filter-name>cleanup</filter-name>
		<filter-class>
			org.apache.struts2.dispatcher.ActionContextCleanUp
		</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>cleanup</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>


	<filter>
		<!-- 定义核心filter的名字 -->
		<filter-name>struts2</filter-name>
		<!-- 定义核心filter的实现类 -->
		<filter-class>
			org.apache.struts2.dispatcher.FilterDispatcher
		</filter-class>
	</filter>
	<!-- FilterDispatcher用来初始化struts2并且处理所有的web请求 -->
	<filter-mapping>
		<filter-name>struts2</filter-name>
		<!--默认拦截以.action结尾的请求  -->
		<url-pattern>/*</url-pattern>
	</filter-mapping>

	<welcome-file-list>
		<welcome-file>/admin/add.jsp</welcome-file>
	</welcome-file-list>
</web-app>



2.applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans>
	<bean id="sqlMapClient"  class="com.zxm.util.SqlMapClientFactory"  factory-method="getSqlMapClient">
	</bean>
	
	<bean id="adminDao" class="com.zxm.admin.dao.AdminDao">
		<property name="sqlMapClient" ref="sqlMapClient"/>
	</bean>
	

	<!-- 配置Service -->
	<bean id="adminService" class="com.zxm.admin.service.AdminServiceImpl">
		<property name="adminDao">
			<ref local="adminDao"/>
		</property>
	</bean>
	


	<!-- 定义Struts配置 -->
	<bean name="admin" class="com.zxm.admin.action.AdminAction">
		<property name="adminService">
			<ref local="adminService"/>
		</property>
	</bean>
</beans>



3.ibatis配置文件:sqlMapConfig.xml
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE sqlMapConfig      
    PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"      
    "http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<sqlMapConfig>

	<transactionManager type="JDBC">

		<dataSource type="SIMPLE">
			<property name="JDBC.Driver" value="com.mysql.jdbc.Driver" />
			<property name="JDBC.ConnectionURL"
				value="jdbc:mysql://localhost:3306/beichuang?useUnicode=true&amp;characterEncoding=UTF-8" />
			<property name="JDBC.Username" value="root" />
			<property name="JDBC.Password" value="123456" />
			<property name="Pool.MaximumActiveConnections" value="10" />
			<property name="Pool.MaximumIdleConnections" value="5" />
			<property name="Pool.MaximumCheckoutTime" value="120000" />
			<property name="Pool.TimeToWait" value="500" />
			<property name="Pool.PingQuery" value="select 1 from user" />
			<property name="Pool.PingEnabled" value="false" />
			<property name="Pool.PingConnectionsOlderThan" value="1" />
			<property name="Pool.PingConnectionsNotUsedFor" value="1" />
		</dataSource>
	</transactionManager>

	<sqlMap resource="com/zxm/sqlmap/ibatis_admin.xml" />
</sqlMapConfig>



4.ibatis_admin.xml:
<?xml version="1.0" encoding="GBK" standalone="no"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap>
	<typeAlias alias="admin" type="com.zxm.admin.bean.Admin" />   
		<insert id="insertAdmin" parameterClass="admin">
		<selectKey keyProperty="id" resultClass="java.lang.Integer"
			type="post">
			SELECT LAST_INSERT_ID()
		</selectKey>
			insert into admin(name,password) values(#name#,#password#)
		</insert>
		
		
		<delete id="deleteAdmin"  parameterClass="java.lang.Integer">
			delete  from admin  where id=#id#
		</delete>
		
		
		<update id="updateAdmin" parameterClass="admin">
			update  admin  set name=#name#,password=#password# where id=#id#
		</update>
		
		
		<select id="getAdmin"     resultClass="admin">
			select *from admin 
		 	<dynamic prepend="WHERE">
       		<!-- isNotNull判断参数是否存在,Integer类型 -->
            <isNotNull property="id">
                <isGreaterThan prepend=" and " property="id" compareValue="0">
                	id = #id#
                </isGreaterThan>
            </isNotNull>
            </dynamic>
		</select>		
</sqlMap>



5.sqlMapClientFactory.java:
package com.zxm.util;

import java.io.Reader;

import com.ibatis.common.resources.Resources;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;

public class SqlMapClientFactory {
	private static final SqlMapClient sqlMapClient;
	static {
		try {
			String resource = "sqlMapConfig.xml";
			Reader reader = Resources.getResourceAsReader(resource);
			sqlMapClient = SqlMapClientBuilder.buildSqlMapClient(reader);
		} catch (Exception e) {
			e.printStackTrace();
			throw new RuntimeException(e);
		}
	}

	public static SqlMapClient getSqlMapClient() {
		return sqlMapClient;
	}
}



6.struts.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
	
	<package name="default" extends="struts-default">
		<action name="admin" class="admin">
			<result name="index">
				/admin/selectAll.jsp
			</result>
			<result name="edit">/admin/edit.jsp</result>
		</action>
	</package>
</struts>



7.adminDao.java调用ibatis_admin.xml里面配置的:
package com.zxm.admin.dao;

import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import com.ibatis.sqlmap.client.SqlMapClient;
import com.zxm.admin.bean.Admin;

public class AdminDao {
	private SqlMapClient sqlMapClient;

	public SqlMapClient getSqlMapClient() {
		return sqlMapClient;
	}

	public void setSqlMapClient(SqlMapClient sqlMapClient) {
		this.sqlMapClient = sqlMapClient;
	}
	public boolean insertAdmin(Admin admin)throws SQLException{
		if((Integer)this.sqlMapClient.insert("insertAdmin", admin)>0){
			return true;			
		}else
			return false;

	}
	public boolean deletetAdmin(int id)throws SQLException{
		if((Integer)this.sqlMapClient.delete("deleteAdmin", id)>0){
			return true;			
		}else
			return false;

	}
	public boolean updateAdmin(Admin admin)throws SQLException{
		if((Integer)this.sqlMapClient.update("updateAdmin", admin)>0){
			return true;			
		}else
			return false;

	}
	public Admin getAdmin(Admin admin)throws SQLException{
		return (Admin)this.sqlMapClient.queryForObject("getAdmin", admin);
	}
	public List<Admin> selectAllAdmin()throws SQLException{
		return this.sqlMapClient.queryForList("getAdmin");
	}
}



8.AdminActon.java:
package com.zxm.admin.action;

import java.util.List;

import com.zxm.admin.bean.Admin;
import com.zxm.admin.service.AdminService;

public class AdminAction {
	private List<Admin> list;
	private Admin admin;
	private AdminService  adminService;
	
	public List<Admin> getList() {
		return list;
	}
	public void setList(List<Admin> list) {
		this.list = list;
	}
	public AdminService getAdminService() {
		return adminService;
	}
	public void setAdminService(AdminService adminService) {
		this.adminService = adminService;
	}
	public Admin getAdmin() {
		return admin;
	}
	public void setAdmin(Admin admin) {
		this.admin = admin;
	}
	public String index(){
		list=adminService.selectAllAdmin();
		System.out.println("数据的大小"+list.size());
		return "index";

	}
	public String insert(){
		adminService.insertAdmin(admin);
			return  index();
	}

	public String delete(){
		adminService.deletetAdmin(admin.getId());
		return index();
	}
	public String update(){
		adminService.updateAdmin(admin);
		return index();
	}
	public String  getOneAdmin(){
		admin=adminService.getAdmin(admin);
		return "edit";
	}
}














1.http://www.iteye.com/topic/569770
2.http://ps329795485.iteye.com/blog/1412028
3.http://blog.csdn.net/dqsweet/article/details/7794906
4.http://zz563143188.iteye.com/blog/1473807













分享到:
评论

相关推荐

    ssi,ssh,springmvc分别是三个框架的整合demo

    标题提到的"SSI, SSH, SpringMVC"都是Java Web开发中的重要框架,这里我们将分别探讨这三个框架以及它们的整合。 1. **SSI(Server Side Includes)**: SSI,全称为服务器端包含,是一种在Web服务器端执行的小型...

    完整demo,框架ssi

    通过研究和理解这个完整的demo,开发者能够学习到如何在实际项目中有效整合这些框架,理解它们各自的职责和协作方式,这对于提升Java Web开发技能非常有帮助。同时,这也是一个很好的起点,可以帮助开发者快速搭建...

    简单的SSI整合框架

    **简单的SSI整合框架** 在网页开发中,Server-Side Includes(SSI)是一种简易的服务器端脚本语言,它允许我们动态地将一部分内容插入到HTML或PHP等静态页面中,从而实现网页的部分更新,而无需每次修改时都重新...

    eclipse开发的ssi整合struts2+ibatis2.x+spring2.5

    总的来说,"eclipse开发的ssi整合struts2+ibatis2.x+spring2.5"是一个实用的学习案例,旨在帮助新手理解这三大框架的协同工作方式。通过实际操作,可以加深对Java Web开发的理解,提升项目开发技能。

    SSI框架整合开发

    基于SSI的框架整合开发Demo。该Demo是一个完整的MyEclipse项目,可以直接导入运行。注意:该demo连接oracle数据库,所以需要相应用户及权限。如有必要可以直接修改%项目%/src/jdbc.properties。版本说明:Struts2.1-...

    ssi demo 增删改查 分页 实用 struts spring 经典 简单

    在SSI Demo中,可能使用了某种分页组件或自定义的分页算法,将大量数据分段显示,用户可以逐页浏览,而不是一次性加载所有数据。这降低了服务器压力,提升了页面加载速度。 **集成与配置**: SSI Demo演示了如何将...

    SSI框架整合(Oracle数据库增删改查示例)

    SSI框架整合(Struts2.1+Spring3.0+Ibatis 2.3) 下载之后执行.sql文件创建表和sequence 项目访问路径 localhost:8888/SSI_Demo1 一个简单的例子(Oracle数据库增删改查示例) 用户的增删改查操作,适合初学者...

    SSI框架整合

    在这个"SSI框架整合"的Demo中,我们将深入探讨如何将SSI与Oracle数据库结合起来,为开发者提供一个易于理解和实践的学习资源。 首先,Oracle数据库是企业级的关系型数据库管理系统,广泛用于存储和管理大量结构化...

    ssi.rar_DEMO_SSI_struts2 ibatiS

    这个"ssi.rar_DEMO_SSI_struts2 ibatiS"压缩包提供了一个实战示例,帮助开发者了解如何将这三个框架集成到一个项目中。下面我们将详细探讨这些技术及其整合的关键点。 **Struts2框架** Struts2 是一个基于MVC...

    spring+struts2+ibaties 整合demo

    在"Spring+Struts2+iBatis整合demo"中,开发者通常会创建一个简单的Web应用程序,包含以下几个部分: 1. **配置文件**:如`struts.xml`、`spring-context.xml`和`sqlMapConfig.xml`,分别用于配置Struts2、Spring和...

    SSI框架整合(Struts2.1+Spring3.0+Ibatis 2.3)

    SSI框架整合(Struts2.1+Spring3.0+Ibatis 2.3) 下载之后执行.sql文件创建表和sequence 记得改数据库访问地址以及数据库登录用户名密码 项目访问路径 localhost:8080/SSI_Demo1 一个简单的例子(Oracle数据库增删改查...

    ibatis struts spring ssi 简单实例 demo

    在提供的"demo(ssi)"压缩包中,你应该能找到以下关键文件: - 配置文件:如struts.xml(Struts2配置)、spring.xml(Spring配置)、sqlMapConfig.xml(iBatis配置)。 - Action类:实现了用户登录逻辑的Java类。 - ...

    ssi工程框架

    **SSI工程框架详解** 在软件开发领域,"SSI"通常指的是Struts、Spring和iBATIS这三种技术的集成框架,它们是...通过研究这些示例,开发者可以深入理解如何在实际项目中整合并运用SSI框架,实现高效且可维护的Web应用。

    基于SSI 项目

    开发者可以通过研究这个DEMO学习如何将Struts、Spring和iBatis整合使用,以及如何利用EasyUi构建用户界面,并实现登录验证和权限控制。对于初学者来说,这是一个很好的实践平台,有助于理解和掌握企业级Web应用开发...

    Spring2_struts2_ibatis框架整合(ssi框架搭建)

    因看到有些上传的资料让下载者不能够运行和使用,所以我自己用Oracle中自带的emp、dept还有一个自己的一个表,写了一个带有注册登录分页的demo。这个源码结构清晰、模块化良好,适合ssi架构者的需求、初次上传自己的...

    SSI框架搭建实例教程(struts spring ibatis整合 附切面事物处理)

    【SSI框架搭建实例教程(struts spring ibatis整合 附切面事物处理)】 在软件开发中,集成多种框架可以提高应用程序的灵活性和可维护性。SSI框架是指Struts、Spring和iBatis的集成,这三种框架分别负责MVC模式中的...

    基于SSI的项目

    【标题】"基于SSI的项目"是一个整合了Struts、Spring和iBatis技术的实践应用,主要展示了如何在Web开发中将这三个框架协同工作,实现一个基础的系统功能。Struts作为MVC架构的一部分,负责处理用户请求并提供视图层...

    SSM框架整合(Struts 2.1+Spring 3.0+MyBatis 3.06)

    SSM框架整合,使用最新版MyBatis-Jar包(Struts2.1+Spring3.0+MyBatis...项目访问路径 localhost:8080/SSI_Demo2 一个简单的例子(Oracle数据库增删改查示例) 用户的增删改查操作,依赖注入和注解事物管理,适合初学者...

    struts1+ibatis+Spring demo

    这个"struts1+ibatis+Spring demo"是一个示例项目,展示了如何将这三个框架集成到一起,实现一个完整的Web应用。 Struts1是Apache组织开发的一个开源MVC框架,它主要负责控制应用程序的流程,通过Action类处理用户...

Global site tag (gtag.js) - Google Analytics