`
除却巫山不是云
  • 浏览: 14635 次
  • 性别: Icon_minigender_1
  • 来自: 嘉兴
社区版块
存档分类
最新评论

JSP连接数据库的两种方式

 
阅读更多

application连接数据库:

              

                String driver=application.getInitParameter("driver");
		String url=application.getInitParameter("url");
		String userName=application.getInitParameter("user");
		String userPass=application.getInitParameter("pass");
		Class.forName(driver);
		Connection   conn=DriverManager.getConnection(url,userName,userPass);
		Statement stmt =conn.createStatement();
		stmt.executeUpdate("sql语句");

 Servlet连接数据库:

 

 

package test;

import java.sql.Connection;
import java.sql.ResultSet;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import com.sun.crypto.provider.RC2Parameters;
@WebServlet(name="login",urlPatterns=("/login"))
public class LoginServlet extends HttpServlet {
	public void service(HttpServletRequest request ,HttpServletResponse response) 
	throws ServletException,java.io.IOException{
		String errorMessage="";
		//因为Servlet本身没有设置内存对象,并不输出响应到客户端
		//因此 此处需要讲处理请求发送View
		RequestDispatcher rtd;
		//接受页面提交的参数
		String name =request.getParameter("userName");
		String pass=request.getParameter("userPwd");
		try{
			//Controller本身不会连接数据库,因此需要用model蹭的javaBean去连接
			UserDao udb=new UserDao(
				"com.mysql.jdbc.Driver",
				"jdbc:mysql://localhost:3306/test",
				"root",
				"123456"
			);
			ResultSet rs=udb.fetch("select * from tb_user where user_name='"+name+"'and user_pass='"+pass+"'");
			if(rs.next()){
				HttpSession session=request.getSession();
				session.setAttribute("name", name);
				rtd=request.getRequestDispatcher("/newPage.jsp");
				rtd.forward(request, response);
			}else{
				errorMessage="您输入的用户名或密码错误!";
			} 
			
			
		}catch (Exception e) {
			e.printStackTrace();
		}
	}
}

 UserDao类内容:

 

 

package test;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

import com.mysql.jdbc.Driver;

public class UserDao {
	private Connection conn;
	private String driver;
	private String url;
	private String userName;
	private String userPass;
	
	public  UserDao(){
		
	}
	
	public void setConn(Connection conn) {
		this.conn = conn;
	}

	public String getDriver() {
		return driver;
	}

	public void setDriver(String driver) {
		this.driver = driver;
	}

	public String getUrl() {
		return url;
	}

	public void setUrl(String url) {
		this.url = url;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getUserPass() {
		return userPass;
	}

	public void setUserPass(String userPass) {
		this.userPass = userPass;
	}
	
	public  UserDao(String driver,String url, String user,String pass)
	throws Exception{
		this.driver=driver;
		this.url=url;
		this.userName=user;
		this.userPass=pass;
		if(this.conn==null){
			Class.forName(driver);
			conn=DriverManager.getConnection(url,userName,userPass);
		}
	}
	//操作数据包括增删改
	public boolean query(String sql) throws Exception{
		Statement stmt=conn.createStatement();
		int rs=stmt.executeUpdate(sql); 
		if(rs==-1){
			return false;
		}
		return true;
	}
	//操作数据,查询
	public ResultSet fetch(String sql) throws Exception{
		Statement statement=conn.createStatement();
		ResultSet rs=statement.executeQuery(sql);
		return rs;
	}
	//关闭数据库连接
	public void closeConn()throws Exception{
		if(conn!=null&&!conn.isClosed()){
			conn.close(); 
		}
	}
}

 

 

 

分享到:
评论

相关推荐

    jsp连接数据库连接池代码示例

    数据库连接池是一种管理数据库连接的技术,它预先初始化一定数量的数据库连接并保存在内存中,当应用程序需要连接数据库时,可以从连接池中获取一个已存在的连接,用完后再归还,而不是每次都新建和关闭连接。...

    JSP连接数据库

    在JSP中连接数据库,通常有两种方式:使用`Class.forName()`加载数据库驱动,然后创建`Connection`对象;或者通过数据源(DataSource)来获取连接。数据源在应用服务器中预先配置,提供更高效的连接管理和事务处理,...

    jquery+jsp连接数据库

    总之,"jQuery+jsp连接数据库"这个主题涉及到前后端的交互,涵盖了jQuery的选择器、事件处理、AJAX请求,以及JSP的页面生命周期、JDBC的使用和数据库操作。对于初学者来说,这是一个很好的起点,能够帮助他们建立起...

    jsp连接数据库

    ### jsp连接数据库知识点详解 #### 一、概述 在Web开发中,Java Server Pages (JSP) 是一种广泛使用的动态网页技术。JSP 页面能够嵌入 Java 代码,实现与后端数据库交互的功能。本篇文章将围绕如何通过 JSP 技术...

    jsp连接各个数据库的代码

    连接 IBM DB2 数据库时,有两种方式:一种是带有 DB2 客户端的方式,另一种则是不带有 DB2 客户端的方式。以下是带 DB2 客户端的示例: ```java String driver = "com.ibm.db2.jdbc.app.DB2Driver"; // 带有 DB2 ...

    jsp与各类数据库连接

    本文主要讨论如何使用JSP连接Oracle和SQL Server数据库,并提供示例代码。 首先,JDBC(Java Database Connectivity)是Java语言访问数据库的标准API,它允许Java应用程序通过编写Java代码与数据库进行通信。在JSP...

    jsp连接数据库连接

    本文将详细介绍如何使用JSP连接Oracle和SQL Server两种常见的数据库。 ### 一、JDBC基础 JDBC(Java Database Connectivity)是Java平台中的标准接口,它允许Java应用程序连接到各种类型的数据库。在JSP中,我们...

    jsp连接数据库大全

    ### JSP连接数据库大全知识点详解 #### 一、概述 JSP(Java Server Pages)是一种基于Java技术的服务器端脚本语言,它被广泛应用于Web应用程序的开发中。通过JSP,开发者可以在网页中嵌入Java代码来实现动态内容的...

    JSP连接数据库.pdf

    本资料主要介绍了两种方式连接数据库,分别是通过JDBC-ODBC桥接器连接Access数据库以及通过MySQL数据库驱动程序连接MySQL数据库。 一、JDBC-ODBC桥接器连接Access数据库 1. 方法1: 使用JDBC-ODBC桥接器连接...

    JSP应用技巧及心得---数据库的链接

    主要有两种类型: 1. **page Directive**:允许导入类、定义servlet的超类、设置页面编码等。例如: ```jsp *,com.example.MyClass" session="false" %> ``` 2. **include Directive**:用于在编译时将其他文件...

    JSP连接数据库大全

    ### JSP连接数据库大全知识点详解 #### 一、前言 在Java Server Pages (JSP) 开发过程中,连接数据库是非常重要的一步。本文档详细介绍了如何使用JSP连接三种常见类型的数据库:Oracle、SQL Server以及DB2,并提供...

    JSP和数据库连接写一个网页登陆注册代码

    JDBC(Java Database Connectivity)是一种Java API,用于连接和操作数据库。 3.JavaScript的应用:在这个代码中,我们使用了JavaScript来验证用户名和密码是否为空,并focus到相应的输入框。 4.JSP脚本的使用:...

    JSP连接ACCESS数据库

    **JSP连接ACCESS数据库**是Web开发中一种基础的数据交互方式,主要应用于小型项目或学习实践。本教程将详细介绍如何使用JSP与ACCESS数据库进行连接并读取数据。 首先,你需要**创建一个ACCESS数据库**。这里以创建...

    JSP连接数据库简单留言板实验报告

    总的来说,这个JSP连接数据库的留言板实验涵盖了Web开发中的基本概念和技术,对于初学者来说是一次宝贵的实践机会。通过这个实验,不仅可以提升编程技能,还能增强对数据库和Web服务交互的理解。

    jsp数据库连接大全和数据库操作封装到Javabean

    总结一下,本教程涵盖了JSP中数据库连接的建立,以及如何利用JavaBean封装数据库操作,这两个关键知识点。理解并熟练运用这些概念对于任何JSP开发者来说都是至关重要的,因为它们构成了Web应用程序数据处理的基础。...

Global site tag (gtag.js) - Google Analytics