小弟我正在学JSP,希望高手指点~!
解决方案 »
- 帮帮忙!网页播放器的路径问题!
- Struts2+JPA+Spring 出现PermGen space
- jbpm3.2.2部署tomcat6
- 弱弱的问一个struts的Action问题。
- oracle子串查寻
- 在tomcat整合到iis中遇到的问题
- JSP的一个问题前高手回答
- 推荐一下JSP的最佳配置好吗?
- jsp有server.htmlencode()函数吗?
- Disconnected from the target VM, address: '127.0.0.1:54406', transport: 'socket'
- 想学习JAVA,想找培训机构,烦请各位前辈指点
- 学好 JAVA WEB 需要哪些?
已经有很多开源实现.
apache的 dbcp
或者c3p0
第一步:在你安装TomCat的目录下找到context.xml配置文件。(例如:D:\Tomcat 6.0\conf\context.xml)然后打开context.xml,在标签<context></<context>之间加入以下内容:(为了大家容易理解,我加了较详细的注释)
<Resource
name="jdbc/course" //数据源名称(自定义)到时候要用到的,所以最好起
//个有含义的名字,例如我这个数据源名字,jdbc表示与//数据库连接有关的,而course是我这个项目的名字。
auth="Container" //这个默认就好了
type="javax.sql.DataSource" //这个也默认就好了
driverClassName="com.mysql.jdbc.Driver"//这里用到的是mysql数据库的驱动包。
url="jdbc:mysql://localhost/course" //这里是连接到mysql数据库的url,其中url="jdbc:mysql://localhost/"是固定的,而course是我这个 //项目的数据库名称,所以这里改为你们的数据库名称就好了。
username="root"//登陆数据库的用户名
password="birchhua" //登陆数据库的密码
maxIdle="5"//这个也默认就好了
maxWait="5000"//这个也默认就好了
maxActive="10"/>//这个也默认就好了 第二步:在你的项目WEB-INF目录下找到web.xml配置文件,然后打开,在标签<web-app></web-app>之间加入以下内容:
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/course</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
其中:DB Connection 是自定义的,而jdbc/course是对应上面<Resource></Resource>标签中的name属性的值,还有 javax.sql.DataSource就对应type属性的值,而最后Container对应的是auth属性的值。 第三步:上网下载一个叫mysql-connector-java-3.1.10-bin.jar的jar包,然后将该jar包放到TomCat安装目录下的lib文件夹里。(例如:D:\Tomcat 6.0\lib\mysql-connector-java-3.1.10-bin.jar)完成这三步就配置好了TomCat数据源了。 下面根据刚才配置好的数据源做一个简单获取数据库连接的测试,代码如下:
Java代码
1. package com.lm.dbmanager;
2.
3. import java.sql.Connection;
4. import java.sql.PreparedStatement;
5. import java.sql.ResultSet;
6. import java.sql.SQLException;
7.
8. import javax.naming.InitialContext;
9. import javax.naming.NamingException;
10. import javax.sql.DataSource;
11.
12. public class GetConnectionTest {
13. public static void main(String[] args) {
14.
15. InitialContext ctx;
16. PreparedStatement pstmt = null;
17. Connection conn = null;
18. String sql = "select * from course";
19. try {
20. ctx = new InitialContext();
21. /*
22. * 在下面的字符串"java:comp/env/jdbc/course"中,*"java:comp/env/"是不变的,
23. * 而"jdbc/course"大家应该还记得自己之前起的数据源名称吧!
24. */
25. DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/course");
26. conn = ds.getConnection();
27. pstmt = conn.prepareStatement(sql);
28. ResultSet rs = pstmt.executeQuery();
29. System.out.println("课程编号 " + " 课程名");
30. System.out.println("--------------------");
31. while(rs.next()) {
32. System.out.println("| "+rs.getInt(1) +" | " +rs.getString(2) + " |");
33. System.out.println("--------------------");
34. }
35. } catch (NamingException e) {
36. e.printStackTrace();
37. } catch (SQLException e) {
38. e.printStackTrace();
39. }
40.
41. }
42. } 这个东西我试过的 可以使用。要注意的就是有几个地方你要修改成你自己的数据库名字