事务操作-搭建事务操作环境

 

 1.创建数据库表,添加记录

 

 

mysql连接数据库时报此错误:

//String url = "jdbc:mysql://localhost:3306/user_db" 如果使用这句就会报错。
//Unknown initial character set index '255' received from server. Initial client character set can be forced via the 'characterEncoding' property.
String url = "jdbc:mysql://localhost:3306/db_cjky?useUnicode=true&characterEncoding=utf8";

其中&需要转义为&进行使用

  (1)service注入dao,在dao注入JdbcTemplate,在JdbcTemplate注入DataSource

    

@Service
public class UserService {
    //注入Dao
    @Autowired
    private UserDao userDao;
}

  

@Repository
public class UserDaoImpl implements UserDao{
    @Autowired
    private JdbcTemplate jdbcTemplate;
}

3.在dao创建两个方法:多钱和少钱的方法,在service创建转账的方法

 

  dao层:

@Repository
public class UserDaoImpl implements UserDao{
    @Autowired
    private JdbcTemplate jdbcTemplate;
    //lucy转100给mary
    //少钱的方法
    @Override
    public void reduceMoney() {
    String sql = "update t_account set money=money-? where username=?";
    jdbcTemplate.update(sql,100,"lucy");
    }
    //多钱的方法
    @Override
    public void addMoney() {
        String sql = "update t_account set money=money+? where username=?";
        jdbcTemplate.update(sql,100,"mary");
    }


}

    service层:

@Service
public class UserService {
    //注入Dao
    @Autowired
    private UserDao userDao;

    //转账方法
    public void accountMoney(){
        //lucy少100
        userDao.reduceMoney();

        //mary多100
        userDao.addMoney();
    }
}
posted @ 2021-12-03 10:19  Soleili  阅读(28)  评论(0编辑  收藏  举报