java代码获得数据源,java如何获取数据源

在jsp中如何获得数据源

在jsp中获得数据源的方法是通过jdbc或者datasource连接到数据库然后获取得到。

网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、微信平台小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了安丘免费建站欢迎大家使用!

1、jsp页面代码:

%@page contentType="text/html" pageEncoding="UTF-8"%

%@taglib prefix="c" uri=""%

jsp:useBean id="db" class="cc.openhome.DatabaseBean"/

!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

""

html

head

meta http-equiv="Content-Type"

content="text/html; charset=UTF-8"

title测试数据库连接/title

/head

body

c:choose

c:when test="${db.connectedOK}"连接成功!/c:when

c:otherwise连接失败!/c:otherwise

/c:choose

/body

/html

2、在tomcat中配置

JDBCDemo context.xml

?xml version="1.0" encoding="UTF-8"?

Context antiJARLocking="true" path="/JDBCDemo"

Resource name="jdbc/demo"

auth="Container" type="javax.sql.DataSource"

maxActive="100" maxIdle="30" maxWait="10000" username="root"

password="123456" driverClassName="com.mysql.jdbc.Driver"

url="jdbc:mysql://localhost:3306/demo?

useUnicode=truecharacterEncoding=UTF8"/

/Context

3、在java后台实现数据源的连接

import java.io.Serializable;import java.sql.*;

import javax.naming.*;

import javax.sql.DataSource;

public class DatabaseBean implements Serializable {

private DataSource dataSource;

public DatabaseBean() {

try {

Context initContext = new InitialContext();

Context envContext = (Context)

initContext.lookup("java:/comp/env");

dataSource = (DataSource) envContext.lookup("jdbc/demo");

} catch (NamingException ex) {

throw new RuntimeException(ex);

}

}

public boolean isConnectedOK() {

boolean ok = false;

Connection conn = null;

SQLException ex = null;

try {

conn = dataSource.getConnection();

if (!conn.isClosed()) {

ok = true;

}

} catch (SQLException e) {

ex = e;

} finally {

if (conn != null) {

try {

conn.close();

} catch (SQLException e) {

if(ex == null) {

ex = e;

}

}

}

if(ex != null) {

throw new RuntimeException(ex);

}

}

return ok;

}

}

java 用程序创建数据源怎么做

jdbc数据库连接:1.加载驱动Class.forName(“xxxDriver”)2建立连接:Connection conn= DriverManager.getConnection(url,user,password);(url是连接地址ip端口号和数据库实例名,user用户名,password密码)3获取statement对象:Statement stmt=conn.createStatement();4通过Statement执行Sql语句:stmt.executeQquery(String sql)会返回查询结果集,stmt.executeUpdate(String sql)返回int型,表示影响记录的条数;5处理结果:ResultSet rs=str.executeQuery(String sql);while(rs.next()){

System.out.println(rs.getInt(id));

}

5:关闭数据源:rs.close();

下面是连接各种数据库的方法:

1、Oracle8/8i/9i数据库(thin模式)

Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();

String url="jdbc:oracle:thin:@localhost:1521:orcl";

//orcl为数据库的SID

String user="test";

String password="test";

Connection conn= DriverManager.getConnection(url,user,password);

2、DB2数据库

Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance();

String url="jdbc:db2://localhost:5000/sample";

//sample为你的数据库名

String user="admin";

String password="";

Connection conn= DriverManager.getConnection(url,user,password);

3、Sql Server7.0/2000数据库

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();

String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb";

//mydb为数据库

String user="sa";

String password="";

Connection conn= DriverManager.getConnection(url,user,password);

4、Sybase数据库

Class.forName("com.sybase.jdbc.SybDriver").newInstance();

String url =" jdbc:sybase:Tds:localhost:5007/myDB";

//myDB为你的数据库名

Properties sysProps = System.getProperties();

SysProps.put("user","userid");

SysProps.put("password","user_password");

Connection conn= DriverManager.getConnection(url, SysProps);

5、Informix数据库

Class.forName("com.informix.jdbc.IfxDriver").newInstance();

String url =

"jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver;

user=testuser;password=testpassword";

//myDB为数据库名

Connection conn= DriverManager.getConnection(url);

6、MySQL数据库

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

String url ="jdbc:mysql://localhost/myDB?user=softpassword=soft1234useUnicode=truecharacterEncoding=8859_1"

//myDB为数据库名

Connection conn= DriverManager.getConnection(url);

7、PostgreSQL数据库

Class.forName("org.postgresql.Driver").newInstance();

String url ="jdbc:postgresql://localhost/myDB"

//myDB为数据库名

String user="myuser";

String password="mypassword";

Connection conn= DriverManager.getConnection(url,user,password);

8、JDBC-ODBC桥

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Connection con=DriverManager.getConnection("jdbc:odbc:jsp");

jsp为建立的odbc数据源名,事先要先将SQL server的表设置为数据源。在“管理工具”-“数据源odbc”里用系统DNS添加。

8.Oracle8/8i/9i数据库(thin模式)

//import java.sql.*;

Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();

String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID

String user="test";

String password="test";

Connection conn= DriverManager.getConnection(url,user,password);

Statement stmtNew=conn.createStatement();

9.DB2数据库

//import java.sql.*;

Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance();

String url="jdbc:db2://localhost:5000/sample"; //sample为你的数据库名

String user="admin";

String password="";

Connection conn= DriverManager.getConnection(url,user,password);

Statement stmtNew=conn.createStatement();

10.Sql Server7.0/2000数据库

//import java.sql.*;

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();

//String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db2"; //7.0、2000

String url="jdbc:sqlserver://localhost:1433;DatabaseName=db2"; //2005

//db2为数据库名

String user="sa";

String password="";

Connection conn= DriverManager.getConnection(url,user,password);

Statement stmtNew=conn.createStatement();

11.Sybase数据库

//import java.sql.*;

Class.forName("com.sybase.jdbc.SybDriver").newInstance();

String url =" jdbc:sybase:Tds:localhost:5007/myDB";//myDB为你的数据库名

Properties sysProps = System.getProperties();

SysProps.put("user","userid");

SysProps.put("password","user_password");

Connection conn= DriverManager.getConnection(url, SysProps);

Statement stmtNew=conn.createStatement();

12.Informix数据库

//import java.sql.*;

Class.forName("com.informix.jdbc.IfxDriver").newInstance();

String url = "jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver;

user=testuser;password=testpassword"; //myDB为数据库名

Connection conn= DriverManager.getConnection(url);

Statement stmtNew=conn.createStatement();

13.MySQL数据库

//import java.sql.*;

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

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

//String url ="jdbc:mysql://localhost/myDB?user=softpassword=soft1234useUnicode=truecharacterEncoding=8859_1";

String url ="jdbc:mysql://localhost:3306/myDB";

//myDB为数据库名

Connection conn= DriverManager.getConnection(url,"root","root");

Statement stmtNew=conn.createStatement();

14.PostgreSQL数据库

//import java.sql.*;

Class.forName("org.postgresql.Driver").newInstance();

String url ="jdbc:postgresql://localhost/myDB" //myDB为数据库名

String user="myuser";

String password="mypassword";

Connection conn= DriverManager.getConnection(url,user,password);

Statement stmtNew=conn.createStatement();

15.access数据库直连用ODBC的

//import java.sql.*;

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver") ;

String url="jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ="+application.getRealPath("/Data/ReportDemo.mdb");

Connection conn = DriverManager.getConnection(url,"sa","");

Statement stmtNew=conn.createStatement();

16.程序计时

long time1=System.currentTimeMillis();

long time2=System.currentTimeMillis();

long interval=time2-time1;

17.延时

try {

Thread.sleep(Integer.Parse(%%1));

} catch(InterruptedException e) {

e.printStackTrace();

}

18.连接Excel文件

//import java.sql.*;

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

String url = "jdbc:odbc:driver={Microsoft Excel Driver (*.xls)};DBQ=D:\\myDB.xls"; // 不设置数据源

String user="myuser";

String password="mypassword";

Connection conn= DriverManager.getConnection(url,user,password);

Statement stmtNew=conn.createStatement();

如何java类中如何取得在xml文件查询数据库的结果

你是使用JNDI获得数据源对象的吗?如果是:

1,、配置context.xml文件

Context

Resource name="jdbc/news"

auth="Container"

type="javax.sql.DataSource"

maxActive="100"

maxIdle="30"

maxWait="10000"

username="jbit"

password="dbqn"'

driverClassName="Oracle.jdbc.driver.OracleDriver"

url="jdbc:oracle:thin:@localhost:1521:daataName"

/Context

以上用的是Oracle数据库的驱动和url

你可以换成SQL的

2、配置web.xml文件

resource-ref

res-authContainer/res-auth

res-typejavax.sql.DataSource/res-type

res-ref-namejdbc/news/res-ref-name

/resource-ref

3、添加数据库驱动

4、在javaBean中编写代码,使用lookup()方法获得数据源对象

public class BaseDAO {

private static Connection conn = null;

public static Connection getConnection() {

try {

Context context = new InitialContext();

DataSource ds = (DataSource) context

.lookup("java:comp/env/jdbc/news");

conn = ds.getConnection();

} catch (Exception e) {

e.printStackTrace();

}

return conn;

}

}

注:lookup("java:comp/env/jdbc/news");

中的参数"java:comp/env/"+数据源名称的形式

如果你要的话我正好有这Struts2的项目我可以给你看看

数据源可以用Java代码创建吗

详情如下:

以JNDI方式创建数据源首先要配置数据源的相关连接信息,也就是数据源连接池。该配置应该在Tomcat安装目录下的conf/context.xml 文件中配置,在Eclipse的J2EE架构下,也可以把context.xml文件创建在/META-INF目录下。

正确的配置后,就可以在程序中以JNDI的方式创建数据源,得到数据库连接并进行相应的操作。


当前标题:java代码获得数据源,java如何获取数据源
文章出自:http://scyanting.com/article/dsidhhi.html