⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 accountdao.java

📁 网上银行系统(struts+hibernate)附带数据库。
💻 JAVA
字号:
package org.myrose.dao;

import org.hibernate.Session;
import org.hibernate.Transaction;
import org.myrose.bean.Account;
import org.myrose.hibernatefactory.HibernateSessionFactory;

public class AccountDAO {

	/**
	 * 存款操作
	 * @param account
	 * @return
	 */
	public boolean deposit(Account account){
		Session session = null;
		Transaction tx =  null;
		boolean b = false;
		try {
			session = HibernateSessionFactory.getSession();
			tx= session.beginTransaction();
			Account acc = (Account)session.get(Account.class, account.getId());
			acc.setBalance(new Double(acc.getBalance().doubleValue()+account.getBalance().doubleValue()));
			session.update(acc);
			b = true;
		} catch (Exception e) {
			tx.rollback();
			e.printStackTrace();
		}finally{
			tx.commit();
			HibernateSessionFactory.closeSession();
		}
		return b;
	}
	/**
	 * 转帐操作
	 * @param first
	 * @param second
	 * @return
	 */
	public boolean transfer(Account first,Account second){
		Session session = null;
		Transaction tx = null;
		boolean b = false;
		try {
			session = HibernateSessionFactory.getSession();
			tx = session.beginTransaction();
			Account account1 = (Account)session.get(Account.class, first.getId());
			Account account2 = (Account)session.get(Account.class, second.getId());
			account1.setBalance(new Double(account1.getBalance().doubleValue()-first.getBalance().doubleValue()));
			account2.setBalance(new Double(account2.getBalance().doubleValue()+first.getBalance().doubleValue()));
			session.update(account1);
			session.update(account2);
			b = true;
		} catch (Exception e) {
			tx.rollback();
			e.printStackTrace();
		}finally{
			tx.commit();
			HibernateSessionFactory.closeSession();
		}
		return b;
	}
	/**
	 * 修改密码
	 * @param account
	 * @return
	 */
	public boolean modify(Account account){
		Session session = null;
		Transaction tx = null;
		boolean b = false;
		try {
			session = HibernateSessionFactory.getSession();
			tx = session.beginTransaction();
			Account acc = (Account)session.get(Account.class, account.getId());
			acc.setPassword(account.getPassword());
			session.update(acc);
			b = true;
		} catch (Exception e) {
			tx.rollback();
			e.printStackTrace();
		}finally{
			tx.commit();
			HibernateSessionFactory.closeSession();
		}
		return b;
	}
	/**
	 * 查看帐户信息(登录验证、查看余额)
	 * @param id 
	 * @return
	 */
	public Account getAccount(String id){
		Session session = null;
		Transaction tx = null;
		Account acc = null;
		try {
			session = HibernateSessionFactory.getSession();
			tx = session.beginTransaction();
			acc = (Account)session.get(Account.class, id);
		} catch (Exception e) {
			tx.rollback();
			e.printStackTrace();
		}finally{
			tx.commit();
			HibernateSessionFactory.closeSession();
		}
		return acc;
	}
	/**
	 * 取款操作
	 * @param account
	 * @return
	 */
	public boolean disburse(Account account){
		Session session = null;
		Transaction tx = null;
		boolean b = false;
		try {
			session = HibernateSessionFactory.getSession();
			tx = session.beginTransaction();
			Account acc = (Account)session.get(Account.class, account.getId());
			acc.setBalance(new Double(acc.getBalance().doubleValue()-account.getBalance().doubleValue()));
			session.update(acc);
			b = true;
		} catch (Exception e) {
			tx.rollback();
			e.printStackTrace();
		}finally{
			tx.commit();
			HibernateSessionFactory.closeSession();
		}
		return b;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -