• 【Spring实现模拟银行转账】


    数据库建表和插入数据

    1、数据库建表

    2、插入数据

    项目目录

    代码部分

    1、IAccountDao.java

    1. package com.qingruan.dao;
    2. public interface IAccountDao {
    3. public void addMoney(String name,double money);
    4. public void subMoney(String name,double money);
    5. }

    2、AccountDaoImpl.java

    1. package com.qingruan.dao.impl;
    2. import com.qingruan.dao.IAccountDao;
    3. import org.springframework.beans.factory.annotation.Autowired;
    4. import org.springframework.jdbc.core.JdbcTemplate;
    5. import org.springframework.stereotype.Repository;
    6. @Repository
    7. public class AccountDaoImpl implements IAccountDao {
    8. @Autowired
    9. private JdbcTemplate jdbcTemplate;
    10. @Override
    11. public void addMoney(String name, double money) {
    12. String sql="update account set money = money + ? where name = ?";
    13. jdbcTemplate.update(sql,money,name);
    14. }
    15. @Override
    16. public void subMoney(String name, double money) {
    17. String sql="update account set money = money - ? where name = ?";
    18. jdbcTemplate.update(sql,money,name);
    19. }
    20. }

    3、IAccountService.java

    1. package com.qingruan.service;
    2. public interface IAccountService {
    3. public void transfer(String form,String target,double money);
    4. }

    4、AccountServiceImpl.java

    1. package com.qingruan.service.impl;
    2. import com.qingruan.dao.IAccountDao;
    3. import com.qingruan.service.IAccountService;
    4. import org.springframework.beans.factory.annotation.Autowired;
    5. import org.springframework.stereotype.Service;
    6. @Service
    7. public class AccountServiceImpl implements IAccountService {
    8. @Autowired
    9. private IAccountDao accountDao;
    10. @Override
    11. public void transfer(String form, String target, double money) {
    12. accountDao.subMoney(form,money);
    13. //System.out.println(1/0);
    14. accountDao.addMoney(target,money);
    15. }
    16. }

    5、TestApp.java

    1. package com.qingruan.test;
    2. import com.qingruan.service.IAccountService;
    3. import com.qingruan.service.impl.AccountServiceImpl;
    4. import org.junit.Test;
    5. import org.springframework.context.ApplicationContext;
    6. import org.springframework.context.support.ClassPathXmlApplicationContext;
    7. public class TestApp {
    8. @Test
    9. public void test(){
    10. ApplicationContext app = new ClassPathXmlApplicationContext("applicationContext.xml");
    11. AccountServiceImpl service = (AccountServiceImpl)app.getBean(IAccountService.class);
    12. service.transfer("李四","张三",500);
    13. }
    14. }

    配置文件

    <
  • 相关阅读:
    基于Xml方式Bean的配置-Bean的依赖注入以及·自动装配
    安卓案例:学生信息管理
    gcc: error: : No such file or directory
    【cpolar】搭建我的世界Java版服务器,公网远程联机
    英语学习目标与计划
    5. Longest Palindromic Substring
    Linux内存管理(十五):percpu 机制详解
    Ubuntu18.04搭建OpenGrok代码搜索工具
    程序员必修课:阿里开源SpringBoot全栈小册
    医学图像分割之--Tversky Loss
  • 原文地址:https://blog.csdn.net/xjj1128/article/details/128159482