原创整理不易,转载请注明出处:flex3+struts 1.3+spring+ibatis 2.x整合代码实例
代码下载地址:http://www.zuidaima.com/share/1778657261997056.htm
经过两天工作闲余时间的奋战,终于flex3+struts 1.3+spring +ibatis 2.x 整合成功,下面介绍下详细的步骤和核心代码:
IDE:myeclipse
(当然:前提是FLEX+java整合成功的情况下,关于flex+java整合的文章就比较多,google下就OK):
1.成功整合FLEX+JAVA后,右键单击项目选择 MyEclipse---》add struts(添加STRUTS比较简单这里就不多说了),下面贴代码:
(1)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" "http://struts.apache.org/dtds/struts-config_1_3.dtd"> <struts-config> <form-beans /> <global-exceptions /> <action-mappings > <action path="/user" type="com.yinhai.struts.action.UserAction" scope="request" > <forward name="sucess" path="/index.jsp" /> </action> </action-mappings> </struts-config>
在web-info下的struts-config.xml中添加如上代码
(2)UserAction
package com.zuidaima.struts.action; import java.io.IOException; import java.io.PrintWriter; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import model.User; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.springframework.beans.factory.BeanFactory; import org.springframework.context.support.ClassPathXmlApplicationContext; import dao.ContextHelper; import dao.UserDaoImpl; /** * MyEclipse Struts * Creation date: 08-05-2009 * * XDoclet definition: * @struts.action parameter="method" validate="true" * @struts.action-forward name="fail" path="/fail.jsp" * @struts.action-forward name="sucess" path="/sucess.jsp" */ public class UserAction extends Action { /* * Generated Methods */ /** * Method execute * @param mapping * @param form * @param request * @param response * @return ActionForward * @throws IOException */ public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { // ClassPathXmlApplicationContext ctxss = new ClassPathXmlApplicationContext("applicationContext.xml"); // BeanFactory ctx=(BeanFactory)ctxss; // UserDaoImpl um = (UserDaoImpl) ctx.getBean("userDao"); UserDaoImpl um =(UserDaoImpl)ContextHelper.getContext().getBean("userDao"); List users = um.getUsers(); User user=null; String xml="<?xml version=\"1.0\" encoding=\"utf-8\"?><users>"; for(int i=0;i<users.size();i++){ user=(User)users.get(i); xml=xml+"<user>"+ "<usernumber>"+user.getUsernumber()+"</usernumber>" + "<name>"+user.getName()+"</name>"+ "<password>"+user.getPassword()+"</password>"+ "</user>"; } xml=xml+"</users>"; System.out.println(xml); PrintWriter p = null; try { // p=response.getWriter(); response.getWriter().write(xml); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } //p.write(xml); // p.print("<?xml version=\"1.0\" encoding=\"utf-8\"?><users><user><usernumber>1</usernumber><name>caicai</name><password>dddddd</password></user><user><usernumber>2</usernumber><name>yingying</name><password>dddddd</password></user><user><usernumber>3</usernumber><name>ceshi</name><password>dddddd</password></user><user><usernumber>4</usernumber><name>ceshi</name><password>dddddd</password></user>"); // p.close(); return null; }
(3)获取bean的工具类
package dao; import org.springframework.context.support.ClassPathXmlApplicationContext; /** * Date: 2008-3-20 Time: 17:28:48 To change this template use File | Settings | * File Templates. */ public class ContextHelper { private static ClassPathXmlApplicationContext _ctx; static { _ctx = new ClassPathXmlApplicationContext("/applicationContext.xml"); } public static ClassPathXmlApplicationContext getContext() { return _ctx; } }
2.添加SRPING
右键单击项目选择 MyEclipse---》add spring
spring的配置文件
<?xml version=" 1.0 " encoding=" UTF-8 " ?> <beans xmlns=" http://www.springframework.org/schema/beans " xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance " xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd "> <bean id=" dataSource " class=" org.apache.commons.dbcp.BasicDataSource " destroy - method=" close "> <property name=" driverClassName " value=" com.mysql.jdbc.Driver " /> <property name=" url " value=" jdbc:mysql://localhost:3306/test " /> <property name=" username " value=" root " /> <property name=" password " value=" root " /> </bean> <bean id=" sqlMapClient " class=" org.springframework.orm.ibatis.SqlMapClientFactoryBean "> <property name=" configLocation " value=" sqlmap-config.xml " /> <property name=" dataSource " ref=" dataSource " /> </bean> <bean id=" userDao " class=" dao.UserDaoImpl "> <property name=" sqlMapClient " ref= " sqlMapClient " /> </bean> </beans>
(3)添加IBATIS
首先将ibatis的JAR包导入,放在LIB下即可
IBTIS配置文件
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> <!-- Configure a built - in transaction manager. If you ' re using an app server, you probably want to use its transaction manager and a managed datasource --> <!-- List the SQL Map XML files. They can be loaded from the classpath, as they are here (com.domain.data) --> <sqlMap resource=" dao/User.xml " /> <!-- List more here <sqlMap resource=" com/mydomain/data/Order.xml " /> <sqlMap resource= " com/mydomain/data/Documents.xml " /> --> </sqlMapConfig>
User.xml
<?xml version=" 1.0 " encoding=" UTF-8 " ?> <! DOCTYPE sqlMap PUBLIC " -//ibatis.apache.org//DTD SQL Map 2.0//EN " " http://ibatis.apache.org/dtd/sql-map-2.dtd "> <sqlMap namespace=" User "> <!-- Use type aliases to avoid typing the full classname every time. --> <typeAlias alias=" user " type=" model.User " /> <!-- Select with no parameters using the result map for Account class . --> <select id=" getUsers " resultClass= " user "> select * from user; </select> </sqlMap>
注意:User.xml一定要和相应的DAO的实现类放一个包下
4.FLEX文件
<?xml version=" 1.0 " encoding=" utf-8 " ?> <mx:Application xmlns:mx=" http://www.adobe.com/2006/mxml " layout=" absolute "> <mx:Script> <! [CDATA[ import mx.rpc.events.FaultEvent; import mx.controls.Alert; import mx.rpc.events.ResultEvent; import mx.controls.DataGrid; [Bindable] public var gridXml:XML; public function httpHandler(event:ResultEvent): void { Alert.show("hello2"); gridXml=XML(event.result); griddata.dataProvider=gridXml.children();//XMLList } public function initHandler(): void { testHttp.url="http://localhost:8080/LCSYS/user.do"; Alert.show("hello1"); testHttp.send(); } public function httpFail(event:FaultEvent): void { Alert.show("调用失败"); Alert.show(event.message.toString()); } ]]> </mx:Script> <mx:HTTPService id=" testHttp " result=" httpHandler(event) " fault=" httpFail(event) " resultFormat=" e4x " /> <mx:Panel x=" " y=" " width=" " height=" " layout=" absolute " id=" userPannel " title=" userPannel1 "> <mx:DataGrid x=" " y=" " width=" 100% " height=" 100% " id=" griddata "> <mx:columns> <mx:DataGridColumn dataField=" usernumber " headerText=" usernumber " /> <mx:DataGridColumn dataField=" name " headerText=" name " /> <mx:DataGridColumn dataField=" password " headerText=" password " /> </mx:columns> </mx:DataGrid> <mx:ControlBar height=" " y=" "> <mx:Button label=" 查询人员列表 " click= " initHandler() " /> </mx:ControlBar> </mx:Panel> </mx:Application>
5.其他文件:
工具类,解决乱码
package dao; import java.io.UnsupportedEncodingException; import org.springframework.context.support.ClassPathXmlApplicationContext; public class Tool { public static String change(String str){ String str2; try { str2=new String(str.getBytes("iso-8859-1"),"UTF-8"); return str2; } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } }
userDaoImpl
package dao; import java.util.List; import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport; public class UserDaoImpl extends SqlMapClientDaoSupport implements UserDao { public List getUsers() { // TODO Auto-generated method stub return this.getSqlMapClientTemplate().queryForList("getUsers"); } }
时间关系,介绍得比较粗糙也没撒说明,不过只要对框架较熟悉的应该很快能搭建起环境
本文章主要是集成框架介绍
注意:需要IBATIS的JAR吧,dbcp连接池的包,还有相应的驱动包
相关推荐
本示例代码涉及的是一个经典的技术栈:Ibatis2.3、Struts1.3和Spring2.5的整合。这三个框架各自都有其独特的功能和优点,组合在一起能够提供灵活的数据访问、高效的MVC架构以及全面的应用管理。 Ibatis,作为一款轻...
在Java Web开发中,Spring、Struts2和iBatis是三个非常重要的框架,它们各自在不同的层面上提供了强大的功能。Spring是一个全面的后端应用框架,提供了依赖注入(DI)、面向切面编程(AOP)、事务管理等功能;Struts...
struts2+hibernate+spring+ibatis 小实例struts2+hibernate+spring+ibatis 小实例struts2+hibernate+spring+ibatis 小实例struts2+hibernate+spring+ibatis 小实例struts2+hibernate+spring+ibatis 小实例struts2+...
在这个“struts2+spring3+ibatis项目整合案例”中,我们将深入探讨这三个框架如何相互配合,实现项目的集成。 Struts2作为MVC(Model-View-Controller)架构的实现,主要负责处理用户请求,控制应用的流程。它提供...
flex+spring+struts2+ibatis 整合的eclipse工程,可以导入eclipse环境下直接使用,因为加入开发的jar大于了上传的最大限制,只能把jar另外打包上传,下载可以从我上传资源的lib1,lib2下载,这个工程的搭建花费了我两...
struts2 + spring + ibatis 实例 struts2 + spring + ibatis 实例 struts2 + spring + ibatis 实例 struts2 + spring + ibatis 实例 struts2 + spring + ibatis 实例
struts1.3+spring2.5+ibatis2.3.4整合
本实例关注的是“ibatis+Spring+struts2”的整合,这是一个经典的Java Web开发组合,用于实现数据访问、业务逻辑控制和用户界面交互。下面我们将深入探讨这三个组件及其整合的关键知识点。 1. **iBATIS**:iBATIS...
maven3+struts2+spring+ibatis,本来是用maven3+struts2+spring+hibernate但考虑到hibernate在多表级联查询的时候执行效率不高,所以改用性能更好不过sql比较麻烦的的ibatis,本项目只有登录和插入数据,仅供参考: ...
Struts2+Spring+Hibernate和Struts2+Spring+Ibatis是两种常见的Java Web应用程序集成框架,它们分别基于ORM框架Hibernate和轻量级数据访问框架Ibatis。这两种框架结合Spring,旨在提供一个强大的、可扩展的、易于...
在IT行业中,集成Struts2、iBatis2.x和Spring2.5是常见的企业级应用开发模式,这种架构被称为“SSH”(Struts、Spring、Hibernate)的变种,因为iBatis替代了传统的Hibernate作为持久层框架。Eclipse作为Java开发的...
Struts2、Spring和iBatis是Java Web开发中常用的三大框架,它们分别负责MVC模式中的Action层、业务逻辑层和服务数据访问层。本文将详细介绍这三个框架如何整合,以及在实际项目中如何运用。 首先,Struts2作为表现...
struts2、spring、ibatis整合实例 struts2、spring、ibatis整合实例 struts2、spring、ibatis整合实例 struts2、spring、ibatis整合实例
在"ssi_jar"这个压缩包中,可能包含了这三个框架的库文件,例如struts2相关的jar包(如struts2-core、struts2-convention等)、Spring的核心库(如spring-context、spring-web等)以及iBatis的库文件(如ibatis-3-...
**Spring、Struts2 和 iBatis 整合详解** 在Java Web开发中,Spring、Struts2 和 iBatis 是三个非常重要的框架。它们分别负责不同层面的任务:Spring 提供了全面的依赖注入(DI)和面向切面编程(AOP),用于管理...
在这个场景中,"lib2 flex+struts2+spring+ibatis" 的组合是一个常见的Java Web开发框架,用于实现MVC(Model-View-Controller)架构。这个框架集合了四个核心组件:Flex前端、Struts2作为MVC框架、Spring作为依赖...
《Spring3+Struts2+Ibatis:企业级应用开发框架整合详解》 在现代企业级Web应用开发中,Spring、Struts2和Ibatis是常见的三大组件,它们各自负责不同的职责,共同构建出高效、灵活的应用架构。Spring作为全能型的...
spring2+struts1+ibatis2spring2+struts1+ibatis2spring2+struts1+ibatis2spring2+struts1+ibatis2spring2+struts1+ibatis2spring2+struts1+ibatis2spring2+struts1+ibatis2
一个简单的spring+struts+ibatis整合的实例,实现了用户登录,用户登录成功则显示欢迎信息,失败则显示用户名或密码错误,该实例非常简单基础,特别适合新人学习,工程包含了必要的资源包,部署到服务器中及可运行,...