本文 由于上一篇 mybatis+mysql+springmvc + multidatasource+mchange 没有跑通 换另一种 不是aop 注入写的文章 看过这一篇博客的,可以看看上一篇 ,帮我找到错误。。。。。
自动生成 代码 (自动生成mysql+springmvc + mybatis )
http://knight-black-bob.iteye.com/blog/2208162
http://download.csdn.net/download/knight_black_bob/9226373
mybatis+mysql+springmvc + multidatasource+Atomikos 多数据源
下载 :http://download.csdn.net/download/knight_black_bob/9233289
jar 包括
Atomikos的:
transactions-jdbc
transactions-jta
transactions-api
transactions
atomikos-utils
使用 maven
<dependency> <groupId>com.atomikos</groupId> <artifactId>transactions-jdbc</artifactId> <version>3.7.0</version> </dependency> <dependency> <groupId>javax.transaction</groupId> <artifactId>jta</artifactId> <version>1.1</version> </dependency>
application Context .xml
<?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:cache="http://www.springframework.org/schema/cache" xmlns:context="http://www.springframework.org/schema/context" xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:jee="http://www.springframework.org/schema/jee" xmlns:jms="http://www.springframework.org/schema/jms" xmlns:lang="http://www.springframework.org/schema/lang" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:oxm="http://www.springframework.org/schema/oxm" xmlns:p="http://www.springframework.org/schema/p" xmlns:task="http://www.springframework.org/schema/task" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:util="http://www.springframework.org/schema/util" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache-3.1.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.1.xsd http://www.springframework.org/schema/jms http://www.springframework.org/schema/jms/spring-jms-3.1.xsd http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-3.1.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd http://www.springframework.org/schema/oxm http://www.springframework.org/schema/oxm/spring-oxm-3.1.xsd http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.1.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.1.xsd"> <context:annotation-config /> <aop:aspectj-autoproxy proxy-target-class="true" /> <context:component-scan base-package="cn.com.oneweb" /> <context:component-scan base-package="cn.com.twoweb" /> <context:component-scan base-package="cn.com.baoy.controller" /> <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="location" value="classpath:db-config.properties" /> </bean> <bean id="dataSourceOne" class="com.atomikos.jdbc.AtomikosDataSourceBean" init-method="init" destroy-method="close"> <property name="uniqueResourceName" value="ds1"/> <property name="xaDataSourceClassName" value="com.mysql.jdbc.jdbc2.optional.MysqlXADataSource"/> <property name="xaProperties"> <props> <prop key="url">jdbc:mysql://localhost:3306/database?useUnicode=true&characterEncoding=utf8</prop> <prop key="user">root</prop> <prop key="password">root</prop> </props> </property> <property name="minPoolSize" value="10" /> <property name="maxPoolSize" value="100" /> <property name="borrowConnectionTimeout" value="30" /> <property name="testQuery" value="select 1" /> <property name="maintenanceInterval" value="60" /> </bean> <bean id="dataSourceTwo" class="com.atomikos.jdbc.AtomikosDataSourceBean" init-method="init" destroy-method="close"> <property name="uniqueResourceName" value="ds2"/> <property name="xaDataSourceClassName" value="com.mysql.jdbc.jdbc2.optional.MysqlXADataSource"/> <property name="xaProperties"> <props> <prop key="url">jdbc:mysql://localhost:3306/database2?useUnicode=true&characterEncoding=utf8</prop> <prop key="user">root</prop> <prop key="password">root</prop> </props> </property> <property name="minPoolSize" value="10" /> <property name="maxPoolSize" value="100" /> <property name="borrowConnectionTimeout" value="30" /> <property name="testQuery" value="select 1" /> <property name="maintenanceInterval" value="60" /> </bean> <!-- <bean id="dataSourceTwo" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"> <property name="driverClass" value="${two.jdbc.driverClass}" /> <property name="jdbcUrl" value="${two.jdbc.url}" /> <property name="user" value="${two.jdbc.user}" /> <property name="password" value="${two.jdbc.password}" /> <property name="initialPoolSize" value="${two.jdbc.initialPoolSize}" /> <property name="minPoolSize" value="${two.jdbc.minPoolSize}" /> <property name="maxPoolSize" value="${two.jdbc.maxPoolSize}" /> <property name="checkoutTimeout" value="${two.jdbc.checkoutTimeout}" /> <property name="idleConnectionTestPeriod" value="${two.jdbc.idleConnectionTestPeriod}" /> <property name="maxIdleTime" value="${two.jdbc.maxIdleTime}" /> <property name="maxStatements" value="${two.jdbc.maxStatements}" /> <property name="testConnectionOnCheckout" value="${two.jdbc.testConnectionOnCheckout}" /> </bean> --> </beans>
applicationContext-mybatis.xml
<?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:cache="http://www.springframework.org/schema/cache" xmlns:context="http://www.springframework.org/schema/context" xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:jee="http://www.springframework.org/schema/jee" xmlns:jms="http://www.springframework.org/schema/jms" xmlns:lang="http://www.springframework.org/schema/lang" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:oxm="http://www.springframework.org/schema/oxm" xmlns:p="http://www.springframework.org/schema/p" xmlns:task="http://www.springframework.org/schema/task" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:util="http://www.springframework.org/schema/util" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache-3.1.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.1.xsd http://www.springframework.org/schema/jms http://www.springframework.org/schema/jms/spring-jms-3.1.xsd http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-3.1.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd http://www.springframework.org/schema/oxm http://www.springframework.org/schema/oxm/spring-oxm-3.1.xsd http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.1.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.1.xsd"> <!-- 创建SqlSessionFactory,同时指定数据源 --> <!-- <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"/> <property name="mapperLocations" value="classpath*:cn/com/*/mapper/*.xml" /> </bean> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="cn.com.*.dao" /> </bean> --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="cn.com.oneweb.dao" /> <property name="sqlSessionFactory" ref="sqlSessionFactory1"/> </bean> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="cn.com.twoweb.dao" /> <property name="sqlSessionFactory" ref="sqlSessionFactory2"/> </bean> <bean id="sqlSessionFactory1" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSourceOne"/> <property name="mapperLocations" value="classpath*:cn/com/oneweb/mapper/*.xml" /> </bean> <bean id="sqlSessionFactory2" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSourceTwo"/> <property name="mapperLocations" value="classpath*:cn/com/twoweb/mapper/*.xml" /> </bean> </beans>
springmvc-servlet.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xmlns:oxm="http://www.springframework.org/schema/oxm" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/oxm http://www.springframework.org/schema/oxm/spring-oxm-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd"> <!-- 激活Spring注解方式:自动扫描,并注入bean --> <context:component-scan base-package="cn.com.baoy.controller" /> <!-- 配置视图解析 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="" p:suffix=".jsp"> <property name="order" value="0" /> </bean> <!-- 默认的注解映射的支持 --> <mvc:annotation-driven/> </beans>
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:jsp="http://java.sun.com/xml/ns/javaee/jsp" 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" version="3.0"> <display-name></display-name> <!-- welcome page --> <welcome-file-list> <welcome-file>/back/jsp/main.jsp</welcome-file> </welcome-file-list> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext*.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- springmvc --> <servlet> <servlet-name>springMVC</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:springMVC-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springMVC</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> </web-app>
UserDao
package cn.com.oneweb.dao; import java.util.List; import cn.com.baoy.bean.User; public interface UserDao { //查所有 public List<User> allUser(); //删除 public void delUser(int userId); //获取一个form public User user(int userId); //修改 public void updateUser(User user); //添加 public void addUser(User user); }
Mapper.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > <mapper namespace="cn.com.oneweb.dao.UserDao"> <select id="allUser" resultType="cn.com.baoy.bean.User"> select * from t_user </select> <delete id="delUser" parameterType="int"> delete from t_user where userId = #{ userId} </delete> <insert id="addUser" parameterType="cn.com.baoy.bean.User"> INSERT INTO t_user (userId,userName,password,tel,sex,description) VALUE (null,#{userName},#{password},#{tel},#{sex},#{description}) </insert> <select id="user" resultType="cn.com.baoy.bean.User"> select * from t_user where userId = #{ userId} </select> <update id="updateUser" parameterType="cn.com.baoy.bean.User" > update t_user <set> <if test="userName != null ">userName = #{userName},</if> <if test="password != null ">password = #{password},</if> <if test="tel != null ">tel = #{tel},</if> <if test="sex != null ">sex = #{sex},</if> <if test="description != null ">description = #{description},</if> </set> where userId = #{ userId} </update> </mapper>
service
package cn.com.oneweb.service; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import cn.com.baoy.bean.User; import cn.com.oneweb.dao.UserDao; @Service public class UserService { @Autowired UserDao userDao; public List<User> allUser(){ return userDao.allUser(); } public void delUser(int userId){ userDao.delUser(userId); } public User user(int userId){ return userDao.user(userId); } public void updateUser(User user){ userDao.updateUser(user); } public void addUser(User user){ userDao.addUser(user); } }
controller
import java.util.List; import javax.servlet.http.HttpSession; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import cn.com.baoy.bean.User; import cn.com.oneweb.service.UserService; import cn.com.twoweb.service.User2Service; @Controller public class UserController { @Autowired User2Service user2Service; @Autowired UserService userService; @RequestMapping(value = "/userView.do") public String userView(ModelMap modelMap,String pageNo, String choice, HttpSession session){ List<User> userList = userService.allUser(); List<User> userList2 = user2Service.allUser(); userList.addAll(userList2); modelMap.put("userList", userList); return "back/jsp/user/userView"; }
捐助开发者
在兴趣的驱动下,写一个免费
的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(右上角的爱心标志,支持支付宝和PayPal捐助),没钱捧个人场,谢谢各位。
谢谢您的赞助,我会做的更好!
相关推荐
mybatis+mysql+springmvc + multidatasource+Atomikos 多数据源 (可以跑通的) http://knight-black-bob.iteye.com/blog/2253726
标题 "Springmvc+dubbo+mybatis+mysql+redis" 描述了一个基于Java技术栈的分布式微服务架构。在这个系统中,SpringMVC作为前端控制器处理HTTP请求,Dubbo用于服务治理,MyBatis是持久层框架,MySQL是关系型数据库,...
基于SpringMVC+Spring+MyBatis+Maven项目案例 基于SpringMVC+Spring+MyBatis+Maven项目案例 基于SpringMVC+Spring+MyBatis+Maven项目案例 基于SpringMVC+Spring+MyBatis+Maven项目案例 基于SpringMVC+Spring+MyBatis...
总之,"mybatis+mysql+springmvc + multidatasource 多数据源"的组合是企业级应用中常见的一种解决方案,它结合了各自组件的优势,以适应复杂的企业级需求,实现高可用和高性能的数据库访问。在开发过程中,对这些...
本项目框架“maven+springMVC+mybatis+velocity+mysql+junit”提供了一种高效、灵活且可维护的解决方案。以下将详细讲解这些组件及其作用。 1. Maven: Maven是一个项目管理工具,用于构建、依赖管理和项目信息...
基于Springboot+Mybatis+Redis+MySql+MQ的校园医疗管理系统源码+数据库.zip 基于Springboot+Mybatis+Redis+MySql+MQ的校园医疗管理系统源码+数据库.zip 基于Springboot+Mybatis+Redis+MySql+MQ的校园医疗管理系统...
"SpringMvc+Spring+Mybatis+Maven+注解方式"是一个经典的Java后端技术栈,它整合了四个关键组件,为开发人员提供了强大的工具和框架支持。下面将详细讲解这四个组件及其整合方式。 1. **Spring Framework**: ...
【资源说明】 1、该资源包括项目的全部源码,下载可以直接使用! 2、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,作为参考资料学习...基于SpringMVC+Spring+MyBatis+Maven项目案例源
"maven+spring MVC+Mybatis+jetty+mysql" 的组合是常见的开发栈,它涵盖了项目管理、前端控制器、持久层操作、应用服务器以及数据库管理等多个层面。下面将详细介绍这些关键技术及其在实际应用中的作用。 1. Maven...
Spring+SpringMVC+MyBatis+Shiro+MySQL+Redis+Maven+EasyUI+Bootstrap实现的通用权限管理系统。 Spring+SpringMVC+MyBatis+Shiro+MySQL+Redis+Maven+EasyUI+Bootstrap实现的通用权限管理系统 Spring+SpringMVC+...
项目描述 在上家公司自己集成的一套系统,用了两个多月的时间完成的:Springboot+Mybatis-plus+ SpringMvc+Shiro+Redis企业级开发系统 Springboot作为容器,使用mybatis作为持久层框架 使用官方推荐的thymeleaf做为...
ZooKeeper+dubbo+springMvc+Mybatis+Mysql实例,项目是由maven搭建的 整合Dubbo\spring\springMvc\Mybatis,整个压缩包中有两个项目分别是提供者和消费,启动方式是打成WAR形式放到tomcat中启动。
SSM框架是Java Web开发中常用的三大框架——Spring、SpringMVC和Mybatis的组合,它们协同工作,构建高效、灵活的Web应用。IDEA作为Java开发的主流集成开发环境,Maven则作为项目管理和构建工具,而MySQL是常见的关系...
这是一个java WEB小项目,用 Maven Springboot+mybatis+mysql+redis集成的小项目例子,可供新手进行参考学习,数据库是mysql 5.5 ,只是一个简单的小参考例子,测试过可以正常运行
Spring和SpringMVC负责业务逻辑和控制流程,Mybatis处理数据库操作,MySQL存储数据,Redis提供高速缓存,而Maven则帮助管理和构建整个项目。对于初学者来说,理解并实践这个项目,能够全面掌握这些流行技术的整合...
在构建Web应用程序时,"Spring4+SpringMVC+mysql+memcached【同时支持mybatis+hibernate两种底层操作框架】"是一个常见的技术栈,它涵盖了多个关键组件,为高效、灵活的开发提供了坚实的基础。以下是这个技术组合中...
一个简单的springboot+mybatis+mysql的CRUD项目,适合想快速上手springboot项目的同学进行研究,四个接口都经过本人测试通过,可放心下载,如有疑问,可随时联系本人,看到后第一时间帮忙处理
SpringBoot+Mybatis+Atomikos+Mysql+Oracle 多数据源分布式事物后台搭建 完整demo包,直接下下来解压,数据库配成自己的库,表自己的表,修改下脚本直接跑,网上大把资料,没一个能直接用的,这里花了点时间稍做...
4. 创建Spring配置文件,配置数据源、事务管理器、MyBatis的SqlSessionFactory等。 5. 集成Redis,配置Redis连接池,编写RedisTemplate或StringRedisTemplate的配置,实现数据缓存操作。 6. 编写Spring MVC的...
这个"springboot+mybatis+mysql+thymeleaf 实现最基本数据库操作demo"是一个典型的Web应用程序开发流程,下面将详细介绍涉及的知识点。 1. **SpringBoot框架**: SpringBoot是由Pivotal团队提供的全新框架,旨在...