JDBC:
Name: MyJDBCPool
URL:url:jdbc:weblogic:mssqlserver4:database@localhost:1433
/**database 为你的数据库名**/
Driver Classname:weblogic.jdbc.mssqlserver4.Driver
Properties(key=value):user=sa password=******
charset=gb2312Datasource:
Name: MyJDBCDS
JNDI Name: SQLServer
Pool Name: MyJDBCPool
测试的jsp程序
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<%@ page import="java.sql.*"%>
<%@ page import="javax.naming.*"%>
<%@ page import="javax.rmi.*"%>
<%@ page import="java.net.*"%>
<%@ page import="java.lang.Object"%>
<%@ page import="javax.sql.*"%>
<%@ page import="weblogic.jdbc.*,java.util.Properties" %>
<%
Context ctx = null;
DataSource ds = null;
Statement stmt = null;
ResultSet rs = null;
try {
Hashtable env = new Hashtable();
env.put(InitialContext.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextF
actory");
env.put(InitialContext.PROVIDER_URL,"t3://localhost:80");
env.put(InitialContext.SECURITY_PRINCIPAL,"system");
env.put(InitialContext.SECURITY_CREDENTIALS,"******");
ctx = new InitialContext(env); ds = (DataSource)ctx.lookup ("SQLServer");
Connection con = ds.getConnection("system","*******");
stmt = con.createStatement(); rs = stmt.executeQuery("select * from ");
while(rs.next())
{
out.println(rs.getString("")+"<br/>");
} } catch (Exception E) { System.out.println("Init Error: "+E.getMessage()); }
%> 驱动不用下载的,weblogic自己带的,如果你不想配连接池,你可以到microsoft 下在驱动程序,然后将安装后的lib目录下的三个.jar文件copy到你的应用WEB-INF下的lib目录下(没有可以新建)下面是连接数据库的代码
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test";
//test为你的数据库的
String user="sa";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from test";
Name: MyJDBCPool
URL:url:jdbc:weblogic:mssqlserver4:database@localhost:1433
/**database 为你的数据库名**/
Driver Classname:weblogic.jdbc.mssqlserver4.Driver
Properties(key=value):user=sa password=******
charset=gb2312Datasource:
Name: MyJDBCDS
JNDI Name: SQLServer
Pool Name: MyJDBCPool
测试的jsp程序
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<%@ page import="java.sql.*"%>
<%@ page import="javax.naming.*"%>
<%@ page import="javax.rmi.*"%>
<%@ page import="java.net.*"%>
<%@ page import="java.lang.Object"%>
<%@ page import="javax.sql.*"%>
<%@ page import="weblogic.jdbc.*,java.util.Properties" %>
<%
Context ctx = null;
DataSource ds = null;
Statement stmt = null;
ResultSet rs = null;
try {
Hashtable env = new Hashtable();
env.put(InitialContext.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextF
actory");
env.put(InitialContext.PROVIDER_URL,"t3://localhost:80");
env.put(InitialContext.SECURITY_PRINCIPAL,"system");
env.put(InitialContext.SECURITY_CREDENTIALS,"******");
ctx = new InitialContext(env); ds = (DataSource)ctx.lookup ("SQLServer");
Connection con = ds.getConnection("system","*******");
stmt = con.createStatement(); rs = stmt.executeQuery("select * from ");
while(rs.next())
{
out.println(rs.getString("")+"<br/>");
} } catch (Exception E) { System.out.println("Init Error: "+E.getMessage()); }
%> 驱动不用下载的,weblogic自己带的,如果你不想配连接池,你可以到microsoft 下在驱动程序,然后将安装后的lib目录下的三个.jar文件copy到你的应用WEB-INF下的lib目录下(没有可以新建)下面是连接数据库的代码
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test";
//test为你的数据库的
String user="sa";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from test";
解决方案 »
- 请教下GET和POST方法发送请求action里获取参数的区别
- struts2 tiles 和ssl 同时使用
- 关于在火狐浏览器不能跳转的问题
- 关于smartGWT控件问题
- JAVA环境配置谁会不示案
- java输出菜单树,和javaScript结合的问题
- struts2标签,怎么从List里取值?
- Eclipse+lomboz卡巴把java.exe当病毒给杀了、!!
- hibernate中用了sequence 为什么保存到数据库中的数据变了
- 在onsubmit后,如果想返回到原来的界面(如:修改),并保持修改的数?/
- 用实体bean(cmp)保存blob时出现的奇怪问题(在线等待)
- 请问哪里有jboss的分析文档下载,uml文档或阅读代码后写的心得都可以,偶正在研读这方面的东东
registerDriver: driver[className=weblogic.jdbc.mssqlserver4.Driver,weblogic.jdbc.mssqlserver4.Driver@6cb8fa]
DriverManager.getDriver("jdbc:weblogic:mssqlserver4:zhangyi@localhost:1433")
trying driver[className=weblogic.jdbc.oci.Driver,weblogic.jdbc.oci.Driver@7c814d]
trying driver[className=weblogic.jdbc.mssqlserver4.Driver,weblogic.jdbc.mssqlserver4.Driver@6cb8fa]
getDriver returning driver[className=weblogic.jdbc.mssqlserver4.Driver,weblogic.jdbc.mssqlserver4.Driver@6cb8fa]
java.sql.SQLException: Can't open a socket on localhost:1433. Check host and port number and make sure the security manager allows this connection. You can also try running the SocketApplet (java.net.ConnectException: Connection refused: connect).
at weblogic.jdbc.mssqlserver4.BaseConnection.prepareConnection(BaseConnection.java:177)
at weblogic.jdbc.mssqlserver4.Driver.newConnection(Driver.java:34)
at weblogic.jdbc.mssqlserver4.ConnectDriver.connect(ConnectDriver.java:151)
at weblogic.jdbc.common.internal.ConnectionEnvFactory.makeConnection(ConnectionEnvFactory.java:192)
at weblogic.jdbc.common.internal.ConnectionEnvFactory.createResource(ConnectionEnvFactory.java:134)
at weblogic.common.internal.ResourceAllocator.makeResources(ResourceAllocator.java:698)
at weblogic.common.internal.ResourceAllocator.<init>(ResourceAllocator.java:282)
at weblogic.jdbc.common.internal.ConnectionPool.startup(ConnectionPool.java:623)
at weblogic.jdbc.common.JDBCService.addDeployment(JDBCService.java:107)
at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:329)
at weblogic.management.mbeans.custom.DeploymentTarget.addDeployments(DeploymentTarget.java:279)
at weblogic.management.mbeans.custom.DeploymentTarget.updateServerDeployments(DeploymentTarget.java:233)
at weblogic.management.mbeans.custom.DeploymentTarget.updateDeployments(DeploymentTarget.java:193)
at java.lang.reflect.Method.invoke(Native Method)
at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:359)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
at $Proxy30.updateDeployments(Unknown Source)
at weblogic.management.configuration.ServerMBean_CachingStub.updateDeployments(ServerMBean_CachingStub.java:2761)
at weblogic.management.mbeans.custom.ApplicationManager.startConfigManager(ApplicationManager.java:370)
at weblogic.management.mbeans.custom.ApplicationManager.start(ApplicationManager.java:160)
at java.lang.reflect.Method.invoke(Native Method)
at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:359)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
at $Proxy41.start(Unknown Source)
at weblogic.management.configuration.ApplicationManagerMBean_CachingStub.start(ApplicationManagerMBean_CachingStub.java:480)
at weblogic.management.Admin.startApplicationManager(Admin.java:1180)
at weblogic.management.Admin.finish(Admin.java:590)
at weblogic.t3.srvr.T3Srvr.start(T3Srvr.java:518)
at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:203)
at weblogic.Server.main(Server.java:35)
第二,为什么用了连接池,程序还要关CONN。STATEMENT,RS呢??如果不关那么第二次刷新的时候就会出错,这是怎么回事啊,这不是和ODBC一样了吗??
第二个问题其实不用关的,weblogic会定期关掉一些连接,不过在没关之前如果连接数大于你设置的最大连接数,控制台就回报错,如果你捕获异常,页面不会报错,但没有内容显示,所以最好使用完了就关掉,免得占用资源。