mybatis spring 框架整合
- driver=com.mysql.jdbc.Driver
- url=jdbc:mysql://localhost:3306/test
- user=LF
- password=LF
- <?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:p="http://www.springframework.org/schema/p"
- xmlns:tx="http://www.springframework.org/schema/tx"
- xmlns:aop="http://www.springframework.org/schema/aop"
- xmlns:context="http://www.springframework.org/schema/context"
- 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/aop
- http://www.springframework.org/schema/aop/spring-aop.xsd
- http://www.springframework.org/schema/tx
- http://www.springframework.org/schema/tx/spring-tx.xsd">
- <!-- 引入外部文件 -->
- <context:property-placeholder location="classpath:jdbc.properties" />
- <!-- 配置包扫描 -->
- <context:component-scan base-package="cn.zr"/>
- <!-- 启用自动代理 -->
- <aop:aspectj-autoproxy/>
- <!-- 配置事务传播属性 -->
- <tx:advice id="advice" transaction-manager="transactionManager">
- <tx:attributes>
- <!-- 所有已get开头的方法都是只读,换句话说,get开始的方法不参与事务
- -->
- <tx:method name="get*" read-only="true" />
- <!-- 其他方法使用默认配置 -->
- <tx:method name="*" rollback-for="java.lang.Throwable" />
- </tx:attributes>
- </tx:advice>
- <aop:config>
- <!-- 配置切点 -->
- <aop:pointcut expression="execution(* cn.zr.pringandmybatis.service.impl.*.*(..))" id="pointcut"/>
- <!-- 将通知(事务属性)与切点连接一起 -->
- <aop:advisor advice-ref="advice" pointcut-ref="pointcut" />
- </aop:config>
- <!-- 配置数据源 -->
- <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
- <property name="driverClassName" value="${driver}"></property>
- <property name="url" value="${url}"></property>
- <property name="username" value="${user}"></property>
- <property name="password" value="${password}"></property>
- </bean>
- <!-- 配置事务管理器 -->
- <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
- <property name="dataSource" ref="dataSource"></property>
- </bean>
- <!-- mybatis配置 -->
- <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
- <!-- 关联数据源 -->
- <property name="dataSource" ref="dataSource"/>
- <!-- 配置mybatis配置文件的路径 -->
- <property name="configLocation" value="classpath:mybatis-config.xml"/>
- <!-- 配置要映射类包的路径 -->
- <property name="typeAliasesPackage" value="cn.zr.pringandmybatis.pojo"/>
- <property name="mapperLocations">
- <list>
- <value>classpath:cn/zr/pringandmybatis/mapper/xml/*Mapper.xml</value>
- </list>
- </property>
- </bean>
- <!-- MyBatis扫描 -->
- <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
- <!-- 指定对应的接口跟Maper.xml文件映射所在的包 -->
- <property name="basePackage" value="cn.zr.pringandmybatis.mapper"/>
- <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
- </bean>
- </beans>
- <!DOCTYPE configuration
- PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
- "http://mybatis.org/dtd/mybatis-3-config.dtd">
- <configuration>
- </configuration>
- <?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.zr.pringandmybatis.mapper.UserMapper">
- <!-- 配置数据库字段与实体类属性的对应关系 -->
- <resultMap type="User" id="userinfo">
- <id column="username" property="name" />
- <result column="age" property="age"/>
- </resultMap>
- <!-- 查询所有用户的信息 -->
- <select id="getAllUserInfo" resultMap="userinfo">
- select username,age from user
- </select>
- <!-- 添加用户 -->
- <insert id="addUser" parameterType="User">
- insert into user (username,age) values(#{name},#{age})
- </insert>
- <!-- 更新用户 -->
- <update id="updateUser" parameterType="User">
- update user set age = #{age} where username=#{name}
- </update>
- <delete id="deleteUser" parameterType="java.lang.String">
- delete from user where username=#{name}
- </delete>
- </mapper>
- package cn.zr.pringandmybatis.pojo;
- public class User {
- private String name;
- private int age;
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public int getAge() {
- return age;
- }
- public void setAge(int age) {
- this.age = age;
- }
- public User() {
- }
- public User(String name, int age) {
- this.name = name;
- this.age = age;
- }
- @Override
- public String toString() {
- return "User [name=" + name + ", age=" + age + "]";
- }
- }
- package cn.zr.pringandmybatis.mapper;
- import java.util.List;
- import org.springframework.stereotype.Component;
- import cn.zr.pringandmybatis.pojo.User;
- @Component
- public interface UserMapper {
- /**
- * 获取所有用户的信息
- * @return 用户对象的集合
- */
- public List<User> getAllUserInfo();
- /**
- * 添加用户
- * @param user 被添加的用户
- * @return 返回成功操作数据库的数据量
- */
- public int addUser(User user);
- /**
- * 更新用户信息
- * @param user 被更新的用户
- * @return 返回成功操作数据库的数据量
- */
- public int updateUser(User user);
- /**
- * 通过用户名删除用户
- * @param name 用户名
- * @return 返回成功操作数据库的数据量
- */
- public int deleteUser(String name);
- }
- package cn.zr.pringandmybatis.service;
- import java.util.List;
- import cn.zr.pringandmybatis.pojo.User;
- public interface OperationService {
- /**
- * 获取所有的用户
- * @return 返回用户集合
- */
- List<User> getAllUserInfo();
- /**
- * 添加用户
- * @param user 被添加的用户
- * @return 返回成功操作数据库的数据量
- */
- int addUser(User user);
- /**
- * 更新用户信息
- * @param user 被更新的用户
- * @return 返回成功操作数据库的数据量
- */
- int updateUser(User user);
- /**
- * 通过用户名删除用户
- * @param name 用户名
- * @return 返回成功操作数据库的数据量
- */
- int deleteUser(String name);
- }
- package cn.zr.pringandmybatis.service.impl;
- import java.util.List;
- import javax.annotation.Resource;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Component;
- import cn.zr.pringandmybatis.mapper.UserMapper;
- import cn.zr.pringandmybatis.pojo.User;
- import cn.zr.pringandmybatis.service.OperationService;
- @Component
- public class OperationServiceImpl implements OperationService {
- @Resource
- private UserMapper userMapper;
- @Override
- public List<User> getAllUserInfo() {
- return userMapper.getAllUserInfo();
- }
- @Override
- public int addUser(User user) {
- return userMapper.addUser(user);
- }
- @Override
- public int updateUser(User user) {
- return userMapper.updateUser(user);
- }
- @Override
- public int deleteUser(String name) {
- return userMapper.deleteUser(name);
- }
- }
- package cn.zr.pringandmybatis.utils;
- import java.util.List;
- import org.springframework.context.ApplicationContext;
- import org.springframework.context.support.ClassPathXmlApplicationContext;
- import cn.zr.pringandmybatis.pojo.User;
- import cn.zr.pringandmybatis.service.OperationService;
- public class TestClass {
- public static void main(String[] args) {
- ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
- //获取实现类对象
- OperationService operationService = (OperationService)ac.getBean(OperationService.class);
- /*//查询所有的数据
- List<User> list = operationService.getAllUserInfo();
- for (User user : list) {
- System.out.println(user);
- }*/
- /*// 添加数据
- User user = new User("甘", 25);
- int count = operationService.addUser(user);
- if (count>0) {
- System.out.println("添加成功");
- }else {
- System.out.println("添加失败");
- }*/
- /*// 修改
- User user = new User("甘雨路", 20);
- int count = operationService.updateUser(user);
- if (count>0) {
- System.out.println("修改成功");
- }else {
- System.out.println("修改失败");
- }*/
- // 删除
- int count = operationService.deleteUser("甘露");
- if (count>0) {
- System.out.println("删除成功");
- }else {
- System.out.println("删除失败");
- }
- }
- }
mybatis spring 框架整合的更多相关文章
- Mybatis+Spring框架整合
1.整合思路 1.SqlSessionFactory对象应该放到spring容器中作为单例存在. 2.传统dao的开发方式中,应该从spring容器中获得sqlsession对象. 3.Mapper代 ...
- Spring+SpringMVC+MyBatis+Maven框架整合
本文记录了Spring+SpringMVC+MyBatis+Maven框架整合的记录,主要记录以下几点 一.Maven需要引入的jar包 二.Spring与SpringMVC的配置分离 三.Sprin ...
- Spring 框架整合Struts2 框架和 Hibernate 框架
1. Spring 框架整合 Struts2 框架 // [第一种整合方式(不推荐)](http://www.cnblogs.com/linkworld/p/7718274.html) // 从 Se ...
- 使用Spring框架整合Java Mail
我的博客名为黑客之谜,今天演示的案例中会出现我的邮箱,还不赶紧收藏!我现在是小白,但是随着时间的流逝,我会逐渐向大神走进,所以,喜欢我的,或者喜欢大神的,点一波关注吧!顺便说一下,双十二快到了,有什么 ...
- 学习spring第五天 mybatis+spring的整合(maven多模块数据查询使用了分页和连接池),以及aop
mybatis+spring的整合: 导入的依赖:1.数据库连接:mysql-connector-java 2.连接池:druid 3.servlet:javax.servlet-api 4.jstl ...
- 【Java】MyBatis与Spring框架整合(一)
本文将利用 Spring 对 MyBatis 进行整合,在对组件实现解耦的同时,还能使 MyBatis 框架的使用变得更加方便和简单. 整合思路 作为 Bean 容器,Spring 框架提供了 IoC ...
- spring 框架整合mybatis的源码分析
问题:spring 在整合mybatis的时候,我们是看不见sqlSessionFactory,和sqlsession(sqlsessionTemplate 就是sqlsession的具体实现)的,这 ...
- Spring+mybatis+struts框架整合的配置具体解释
学了非常久的spring+mybatis+struts.一直都是单个的用他们,或者是两两组合用过,今天总算整合到一起了,配置起来有点麻烦.可是配置完一次之后.就轻松多了,那么框架整合配置具体解释例如以 ...
- 吴裕雄--天生自然JAVA SPRING框架开发学习笔记:SSM(Spring+Spring MVC+MyBatis)框架整合搭建详细步骤
因为 Spring MVC 是 Spring 框架中的一个子模块,所以 Spring 与 SpringMVC 之间不存在整合的问题.实际上,SSM 框架的整合只涉及 Spring 与 MyBatis ...
随机推荐
- Mac OS X显示隐藏文件命令
defaults write com.apple.finder AppleShowAllFiles Yes && killall Finder //显示隐藏文件 defaults wr ...
- 【spring源码学习】spring的IOC容器在初始化bean过程
[一]初始化IOC的bean的时候Spring会执行的一些回调方法 (1)spring bean创建的前置处理 =>ApplicationContextAwareProcessor 在创建bea ...
- LG4779 【模板】单源最短路径(标准版)
题意 给定一个 \(N\) 个点,\(M\) 条有向边的带非负权图,请你计算从 \(S\) 出发,到每个点的距离. 数据保证你能从 \(S\) 出发到任意点. \(1≤N≤100000\): \(1≤ ...
- win10开始键点击无效果
1.在键盘上按下win+R键,或在开始菜单图标上点击右键选择运行: 2.输入powershell,按下“确定”运行:3.在窗口里输入或复制粘贴以下命令,注意只有一行: Get-AppxPackage ...
- cookie跨站脚本漏洞解决方案
近日项目碰到一个跨脚本注入的问题: 这安全测评工具也是厉害了,直接将脚本注入到cookie里头,以前没有碰到这样的情况. 之前写过一篇文章过滤跨脚本注入的问题.<浅谈XSS攻击原理与解决方法&g ...
- CENTOS7配置静态IP后无法ping通外部网络的问题
我今天想谈论的并不是如何配置静态IP,这样的话题已经有好多高手再谈. 我想谈的是为什么,我按照他们的教程无论如何也要发生各种问题,没办法连接外网的问题. 先给大家看我的最终版配置方案:我只修改了一个文 ...
- ui-router 1.0以上的 $stateChangeStart
ui-router transitionhooks 统一控制路由跳转, 前台控制如果没有登录就跳转到登录页面, 当然也可以在后台控制, 如果没有登录就返回对应的错误码, 然后在response中直接跳 ...
- 对实体 "useSSL" 的引用必须以 ';' 分隔符结尾。
<property name="connection.url">jdbc:mysql://127.0.0.1/cache?useUnicode=true&cha ...
- 运行maven打出来的jar包报错:Unable to locate Spring NamespaceHandler for XML schema namespace
问题背景:新建了一个maven项目,打了一个可运行jar包,依赖了spring几个jar包,一跑就报错了 E:\workspace\point-circle\target>java -jar p ...
- javascript中原型学习
学习地址:http://www.cnblogs.com/wangfupeng1988/tag/%E5%8E%9F%E5%9E%8B/