整合ssm(6)之整合Mybatis框架

编写配置文件

在applicationContext.xml文件中

<!--Spring整合mybatis框架   start-->
	<!--1.配置连接池-->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
    <property name="driverClass" value="com.mysql.jdbc.Driver"/>
    <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/ssm"/>
    <property name="user" value="root"/>
    <property name="password" value="root"/>
</bean>
	<!--2.配置工厂对象:SqlSessionFactory-->
<bean id="sessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="dataSource" ref="dataSource"></property>
</bean>
	<!--3.配置接口所在的包-->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer" id="mapperScanner">
    <property name="basePackage" value="xyz.zhouzhousag.dao"></property>
</bean>
<!--Spring整合mybatis框架   end-->

<!--配置Spring框架声明式事务管理      start-->
<!--配置事务管理器-->
<!--DataSourceTransactionManager:mybatis框架用到的事务管理器-->
<bean class="org.springframework.jdbc.datasource.DataSourceTransactionManager" id="transactionManager">
    <!--传入连接池对象-->
    <property name="dataSource" ref="dataSource"></property>
</bean>
<!--配置事务通知-->
<tx:advice id="txAdvice" transaction-manager="transactionManager">
    <tx:attributes>
        <!--以find打头的方法:只读-->
        <tx:method name="find*" read-only="true"/>
        <!--设置隔离级别-->
        <tx:method name="*" isolation="DEFAULT"/>
    </tx:attributes>
</tx:advice>
<!--配置AOP增强-->
<aop:config>
    <!--引用事务的通知    pointcur:切入点的表达式(修饰符[可省略不写] 返回值 包名.以ServieceImapl结尾的方法.任意参数)-->
    <aop:advisor advice-ref="txAdvice" pointcut="execution(* xyz.zhouzhousag.service.impl.*ServiceImpl.*(..))"/>
</aop:config>
<!--配置Spring框架声明式事务管理      end-->

配置完之后可以将SqlMapConfig.xml 删除。

DAO接口

增添注解

@Repository
public interface IAccountDAO {
    
}

编写测试方法

controller

@Controller
@RequestMapping("/account")
public class AccountController {

    @Autowired
    private IAccountService accountService;

    @RequestMapping("/findAll")
    public String findAll(Model model){
        System.out.println("表现层:查询所有账户信息");
        List<Account> all = accountService.findAll();
        model.addAttribute("list",all);
        return "list";
    }
    @RequestMapping("/save")
    public String save(Account account){
        System.out.println("表现层:保存账户信息");
        accountService.saveAccount(account);
        return "list";
    }
}

index.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<a href="account/findAll"> 测试 </a>
<form method="post" action="account/save">
    姓名:<input type="text" name="name">
    金额:<input type="text" name="money">
    <input type="submit" value="保存">
</form>

</body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值