regeditactionnew.java

来自「本书由浅入深、循序渐进地介绍了MVC的体系结构和如何构建一个基于MVC的Web框」· Java 代码 · 共 154 行

JAVA
154
字号
package com.gc.action;

import java.sql.SQLException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.sql.rowset.CachedRowSet;

import com.gc.dao.UserDAO;
import com.gc.dao.impl.UserDAOImpl;
import com.gd.jdbc.impl.GdDbCommon;
import com.gd.jdbc.impl.GdDbConnection;
import com.gd.mvc.action.Action;
import com.gd.mvc.action.impl.GdAction;
import com.gd.mvc.exception.VODataValidate;
import com.gd.mvc.io.InfoInAndOut;

public class RegeditActionNew extends GdAction{
	private User user = null;
	private String username = null;
	private String password = null;
	public void doBegin() throws VODataValidate, Exception{
		//获取页面中的值
		user = (User)infoIn.getVO();
		username = user.getUsername();
		password = user.getPassword();
		infoOut.put("msg", "请输入用户名和密码");
	}
	public void doEnd() {
		infoOut.put("user", user);
	}
	
	/**该方法用来实现注册
	*/

	public void doRegedit() throws Exception{
		//取得连接
		//GdDbConnection con = new GdDbConnection(this);
		try {			
//			GdDbCommon db = new GdDbCommon(con.getConnection(this));
//			//开始进行事务处理
//			con.beginTransaction(this);
//			//开始预处理
//			String sql = "insert into user (username, password) values(?, ?)";
//			db.PreparedStatement(sql);
//			
//
			long gf = System.currentTimeMillis();
			int counts = 0;
//			for (int i = 0; i < 10000; i++) {
//				db.setString(1, username);
//				db.setString(2, password);
//				counts = db.executeUpdate();
//				//db.addBatch();
//			}
			//counts = db.executeBatch();
			GdDbConnection con = new GdDbConnection(this);
			UserDAO userDao = null;
			for (int i = 0; i < 1; i++) {
				userDao = new UserDAOImpl(con.getConnection(this));
				//开始进行事务处理
				con.beginTransaction(this);
				counts += userDao.createUser(user);
				con.commit(this);
				con.close(this);
			}
			//int counts = userDao.createUser(user);
			
			if (counts != 0) {
				infoOut.put("msg", "注册成功");
			} else {
				infoOut.put("msg", "注册失败");
			}
			System.out.println("使用C3P0连接池时执行1000笔所需时间时间:" + (System.currentTimeMillis() - gf) + "ms");
			//事务提交
			//con.commit(this);
		} catch (SQLException e) {
			e.printStackTrace();
        }  catch(Exception e) {
        	//事务回滚
			//con.rollback(this);
			e.printStackTrace();
		} finally {
			//关闭连接
			//con.close(this);
		}
  	}
	
	/**该方法用来实现查询
	*/

	public void doQuery() {
		try {
			if ("gd".equals(username) && "123456".equals(password)) {
				infoOut.put("msg", "登录成功");
			} else if ("gd".equals(username) && !"123456".equals(password)) {
				infoOut.put("msg", "密码错误");
			} else if (!"gd".equals(username) && "123456".equals(password)) {
				infoOut.put("msg", "用户名错误");
			}  else if (!"gd".equals(username) && !"123456".equals(password)) {
				infoOut.put("msg", "用户名和密码都输入错误");
			} else if ("".equals(username) && "".equals(password)) {
				infoOut.put("msg", "请输入用户名和密码");
			}
			infoOut.put("user", user);
		} catch(Exception e) {
			e.printStackTrace();
		} finally {
			infoOut.put("user", user);
		}
  	}
	
	/**该方法用来实现修改
	*/

	public void doUpdate() {		
		try {
			if ("gd".equals(username) && "123456".equals(password)) {
				infoOut.put("msg", "修改成功");
			} else if ("gd".equals(username) && !"123456".equals(password)) {
				infoOut.put("msg", "密码错误");
			} else if (!"gd".equals(username) && "123456".equals(password)) {
				infoOut.put("msg", "用户名错误");
			}  else if (!"gd".equals(username) && !"123456".equals(password)) {
				infoOut.put("msg", "用户名和密码都输入错误");
			} else if ("".equals(username) && "".equals(password)) {
				infoOut.put("msg", "请输入用户名和密码");
			}
		}  catch(Exception e) {
			e.printStackTrace();
		} finally {
			infoOut.put("user", user);
		}
  	}
	
	/**该方法用来实现删除
	*/

	public void doDelete() {
		try {
			if ("gd".equals(username) && "123456".equals(password)) {
				infoOut.put("msg", "删除成功");
			} else if (!"gd".equals(username)) {
				infoOut.put("msg", "删除失败,请填写正确的用户名");
			}
		}  catch(Exception e) {
			e.printStackTrace();
		} finally {
			infoOut.put("user", user);
		}
  	}
}

⌨️ 快捷键说明

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