jsp连接mysql数据库的方法
发布网友
发布时间:2022-04-22 22:08
我来回答
共3个回答
热心网友
时间:2022-04-07 15:57
如果用上面的方法连接数据库,很不合理,
这样就要每个JSP网页中都要使用这些语句,来连接你的数据库
你可以用JDDI配置,一次初始化你的数据库连接,这个连接词就永久在
这样连接数据库就不必花费很高的服务器系统资源
你可以配置你的tomcat
中的context.xml
<?xml version='1.0' encoding='utf-8'?>
<!-- The contents of this file will be loaded for each web application -->
<Context>
<Resource name="jdbc/shoping"
auth="Container"
type="javax.sql.DataSource"
username="root"
password="*******"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/shopping?useUnicode=true&characterEncoding=UTF-8"
maxActive="100"
maxIdle="30"
maxWait="5000"/>
</Context>
在servlet中初始化连接...
public void init() throws ServletException
{
try
{
super.init();//Servlet 初始化
db=new DataBaseConnection();//Servlet初始化的时候,一并初始化JNDI
}
catch(NamingException e)
{
throw new ServletException("不能载入数据库!"+e.getMessage());
}
}
再在数据库连接类中:
public class DataBaseConnection {
private DataSource dataSource;
//定义数据源
public DataBaseConnection() throws NamingException{
Context context=new InitialContext();
Context app=(Context)context.lookup("java:comp/env");
dataSource=(DataSource)app.lookup("jdbc/shoping");
}
//构造函数,这样不算连接上数据库;
public Connection getConnection() throws SQLException{
return dataSource.getConnection();
}
//取得数据库的连接
}
这样你的工程才算连接到mysql数据库
一般工程都是这种连接方式
以后在公司,做项目基本上都是这样,有层次感,服务器资料不怎么浪费
维护等等..
如果还是没有明白+java程序设计高级群群:47254258
可以与探讨...
热心网友
时间:2022-04-07 17:15
<%@ page contentType="text/html; charset=gb2312" %>
<%@ page language="java" %>
<%@ page import="com.mysql.jdbc.Driver" %>
<%@ page import="java.sql.*" %>
<%
//驱动程序名
String driverName="com.mysql.jdbc.Driver";
//数据库用户名
String userName="root";
//密码
String userPasswd="sa";
//数据库名
String dbName="test";
//表名
String tableName="a*";
//联结字符串
String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd;
Class.forName("com.mysql.jdbc.Driver");
Connection connection=DriverManager.getConnection(url);
Statement statement = connection.createStatement();
String sql="SELECT * FROM "+tableName;
ResultSet rs = statement.executeQuery(sql);
//获得数据结果集合
ResultSetMetaData rmeta = rs.getMetaData();
//确定数据集的列数,亦字段数
int numColumns=rmeta.getColumnCount();
// 输出每一个数据值
out.print("id");
out.print("|");
out.print("num");
out.print("<br>");
while(rs.next()) {
out.print(rs.getString(1)+" ");
out.print("|");
out.print(rs.getString(2));
out.print("<br>");
}
out.print("<br>");
out.print("数据库操作成功,恭喜你");
rs.close();
statement.close();
connection.close();
%>
这个是取出来数据 插入的话 改动下sql语句就可以了
热心网友
时间:2022-04-07 18:49
导入固定的My-Sql使用的架包,
其他就像连接sql2005 的差不多,不过驱动和连接字符串,不同。
上网看看就知道的。