jsp连接mysql数据库的难点

jsp连接mysql数据库的难点,第1张

1、jsp是java服务端动态网页技术,主要应用于网页构建,理论上讲不应该在页面中直接连数据库。合理的做法是先构建一个java后端,然后在JAVA后端中通过jdbc连接sqlserver。

2、如果一定要在jsp页面中连数据库也是可以的。jsp中有专门的sql标签可以连接数据库进行 *** 作,这是jstl的内容,需要导入相应的数据库驱动包。

3、jsp的内容相对来说技术难度都不算特别高,学习起来还是比较容易的。

4、希望对你有帮助。

Class.forName("com.mysql.jdbc.Driver")

Connection conn=DriverManager.getConnection("jdbc:mysql://"+host+"/"+dbname,username,password)

Statement Stmt=conn.createStatement()

ResultSet rs=Stmt.executeQuery(sql)

这是基本的数据库 *** 作方法

导入jdbc驱动程序包其实有很多种方法,但是不同的导包方式有不同的含义,

1、给Tomcat导包(表示服务器可能要用到数据库,例如数据源),如果是MyEclipse集成Tomcat,显然是要用“右键项目 ->Properties ->Java Build Path ->右侧选项卡选择Libraries ->Add JARs...”。如果是非集成Tomcat,你必须把驱动程序包复制粘贴在Tomcat根目录“common\lib”文件夹下。

2、给Web项目导包(表示Web项目需要使用到数据库),把驱动程序包复制粘贴到“Web项目\WEB-INF\lib”文件夹下。同时也要在Tomcat的webapps\Web项目\WEB-INF\lib文件夹中粘贴驱动程序。

3、给单纯Java项目导包(表示Web项目需要使用到数据库),对着project单击右键,选择Bulid Path选择Add External Achieves再选择mysqljdbc.jar 或者将其添加到classpath中去。

我写的一个用JSP连接MySQL数据库的代码。

要正确的使用这段代码,你需要首先在MySQL数据库里创建一username表,表里面创建两个字符型的字段,字段名分别为:uid,pwd,然后插入几条测试数据。

以下用两种方式来实现JSP连接MySql数据库。

第一种方式,用JSP实现。

<%@ page contentType="text/htmlcharset=gb2312" language="java"

import="java.sql.*"%>

<%

//**************************************

********* JDBC_ODBC连接MySql数据库,不需要设置数据源

*********************************/

//********** 数据库连接代码 开始 ******/

//以下几项请自行修改

String server="localhost" //MYSQL 服务器的地址

String dbname="test" //MYSQL 数据库的名字

String user="root" //MYSQL 数据库的登录用户名

String pass="chfanwsp" //MYSQL 数据库的登录密码

String port="3306" //SQL Server 服务器的端口号,默认为1433

//数据库连接字符串

String url ="jdbc:mysql://"+server+":"+port+"/"+dbname+"?user="+user+

"&password="+pass+"&useUnicode=true&characterEncoding=GB2312"

//加载驱动程序

Class.forName("org.gjt.mm.mysql.Driver").newInstance()

//建立连接

Connection conn= DriverManager.getConnection(url)

//创建语句对象

Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,

ResultSet.CONCUR_UPDATABLE)

// **** 数据库连接代码 结束 *******

String sql="select * from username"

ResultSet rs=stmt.executeQuery(sql)

//rs.first()

while(rs.next()){

out.print("用户名:")

out.print(rs.getString("uid")+" 密码:")

out.println(rs.getString("pwd")+"

")

}

rs.close()

stmt.close()

conn.close()

%>

第二种方式,用JavaBean来实现。请看代码:

DBConnMySql.java

编译以后的Class文件应该放在WEB-INF\classes\conn目录下。

package conn //导入包

import java.sql.* //导入数据库 *** 作的类

public class DBConnMySql//构造方法,初始化

{

private Connection conn //连接对象

private Statement stmt //语句对象

private ResultSet rs //结果集对象

private String MySqldriver//MYSQL Server驱动程序字符串

private String MySqlURL//MYSQL Server连接字符串

//********************************

*用 org.gjt.mm.mysql.Driver 驱动

* 该方法取得连接所需各种参数,组成连接字符串,然后再建立连接

* serverdbname,user,pass,port 分别表示MYSQL 服务器的地址,

* 数据库,用户名,密码,端口

**********************************/

public Connection getConnToMySql(String server,String dbname,

String user,String pass,String port){

//MYSQl驱动程序

MySqldriver = "org.gjt.mm.mysql.Driver"

MySqlURL = "jdbc:mysql://" //连接字符串一部分

try{

//完整的连接字符串

MySqlURL =MySqlURL+server+":"+port+"/"+dbname+

"?user="+user+"&password="+pass+

"&useUnicode=true&characterEncoding=GB2312"

Class.forName(MySqldriver)

conn = DriverManager.getConnection(MySqlURL)

}catch(Exception e){

System.out.println(" *** 作数据库出错,请仔细检查")

//System.err.println(e.getMessage())

}

return conn

}

//关闭数据库连接

public void close()

{

try{

//rs.close()

//stmt.close()

conn.close()

}catch(SQLException sqlexception){

sqlexception.printStackTrace()

}

}

}

这个文件只是实现了数据库的连接,下面我们再写一个测试文件。

就是用sql语句从数据库里查询出记录,以验证我们数据库的连接是否成功。

connmysql.jsp文件源代码如下:

<%@ page contentType="text/htmlcharset=gb2312" language="java"

import="java.sql.*" %>

<%

//以下几项请自行修改

String server="localhost" //MYSQL 服务器的地址

String dbname="test" //MYSQL 数据库的名字

String user="root" //MYSQL 数据库的登录用户名

String pass="chfanwsp" //MYSQL 数据库的登录密码

String port="3306" //SQL Server 服务器的端口号,默认为1433

Connection conn=DBConn.getConnToMySql(server,dbname,user,pass,port)

Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_READ_ONLY)

String sql="select * from username"

String sql1="insert into username (uid,pwd) values('梦想年华','梦想年华')"

stmt.executeUpdate(sql1)

ResultSet rs=stmt.executeQuery(sql)

while(rs.next()){

out.print("用户名:")

out.print(rs.getString("uid")+" 密码:")

out.println(rs.getString("pwd")+"

")

}

//rs.close()

//stmt.close()

//conn.close()

DBConn.close()

%>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6210909.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-18
下一篇 2023-03-18

发表评论

登录后才能评论

评论列表(0条)

保存