Servlet中操作Oracle数据库

在servlet里面操作数据库其实和在普通的操作没有说明太大的区别仅仅是在服务器而已,但还是有一些需要注意的地方,要走了,先把示例代码贴上,其中有原生态操作以及自建jar包操作,其实都是一样的:

package com.test.oracle.test1;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.ResultSet;
import java.sql.SQLException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.xuning.sql.tools.OracleTools;
/*
 * 下面是servlet操作数据库的方式
 * 有原生态的建立操作以及犹如自己自建的额jar包
 */
public class OperOracle extends HttpServlet {

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		response.setContentType("text/html;charset=utf-8");
		PrintWriter out = response.getWriter();
		request.setCharacterEncoding("utf-8");
		
		String username=request.getParameter("username");
		String password=request.getParameter("password");
//		out.print("用户名是:"+username);
//		out.print("密码是:"+password);
		/*System.out.println("用户名是:"+username);
		System.out.println("密码是:"+password);
		out.print("获取到的用户名:"+username);
		out.print("获取到的用户名:"+password);*/
		/*
		Connection ct=null;
		PreparedStatement ps=null;
		ResultSet res=null;
		int check_count=0;
		
		try {
			//加载驱动
			Class.forName("oracle.jdbc.driver.OracleDriver");
			ct=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:ORCL","SCOTT","toor");
			ps=ct.prepareStatement("select count(id) cc from student where name='"+username+"' and password='"+password+"'");
			res=ps.executeQuery();
			while(res.next()){
//				out.print("获取到的用户名是:"+res.getString("ename")+"<br/>");
//				out.print("获取到的结果"+res.getInt("cc"));
				check_count=res.getInt("cc");
			}
			
		} catch (Exception e) {
			// TODO: handle exception
		}finally{
			//关闭数据库资源
			try {
				//应当按谁许一次关闭数据库
				ct.close();
				ps.close();
				res.close();
			} catch (SQLException e) {
				System.out.println("关闭资源失败");
			}
		}
		*/
		int check_count=0;
		OracleTools ot=new OracleTools("127.0.0.1", "SCOTT", "toor", "ORCL");
		ResultSet res=ot.execute_dql("select count(id) cc from student where name='"+username+"' and password='"+password+"'");
		try {
			while(res.next()){
				
				check_count=res.getInt("cc");
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		if(check_count==1){
			//登录成功
			out.print("<h3>登录成功</h3>");
		}else{
			//登录失败
			out.print("<h3>登录失败</h3>");
		}
	}

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		response.setContentType("text/html;charset=utf-8");
		PrintWriter out = response.getWriter();
		doGet(request, response);
	}

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值