当前位置:编程学习 > JSP >>

怎样用jsp编写用户的登录和注册代码并与oracle数据库连接 要源代码 谢谢了

主要是与oracle数据库连接
答案:我给你我原来写过的吧。很久以前的了。只给你连接数据库这些,其他的你自己看着写吧。
下面是我当初写的其中一个dao类,有注释。你看看,模仿着写吧,肯定能写出来。.
package com.dao;

import java.sql.Connection;
import java.sql.Date;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.List;

import javax.servlet.jsp.jstl.sql.Result;
import javax.servlet.jsp.jstl.sql.ResultSupport;

import com.tool.BaseTool;

public class BillDAO {
	// 数据库连接
	private Connection con;
	// 数据库SQL语句执行者对象
	private Statement stmt;
	// 数据库SQL语句执行者对象
	private PreparedStatement pstmt;
	// 数据库SQL查询结果集
	private ResultSet rs;

	// 打开数据库连接
	private void openConnection() {

		try {
			// 加载数据库驱动
			Class.forName("oracle.jdbc.driver.OracleDriver");
			// 获得数据库连接
			con = DriverManager.getConnection(
					"jdbc:oracle:thin:@localhost:1521:orcllib", "zxl", "zxl");
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		}

	}

	// 关闭数据库连接及资源
	private void closeConnection() {
		if (rs != null) {
			try {
				rs.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		if (stmt != null) {
			try {
				stmt.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		if (pstmt != null) {
			try {
				pstmt.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		if (con != null) {
			try {
				con.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
	}
	
	//检查账单编号是否存在的方法
	@SuppressWarnings("finally")
	public boolean checkBillNumber(long bill_number) {
		boolean result = false;
		openConnection();
		// 编写SQL语句
		String sql = "select b.bill_number from bill b";
		try {
			// 实例化执行SQL语句的对象preparedstatement
			stmt = con.createStatement();
			// 执行查询语句并返回结果集
			rs = stmt.executeQuery(sql);
			while (rs.next()) {
				if (bill_number == rs.getLong("bill_number")) {
					return result;
				}
			}
			result = true;
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			// 关闭数据库连接及资源
			closeConnection();
			return result;
		}
	}
	

	//分页显示账单列表的方法
	@SuppressWarnings("finally")
	public Result getPagingBill(int page_number, int page_data_number) {
		Result result = null;
		// 打开数据库连接
		openConnection();
		// 编写SQL语句
		String sql = "select r.bill_number,r.goods_name,r.goods_number,r.transaction_amount," +
				"r.value_name,r.supplier_name,r.goods_description,r.bill_date from " +
				"(select rownum as rn,b.* from bill_list_view b) r where r.rn between "+
				BaseTool.getPagingString(page_number, page_data_number);
		try {
			// 实例化执行SQL语句的对象preparedstatement
			stmt = con.createStatement();
			// 执行查询语句并返回结果集
			rs = stmt.executeQuery(sql);
			// 将结果集储存在Result对象当中
			result = ResultSupport.toResult(rs);
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			// 关闭数据库连接及资源
			closeConnection();
			return result;
		}
	}
    
	//获得账单总数的方法
	@SuppressWarnings("finally")
	public int getBillCount() {
		int result = 0;
		// 打开数据库连接
		openConnection();
		// 编写SQL语句
		String sql = "select count(b.bill_number) from bill_list_view b ";
		try {
			// 实例化执行SQL语句的对象preparedstatement
			stmt = con.createStatement();
			// 执行查询语句并返回结果集
			rs = stmt.executeQuery(sql);
			// 取得账单总数
			while (rs.next()) {
				result = rs.getInt(1);
			}
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			// 关闭数据库连接及资源
			closeConnection();
			return result;
		}
	}
    
	//将用户组合查询的账单列表分页
	@SuppressWarnings("finally")
	public Result getFilterPagingBill(String goods_name, int pay_status ,
			int page_number , int page_data_number){
		Result result = null;
		// 打开数据库连接
		openConnection();
		// 编写SQL语句
		String sql = "select r.bill_number,r.goods_name,r.goods_number,r.transaction_amount," +
				"r.value_name,r.supplier_name,r.goods_description,r.bill_date " +
                " from (select rownum as rn,b.* from bill_list_view b where ";
		String sql_last = ") r where r.rn between " + BaseTool.getPagingString(page_number, page_data_number);
		// 将参数初始化
		String value_name = "";
		if (pay_status == 3)
			value_name = "已付款";
		else if (pay_status == 4)
			value_name = "未付款";
		else
			value_name = null;
		if ("".equals(goods_name.trim()))
			goods_name = null;
		// 按照用户查询的条件处理
		try {
			if (value_name != null && goods_name == null) {
				sql = sql + "b.value_name=?" + sql_last;
				pstmt = con.prepareStatement(sql);
				pstmt.setString(1, value_name);
			} else if (value_name == null && goods_name != null) {
				goods_name = "%"+goods_name+"%";
				sql = sql + "b.goods_name like ?" + sql_last;
				pstmt = con.prepareStatement(sql);
				pstmt.setString(1, goods_name);
			} else {
				goods_name = "%"+goods_name+"%";
				sql = sql + "b.value_name=? and b.goods_name like ?" + sql_last;
				pstmt = con.prepareStatement(sql);
				pstmt.setString(1, value_name);
				pstmt.setString(2, goods_name);
			}
			rs = pstmt.executeQuery();
			result = ResultSupport.toResult(rs);
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			closeConnection();
			return result;
		}
	}
	
	//获得用户组合查询的账单总数
	@SuppressWarnings("finally")
	public int getFilterBillCount(String goods_name, int pay_status) {
		int result = 0;
		// 打开数据库连接
		openConnection();
		// 编写SQL语句
		String sql = "select count(b.bill_number) from bill_list_view b where ";
		// 将参数初始化
		String value_name = "";
		if (pay_status == 3)
			value_name = "已付款";
		else if (pay_status == 4)
			value_name = "未付款";
		else
			value_name = null;
		if ("".equals(goods_name.trim()))
			goods_name = null;
		// 按照用户查询的条件处理
		try {
		    if (value_name != null && goods_name == null) {
				sql = sql + "b.value_name=? ";
				pstmt = con.prepareStatement(sql);
				pstmt.setString(1, value_name);
			} else if (value_name == null && goods_name != null) {
				goods_name="%"+goods_name+"%";
				sql = sql + "b.goods_name like ? ";
				pstmt = con.prepareStatement(sql);
				pstmt.setString(1, goods_name);
			} else {
				goods_name="%"+goods_name+"%";
				sql = sql + "b.value_name=? and b.goods_name like ? ";
				pstmt = con.prepareStatement(sql);
				pstmt.setString(1, value_name);
				pstmt.setString(2, goods_name);
			}
			rs = pstmt.executeQuery();
			while(rs.next()){
				result = rs.getInt(1);
			}
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			closeConnection();
			return result;
		}

	}
	
	//根据账单编号获得账单详细信息的方法
	@SuppressWarnings("finally")
	public Result getBillForBillNumber(long bill_number){
		Result result = null;
		// 打开数据库连接
		openConnection();
		// 编写SQL语句
		String sql = "select b.* from bill_list_view b where b.bill_number="+bill_number;
		try {
			// 实例化执行SQL语句的对象preparedstatement
			stmt = con.createStatement();
			// 执行查询语句并返回结果集
			rs = stmt.executeQuery(sql);
			// 将结果集储存在Result对象当中
			result = ResultSupport.toResult(rs);
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			// 关闭数据库连接及资源
			closeConnection();
			return result;
		}
	}
	
	//为账单增加数据的方法
	@SuppressWarnings("finally")
	public int updateBill(List<Object> values){
		//用于返回执行结果
		int result = 0;
		// 打开数据库连接
		openConnection();
		// 编写SQL语句
		String sql = "insert into bill values (?,?,?,?,?,?,?,?)";
		try {
			// 实例化执行SQL语句的对象preparedstatement
			pstmt = con.prepareStatement(sql);
			//设置参数
			for(int i=0,j=1;i<values.size();i++,j++){
				if(values.get(i) instanceof Integer){
					pstmt.setInt(j, (Integer)values.get(i));
				}else if(values.get(i) instanceof Long){
					pst
其他:跟Java语言一样,将Java代码写到  <% Java连接数据库代码 %>  中,导入包在jsp页面上面就可以:<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>,这个里面导包。 有时间可以完成你的问题
我们可以针对你的需求提供一套与需求相适应的源码(学生版、个人版、专业版、企业版)
为获取帮助,你需要提供有效的E-Mail地址。
您还可以直接应用百度Hi联系我们

以下行首纵列数字为扣扣联系方式
6 | ES:\\831320250A799371DB0B1A0997B43854
5 | 交易提醒:预付定金是陷阱
7 | 
1 | 北京易软个人软件
5 | 全职软件开发团队
6 | 十年信誉铸成品质
1 | 速度专业积累效率
5 | 定制管理系统,B2B/B2C电子商务,企业/个人网站更有优惠 

上一个:怎样将JSP代码和DW 连接起来
下一个:jsp里面 选中记录点击修改怎么将选中的记录传递到修改界面上 求一段示例代码..并注明注释 非常感谢

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,