JDBC连接数据库

1、JDBC连接数据库
<%
//post出现乱码
request.setCharacterEncoding(“UTF-8”);
//引入用户名和密码
String name=request.getParameter(“username”);
String pwd=request.getParameter(“userpwd”);

		//访问数据库
		//1、加载驱动类mysql,com.mysql.jdbc.Driver是驱动类
		Class.forName("com.mysql.jdbc.Driver");
		
		//2、通过驱动类管理类来获得连接对象DriverManager
		//connection连接对象
		//下面的root是mysql用户名和密码。jdbccom.mysql.jdbc.Driver是连接端口
		Connection connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8", "root", "root");
		
		//3、连接之后表名要做的事情
		String sql="SELECT COUNT(*) FROM damo WHERE username='"+name+"' AND userpwd='"+pwd+"'";
		
		//4、执行sql语句(前提:需要把执行sql语句的对象创建出来statement )
		Statement st=connection.createStatement();
		
		//5、调用statement这个对象的方法,实现真正的执行(只要sql语句是查询语句select,都会有结果)
		ResultSet rs=st.executeQuery(sql);
		
		//6、从结果集中取数据
		int result=0;
		if(rs.next()){
			result=rs.getInt(1);
		}
		
		//7、释放资源,关闭连接
		rs.close();
		st.close();
		connection.close();
		
		if(result==1){
			session.setAttribute("name",name);
			response.sendRedirect("index.jsp");	
		}else{
			out.print("<script>alert('用户名或者密码错误!!!');location.href='login.jsp'</script>");
		}
	
	%>

2、JDBC定义
Java数据库连接技术(Java DataBase Connectivity),能实现Java程序对各种数据库的访问;
由一组使用Java语言编写的类和接口(JDBC API)组成,它们位于java.sql以及javax.sql中。
3、Statement与PreparedStatement区别
Statement由方法createStatement()创建,该对象用于发送简单的SQL语句
PreparedStatement由方法prepareStatement()创建,该对象用于发送带有一个或者多个输入参数的SQL语句
SQL语句使用“?”作为数据占位符
使用setXxx()方法设置数据
PreparedStatement—预编译:
效率、性能、开销
安全性
代码可读性
4、默写
1、什么是jdbc技术:数据库连接技术
2、JDBC常用的接口和类有哪些?作用是什么?
DriverManager 驱动管理者
Connection 连接对象
Statement 执行Sql语句对象
ResultSet 结果集对象
5、JDBC优点
不必为不同的数据库专门编写不同的程序,而只需要加载不同的数据库驱动即可
6、JDBC的编程步骤
Class.forName()加载驱动
DriverManager.getConnection(URL,用户名,密码)获得数据库连接
获得Statement/PreparedStatement对象,执行SQL语句
处理执行结果,释放资源

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值