- 浏览: 90631 次
- 性别:
- 来自: 苏州
文章分类
- 全部博客 (52)
- tomcat启动报错 (0)
- 数据库 (1)
- linux (2)
- myeclipse工具 (3)
- ibatis (3)
- struts (1)
- spring (0)
- 数据加密 (1)
- java代码 (5)
- iphone (1)
- android (3)
- flex (5)
- JSP (1)
- 监听器 (1)
- struts2+ibatis+spring (1)
- myeclipse 8.6 装反编译 (1)
- 对界面的封装 (1)
- log4j (1)
- 主键生成机制 (1)
- jdk (2)
- 正责表达式 (1)
- mac 系统 (1)
- 单元测式 (1)
- PowerDesigner (1)
- jbpm5.2 (1)
- 枚举 (1)
- jquery (2)
- extjs (2)
- tomcat (1)
- jbpm (1)
- 开源 (1)
- maven (2)
- dwr (1)
- Web 前端 (1)
最新评论
-
18335864773:
推荐另一种方法。用pageoffice生成excel。不需要用 ...
java jxl类生成excel -
xwq1849:
太需要了!!感谢感谢~!~~~
flex4 下拉框可以多选 CheckBoxTreeComboBox -
wxhwdmxl:
恩,这个我用到了,解决了我的问题,谢谢
linux 操作系统安装JDK后报Usage: gij错的解决方案 -
Franciswmf:
你好,请问你的jbpm5项目研究透了吗?我正在研究jbpm5, ...
jbpm5.2学习------安装与配置 -
hotapple:
请教下,我想查询用户已提交的申请的处理状态,是否要直接去查询j ...
jbpm4.4+ssh配置
1.applicationContext
2.web.xml
3.数据库配制文件
4.dao
5.dao实现类
6.
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd"> <!-- 启用注解 --> <context:annotation-config /> <context:component-scan base-package="com.*" /> <!-- 自动AOP切面 --> <aop:aspectj-autoproxy /> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="org.logicalcobwebs.proxool.ProxoolDriver"/> <property name="url" value="proxool.mydata"/> </bean> <!-- 配置事务管理器 --> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource"> <ref bean="dataSource" /> </property> </bean> <!-- AOP <bean id="personimport" class="com.sdjt.service.base.PersonImport"></bean> <aop:config> <aop:pointcut expression="execution(public * com.sdjt.service.customer.LPersonService.add*(..))||execution(public * com.sdjt.service.customer.LPersonService.delete*(..))||execution(public * com.sdjt.service.customer.LPersonService.edit*(..))" id="servicePointCut"/> <aop:aspect id="importAspect" ref="personimport"> <aop:after method="afterReturning" pointcut-ref="servicePointCut"/> </aop:aspect> </aop:config> --> <!-- 事务注解 proxy-target-class="true" --> <tx:annotation-driven transaction-manager="transactionManager"/> <!-- SqlMap setup for iBATIS Database Layer --> <bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> <property name="configLocation" value="WEB-INF/sql-map-config.xml"/> <property name="dataSource" ref="dataSource"/> </bean> <bean id="sqlMapClientTemplate" class="org.springframework.orm.ibatis.SqlMapClientTemplate"> <property name="sqlMapClient" ref="sqlMapClient" /> </bean> <bean id="springContext" class="com.sdjt.util.SpringDAOUtil"></bean> <bean id="roleMenuUtil" class="com.sdjt.util.RoleMenuUtil"> <property name="roleServiceImp" ref="roleServiceImpl"></property> <property name="userServiceImp" ref="userServiceImpl"></property> </bean> <!-- 模板管理 --> <!-- import resource="spring_template.xml"--> <!--import resource="classpath:com/springxml/member_bean.xml"--> </beans>
2.web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> <display-name>icrm</display-name> <context-param> <description>!logpath !log4j.properties</description> <param-name>webAppRootKey</param-name> <param-value>icrm.root</param-value> </context-param> <!-- 加载输出界面的表格 --> <context-param> <param-name>jmesaPreferencesLocation</param-name> <param-value>WEB-INF/jmesa/jmesa.properties</param-value> </context-param> <context-param> <param-name>jmesaMessagesLocation</param-name> <param-value>org/jmesa/core/message/resource/jmesaResourceBundle</param-value> </context-param> <!-- 字符编码格式 --> <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> <!-- 配置登录filter --> <filter> <filter-name>loginFilter</filter-name> <filter-class>com.sdjt.security.LoginFilter</filter-class> <init-param> <param-name>passUrl</param-name> <param-value>/ckeditor,/css,/images,/img,/jmesaimages,/js,/login.jsp,/login.jsp,/userManager,/desktopManager,/Charts,/struts-tags,/wapsystem </param-value> </init-param> </filter> <filter-mapping> <filter-name>loginFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <!-- 文件上传的清理过滤器 --> <filter> <filter-name>struts-cleanup</filter-name> <filter-class> org.apache.struts2.dispatcher.ActionContextCleanUp </filter-class> </filter> <filter-mapping> <filter-name>struts-cleanup</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <!-- 配置struts --> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <!-- 加载spring配置文件--> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/applicationContext/applicationContext.xml</param-value> </context-param> <!-- 配置spring下的log4j --> <context-param> <param-name>log4jConfigLocation</param-name> <param-value>/WEB-INF/classes/log4j.properties</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <listener> <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class> </listener> <listener> <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> </listener> <listener> <listener-class>com.sdjt.security.ListenerReq</listener-class> </listener> <listener> <listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class> </listener> <!-- <filter> <filter-name>filter_sms</filter-name> <filter-class>jtml.request.Filter_sms</filter-class> </filter> <filter-mapping> <filter-name>filter_sms</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> --> <!-- 配置proxool数据源 --> <servlet> <servlet-name>ServletConfigurator</servlet-name> <servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator</servlet-class> <init-param> <param-name>xmlFile</param-name> <param-value>WEB-INF/proxool.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet> <servlet-name>InitContextServlet</servlet-name> <servlet-class>com.sdjt.security.InitContextServlet</servlet-class> <load-on-startup>5</load-on-startup> </servlet> <servlet> <servlet-name>proxool</servlet-name> <servlet-class>org.logicalcobwebs.proxool.admin.servlet.AdminServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>proxool</servlet-name> <url-pattern>/proxool</url-pattern> </servlet-mapping> <!-- <servlet> <servlet-name>context</servlet-name> <servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-class> <load-on-startup>2</load-on-startup> </servlet> --> <welcome-file-list> <welcome-file>login.jsp</welcome-file> </welcome-file-list> </web-app>
3.数据库配制文件
<?xml version="1.0" encoding="UTF-8"?> <proxool> <alias>mydata</alias> <driver-url>jdbc:mysql://localhost:3306/smsdemotest?zeroDateTimeBehavior=convertToNull</driver-url> <driver-class>org.gjt.mm.mysql.Driver</driver-class> <statistics>1m,15m,1d</statistics> <driver-properties> <property name="user" value="root"/> <property name="password" value="admin"/> </driver-properties> <prototype-count>5</prototype-count> <maximum-connection-count>20</maximum-connection-count> <minimum-connection-count>5</minimum-connection-count> <maximum-active-time>600000</maximum-active-time> <house-keeping-sleep-time>90000</house-keeping-sleep-time> <house-keeping-test-sql>select CURRENT_DATE</house-keeping-test-sql> </proxool>
4.dao
package com.sdjt.dao.base; import java.util.List; import com.sdjt.util.page.PageData; import com.sdjt.wap.base.WapPage; /** * 业务实体操作接口 * * @author oliver * @date 2010.10.26 * @email wangxiaojun0618@163.com * @param str * 字符串、obj object 对象 */ public interface DAO { /** * 保存对象 * * @param str * 字符串、obj object 对象 */ public Object save(String s, Object obj) throws Exception; /** * 批量添加 * @param s * @param obj * @return * @throws Exception */ public Object saveBatch(String s, List list) throws Exception; /** * 修改对象 * * @param str * 字符串、obj object 对象 */ public Object update(String s, Object obj) throws Exception; /** * 批量更新 * @param s * @param obj * @return * @throws Exception */ public Object updateBatch(String s,List list)throws Exception; /** * 批量更新 * @param s * @param obj * @return * @throws Exception */ public Object updateBatch(String s ,Object obj[])throws Exception; /** * 删除对象 * * @param str * 字符串、obj object 对象 */ public Object delete(String str, Object obj) throws Exception; /** * 批量删除 * @param str * @param obj * @return * @throws Exception */ public Object deleteBatch(String str, Object obj []) throws Exception; /** * 批量删除 * @param str * @param obj * @return * @throws Exception */ public Object deleteBatch(String str, List list) throws Exception; /** * 查找对象 * * @param Str * 字符串、obj object 对象 * @return object */ public Object findForObject(String s, Object obj) throws Exception; /** * 查找对象 * * @param Str * 字符串、obj object 对象 * @return objectList */ public Object findForList(String s, Object obj) throws Exception; /** * 查找对象封装成Map * @param s * @param obj * @return * @throws Exception */ public Object findForMap(String sql, Object obj, String key , String value) throws Exception; /** * 得到总记录 * * @param str * 字符串、obj object 对象 * @return 总记录数 */ public long getcount(String s, Object obj) throws Exception; /** * wap分页公用方法 * @param page * @param pd * @return * @throws Exception */ public WapPage findWapPage(WapPage page ,PageData pd) throws Exception; }
5.dao实现类
package com.sdjt.dao.base; import java.sql.SQLException; import java.util.List; import javax.annotation.Resource; import org.springframework.orm.ibatis.SqlMapClientCallback; import org.springframework.orm.ibatis.SqlMapClientTemplate; import com.ibatis.sqlmap.client.SqlMapExecutor; import com.sdjt.util.page.PageData; import com.sdjt.wap.base.WapPage; /** * @autor oliver * @email wangxiaojun0618@163.com * @data 2010.10.26 * @description dao包基类 * */ public abstract class DaoSupport implements DAO { // sqlmapclient @Resource(name = "sqlMapClientTemplate") protected SqlMapClientTemplate sqlMapClientTemplate; /** * 添加 * * @param String * statement 的id标识 * @param paramObj * 业务bean */ public Object save(String str, Object paramObj) throws Exception { Object obj = sqlMapClientTemplate.insert(str, paramObj); return obj; } /** * 修改 * * @param String * statement 的id标识 * @param paramObj * 业务bean */ public Object update(String str, Object paramObj) throws Exception { Object obj = sqlMapClientTemplate.update(str, paramObj); return obj; } /** * 删除 * * @param String * statement 的id标识 * @param paramObj * 业务bean */ public Object delete(String str, Object paramObj) throws Exception { Object obj = sqlMapClientTemplate.delete(str, paramObj); return obj; } /** * @查询对象 * @param String * statement 的id标识 * @param paramObj * 业务bean * @return 返回一个对象 * */ public Object findForObject(String str, Object paramObj) throws Exception { Object obj = (Object) sqlMapClientTemplate .queryForObject(str, paramObj); return obj; } /** * @查询对象List * @param String * statement 的id标识 * @param paramObj * 业务bean * @return 返回一个对象list * */ public Object findForList(String str, Object paramObj) throws Exception { Object obj = (Object) sqlMapClientTemplate.queryForList(str, paramObj); return obj; } /** * 得到对象的个数 */ public long getcount(String str, Object paramObj) throws Exception { return 1; } /** 得到运行的实体类 */ public String getSubClass() throws Exception { System.out.println("this" + this.getSubClass().getClass()); return ""; } /** * 批量删除 */ public Object deleteBatch(final String str, final Object obj[]) throws Exception { return sqlMapClientTemplate.execute(new SqlMapClientCallback() { public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException { executor.startBatch(); for (Object id : obj) { executor.delete(str, id); } return executor.executeBatch(); } }); } /** * 批量删除 */ public Object deleteBatch(final String str, final List list) throws Exception { return sqlMapClientTemplate.execute(new SqlMapClientCallback() { public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException { executor.startBatch(); for (Object id : list) { executor.delete(str, id); } return executor.executeBatch(); } }); } public Object saveBatch(final String sql, final List list) throws Exception { return sqlMapClientTemplate.execute(new SqlMapClientCallback() { public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException { executor.startBatch(); for (Object obj : list) { executor.insert(sql, obj); } return executor.executeBatch(); } }); } public Object updateBatch(final String sql, final Object[] obj) throws Exception { return sqlMapClientTemplate.execute(new SqlMapClientCallback() { public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException { executor.startBatch(); for (Object o : obj) { executor.update(sql, o); } return executor.executeBatch(); } }); } public Object updateBatch(final String sql, final List list) throws Exception { return sqlMapClientTemplate.execute(new SqlMapClientCallback() { public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException { executor.startBatch(); for (Object id : list) { executor.delete(sql, id); } return executor.executeBatch(); } }); } /** * wap分页公用方法 * * @param page * @param pd * @return * @throws Exception */ public WapPage findWapPage(WapPage page, PageData pd) throws Exception { String sqlId = page.getSqlId(); Object count = sqlMapClientTemplate.queryForObject(sqlId + "Count", pd); // 查询总条数 int totol = (count == null ? 0 : (Integer) count); page.setTotalRowCount(totol); if(totol != 0) { pd.put("curentNum", (page.getCurrentPage() - 1) * page.getRowOfpage()); pd.put("pageSize", page.getRowOfpage()); List<PageData> lists = (List<PageData>) sqlMapClientTemplate .queryForList(sqlId,pd); page.setObjectList(lists); } return page; } public Object findForMap(String sql, Object obj, String key , String value) throws Exception { return sqlMapClientTemplate.queryForMap(sql, obj, key, value); } }
6.
<?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="wxjuser"> <!-- 类起别名 --> <typeAlias alias="pd" type="com.sdjt.util.page.PageData" /> <insert id="add" parameterClass="pd"> INSERT INTO testuser( username, password, email, birthday, address, createtime, modtime, sign, bak) VALUES( #username#, #password#, #email#, #birthday#, #address#, now(), now(), 0, #bak#) </insert> </sqlMap>
- src.rar (530 KB)
- 下载次数: 104
- WebRoot.rar (4.1 MB)
- 下载次数: 81
- 1.rar (7.9 MB)
- 下载次数: 65
- 2.rar (8.6 MB)
- 下载次数: 66
- 4.rar (8.8 MB)
- 下载次数: 78
- 3.rar (8.5 MB)
- 下载次数: 72
相关推荐
在这个“struts2+spring3+ibatis项目整合案例”中,我们将深入探讨这三个框架如何相互配合,实现项目的集成。 Struts2作为MVC(Model-View-Controller)架构的实现,主要负责处理用户请求,控制应用的流程。它提供...
在这个案例中,开发者可能创建了一个简单的Web应用,包括了Struts2的Action类、Spring的Bean配置以及iBatis的数据访问对象(DAO)和SQL映射文件。 在实际的整合过程中,通常会首先配置Struts2的核心配置文件(struts...
通过这个综合性的案例,我们可以看到Struts2、Spring、iBatis和jQuery AJAX如何协同工作,构建一个具有实时验证功能的登录注册系统。这种集成方案在实际开发中非常常见,因为它既能保证代码的清晰结构,又能提供优秀...
NULL 博文链接:https://hanqifeng.iteye.com/blog/840945
在这个"Spring+struts1+ibatis案例"中,我们将深入探讨这三个框架如何相互配合,以及它们各自的核心功能。 首先,Spring框架是Java企业级应用的核心组件,它提供了依赖注入(Dependency Injection, DI)和面向切面...
"liferay + struts2 + spring + ibatis"的整合开发案例就是一个典型示例,它展示了如何将这四个强大的技术结合在一起,构建出一个功能丰富的Web应用程序。下面我们将详细探讨这些技术以及它们在整合中的作用。 **...
Struts2、Spring和iBatis是Java Web开发中三个非常重要的开源框架,它们的集成应用,即SSI2(Struts2 + Spring + iBatis)整合,是构建企业级应用的常见方式。这个"struts2+spring+ibatis做的增删改查的小例子"是一...
struts spring ibatis mysql 分页,增删改查,以及导出excle
Struts、Spring、Ibatis和Mysql是Java Web开发中常用的四大框架,它们组合在一起可以构建出高效、灵活的企业级应用程序。本示例是专为新手设计的一个整合教程,通过详细注解帮助初学者理解这四个组件如何协同工作。 ...
Struts2、Spring和...综上所述,这个案例涵盖了Struts2+Spring+iBatis框架的典型应用场景,通过学习和实践这个案例,开发者可以深入理解这三大框架的协同工作原理,为开发高效、稳定的Java Web应用打下坚实的基础。
标题中的"SSI"是指Struts2、iBatis和Spring2这三种技术的集成框架,常用于构建Java Web应用程序。这三种框架分别承担着不同的职责,共同构建了一个高效、灵活且可扩展的后端系统。 1. **Struts2**: Struts2是一个...
这个"struts2+spring+ibatis客户管理"项目,是一个简单的SSI(Struts2、Spring、iBatis集成)综合案例,旨在帮助开发者理解和实践这三大框架的协同工作。 Struts2是基于MVC设计模式的开源Web应用框架,它负责处理...
在IT行业中,Spring、Struts2和iBatis是三个非常重要的开源框架,它们分别在控制层、表现层和数据访问层发挥着关键作用。整合这三个框架可以构建出高效、可维护的企业级Web应用。接下来,我们将深入探讨这三个框架的...
struts1+spring2+ibatis2开发的用户登录案例 用简单的语言带你进入javaweb开发 体会实用ibatis开发带来的快乐 就是配置ibatis文件有点麻烦,但是配置好后,就会用得很爽 对于想学习的人来说,这是很好的一个案例
总的来说,"eclipse开发的ssi整合struts2+ibatis2.x+spring2.5"是一个实用的学习案例,旨在帮助新手理解这三大框架的协同工作方式。通过实际操作,可以加深对Java Web开发的理解,提升项目开发技能。
Struts1.2、Spring 和 iBatis 是Java Web开发中的三个重要框架,它们共同构建了一个灵活、可扩展且易于管理的应用程序架构。这个压缩包文件 "struts1.2+spring+ibatis.rar" 很可能包含了使用这三个框架集成开发的一...
在"SPRING + STRUTS + IBATIS测试案例"中,我们可以深入学习这三者如何协同工作。首先,Spring作为基础框架,通过XML配置或注解方式来定义和管理Bean,包括Struts的Action类和iBatis的SqlMapClient。JDK1.5的使用...
"ibatis+spring+struts2 整合开发例子"就是一个典型的Java Web应用集成开发案例,旨在帮助开发者理解和掌握这三大框架的协同工作原理。接下来,我们将详细讨论这三个组件以及它们的整合过程。 Ibatis是一个轻量级的...
在这个集成案例中,我们将深入探讨如何实现Struts2、Spring和iBatis的整合,并实现增删查改(CRUD)的基本功能。 首先,Struts2是基于MVC设计模式的开源Web应用框架,用于处理用户请求并展示结果。它的核心是Action...