java web 连接mysql数据库

一:概述(overview

介绍一下JSP怎么通过tomcat,连接后台的mysql数据库。

 Introduce how to connect backend mysql data base.


二:拓扑图 (topological graph


实验环境(experimental envieonment):Centos5.8(kernel 2.6.18)+tomcat5.5+mysql5.0


三:JSP连接MySQL  (JSP connect Mysql)

  1. web服务器 搭建--->详见 http://haicang.blog.51cto.com/2590303/963670    
  2. mysql数据库服务器的搭建-->详见http://haicang.blog.51cto.com/2590303/930541



tomcat配置连接池  (tomcat deploy pools)

 

 
 
  1. tomcat连接池配置 
  2. vi/vim server.xml
  3.  
  4. Oracle数据库的连接池配置
  5. <host> </host>中配置如下信息 
  6. <Resource
  7. auth="Container"
  8. description="sqlserver Datasource"
  9. name="jdbc/ora"
  10. type="javax.sql.DataSource"
  11. maxActive="50"
  12. maxIdle="10"
  13. username="" ---->连接数据库的用户名
  14. maxWait="10000"
  15. driverClassName="oracle.jdbc.driver.OracleDriver"
  16. password=""----->连接数据库的用户密码
  17. url="jdbc:oracle:thin:@host:port/databases"
  18. removeAbandoned="true"
  19. removeAbandonedTimeout="60"
  20. logAbandoned="true"/>
  21.  
  22. MySQL数据库的连接池配置
  23.  
  24. <Resource
  25. name="jdbc/TestDB"
  26. auth="Container" type="javax.sql.DataSource"
  27. maxActive="100"
  28. maxIdle="30"
  29. maxWait="10000"
  30. username="javauser"
  31. password="javadude"
  32. driverClassName="com.mysql.jdbc.Driver"
  33. url="jdbc:mysql://localhost:3306/javatest"/>
  34.  
  35. SQL的连接池配置
  36. <Resource
  37. auth="Container"
  38. description="sqlserver Datasource"
  39. name="jdbc/sqlserver110"
  40. type="javax.sql.DataSource"
  41. maxActive="100"
  42. maxIdle="10"
  43. username=""
  44. maxWait="10000"
  45. driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
  46. password=""
  47. url="jdbc:microsoft:sqlserver:IP(端口);数据库名字;"reconnect=true"
  48. removeAbandoned="true"
  49. removeAbandonedTimeout="60"
  50. logAbandoned="true" />

tomcat5.5参数解释:

 
 
  1. tomcat5.5参数说明: 
  2. 1  maxActive: Maximum number of dB connections in pool. Make sure you 
  3.            configure your mysqld max_connections large enough to handle 
  4.            all of your db connections. Set to -1 for no limit 
  5.          连接池中最大的连接数 设为-1 表示不限制  注意数据的连接数要大于此连接数 
  6. 2  maxIdle: Maximum number of idle dB connections to retain in pool. 
  7.          Set to -1 for no limit.  See also the DBCP documentation on this 
  8.          and the minEvictableIdleTimeMillis configuration parameter      
  9.          保持在连接中最大的闲置连接数(在连接池最大的空闲连接数) 
  10. 3  maxWait: Maximum time to wait for a dB connection to become available 
  11.          in ms, in this example 10 seconds. An Exception is thrown if 
  12.          this timeout is exceeded.  Set to -1 to wait indefinitely 
  13.          等待一个连接成为可用连接的最大等待时间 单位毫秒ms 
  14. 4  driverClassName: Class name for the old mm.mysql JDBC driver is 
  15.          org.gjt.mm.mysql.Driver - we recommend using Connector/J though. 
  16.          Class name for the official MySQL Connector/J driver is com.mysql.jdbc.Driver.       
  17. 5    url: The JDBC connection url for connecting to your MySQL dB 
  18. 6    removeAbandoned="true" (abandoned dB connections are removed and recycled) 
  19.         解释:被遗弃的数据连接 回收到连接池中    默认为false 
  20. 7    removeAbandonedTimeout="60"(a dB connection has been idle before it is considered abandoned)单位秒 
  21.         解释:在一个连接空闲多少秒会被遗弃 
  22. 8   logAbandoned="true"  
  23.         记录被遗弃的数据连接 默认为false
在web应用程序的目录下创建WEB-INF/web.xml,并添加如下内容:

 
 
  1. web.xml configuration 
  2. <resource-ref> 
  3.  <description>Oracle Datasource example</description> 
  4.  <res-ref-name>jdbc/myoracle</res-ref-name> 
  5.  <res-type>javax.sql.DataSource</res-type> 
  6.  <res-auth>Container</res-auth> 
  7. </resource-ref> 

JSP连接数据库的用户:

    • MySQL configuration  
    • mysql> GRANT ALL PRIVILEGES ON *.* TO javauser@localhost  
    •     ->   IDENTIFIED BY 'javadude' WITH GRANT OPTION; 
    • mysql> create database javatest; 
    • mysql> use javatest; 
    • mysql> create table testdata ( 
    •     ->   id int not null auto_increment primary key, 
    •     ->   foo varchar(25),  
    •     ->   bar int);       
    • mysql> insert into testdata values(null, 'hello', 12345); 
    • Query OK, 1 row affected (0.00 sec) 
    • mysql> select * from testdata; +----+-------+-------+ | ID | FOO | BAR | +----+-------+----


JSP测试页面:

  • <%@ page import="java.sql.*" %> 
  • <%@ 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="javauser"
  • String userPasswd="java"
  • String dbName="javatest"
  • String tableName="testdata"
  • String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd; 
  • Class.forName("com.mysql.jdbc.Driver").newInstance(); 
  • Connection connection=DriverManager.getConnection(url); 
  • Statement statement = connection.createStatement(); 
  • String sql="SELECT * FROM "+tableName; 
  • ResultSet rs = statement.executeQuery(sql); 
  • while (rs.next()) 
  •  String foo = rs.getString("foo"); 
  •  String bar = rs.getString("bar"); 
  • out.print(foo+" "); 
  • out.print(bar+" "); 
  • rs.close(); 
  • statement.close(); 
  • connection.close(); 
  • %>

/*第一次编排带源码的博客,排版不是太好,多多包涵*/

### 回答1: Java Web连接MySQL数据库需要以下步骤: 1. 下载并安装MySQL数据库。 2. 在MySQL数据库中创建一个数据库和表。 3. 下载并安装JDBC驱动程序。 4. 在Java Web项目中添加JDBC驱动程序。 5. 编写Java代码连接MySQL数据库。 6. 编写Java代码执行SQL语句。 7. 关闭数据库连接。 以上是连接MySQL数据库的基本步骤,具体实现可以参考相关的教程和文档。 ### 回答2: Java Web程序是现在很常用的一种网络应用程序,其操作数据库来进行数据管理是不可避免的。MySQL是一种开源的关系型数据库,常被使用于Web应用程序中。在Java Web程序中连接MySQL,需要借助Java提供的JDBC技术。 JDBC(Java Database Connectivity)是一种Java标准接口,规定了Java程序如何访问各种数据库。在Java Web程序中连接MySQL需要以下几个步骤: 1. 下载JDBC驱动:在连接MySQL之前,需要下载并安装JDBC驱动程序。MySQL提供了官方的JDBC驱动程序,下载后需要将其添加到Java Web程序的ClassPath中。 2. 加载JDBC驱动:在Java程序中使用JDBC需要加载JDBC驱动。通过Class.forName()方法来加载指定的JDBC驱动程序,例如加载MySQL的JDBC驱动需要使用以下代码: ``` Class.forName("com.mysql.jdbc.Driver"); ``` 3. 建立数据库连接:使用DriverManager.getConnection()方法来建立数据库连接连接MySQL需要指定MySQL的URL地址、用户名和密码。例如: ``` String url = "jdbc:mysql://localhost:3306/test?useSSL=false"; String user = "root"; String password = "123456"; Connection conn = DriverManager.getConnection(url, user, password); ``` 其中,"jdbc:mysql"表示使用MySQL数据库,"localhost:3306"表示MySQL服务器地址和端口号,"test"表示连接数据库名称。 4. 执行SQL语句:执行SQL语句需要使用Statement或PreparedStatement对象。Statement对象适用于静态SQL语句,PreparedStatement对象适用于动态SQL语句。例如: ``` Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT * FROM user"); ``` 5. 关闭数据库连接:在Java程序中使用完数据库连接后,需要关闭数据库连接。关闭数据库连接可以使用Connection的close()方法。例如: ``` conn.close(); ``` 以上就是通过Java Web程序连接MySQL的主要步骤。在实际开发中,为了确保程序的稳定性和安全性,还需要进行异常处理、连接池等相关操作。 ### 回答3: Java Web连接MySQL数据库是一个常见的编程任务,具有很大的实用价值。Java是一种跨平台的编程语言,而MySQL是一种流行的关系数据库管理系统(RDBMS),它们可以很好地配合使用。以下是一些关于Java Web连接MySQL数据库的重要知识点: 1. JDBC驱动器:Java开发人员需要为连接MySQL数据库编写Java代码,这其中最关键的是使用Java Database Connectivity(JDBC)驱动器,它是用于连接Java应用程序和任何关系数据库的标准API。 2. 配置MySQL连接信息:Java开发人员需要为访问MySQL数据库配置连接信息,包括MySQL服务器的IP地址、端口号、用户名、密码和数据库名称等信息。 3. 使用Java代码连接MySQLJava Web应用程序需要使用Java代码来连接MySQL数据库,并执行查询和更新操作等。Java开发人员可以使用JDBC API中的Connection接口来建立和管理与MySQL数据库连接,通过Statement和PreparedStatement接口或CallableStatement接口来执行SQL语句,以获取数据和更新数据。 4. JDBC连接池的使用:Java开发人员可以使用JDBC连接池来改进Java Web应用程序的性能和可伸缩性。连接池允许在需要时从预配置的连接中获取连接,这样可以避免每次请求时重新创建连接,从而提高性能并减少系统负载。 总的来说,Java Web连接MySQL数据库是一个重要、实用和有挑战性的编程任务。通过掌握JDBC驱动器、MySQL连接信息的配置、Java代码连接MySQL、以及JDBC连接池的使用等知识点,Java开发人员可以构建出高效、可靠和可扩展的Web应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值