用eclipse环境怎么java与sql连接
解决方案 »
- 求解答:ubuntu12.04下java的问题
- java 多态问题
- 使用eclipse开发遇到的问题,在线等.
- 本人初学 有一点小问题 请各位指点一下 谢谢
- 很费解的题目大家帮着看看
- 请问java中有什么函数可以等同于excel中的norminv函数
- 全面提升你的Jbuilder速度
- 请问在linux下有没有像jcreator那样适合初学者的工具?
- 在一个应用程序中我用new String(str.getBytes("ISO8859_1"),""GBK)来转换字符,运行时却报UnsupportedEncodingException: GBK错误。什么
- 我的 .class 文件应该放在那里才能运行呀?
- 奇怪的异常: java.net.MalformedURLException: unknown protocol: https
- 关于extends 和implements的关系
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.DriverManager;
import java.sql.Date;
import java.util.Properties;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.FileNotFoundException;
public class CreatTableTest
{
private Connection con;
private String url;
private String userName;
private String password;
public static void main(String[] args)
{
CreatTableTest test=new CreatTableTest();
test.getProperty();
Connection con=test.getConnection();
test.createTable(con);
test.getStudent(con);
}
public void createTable(Connection con)
{
try
{
Statement st=con.createStatement();
String sql="CREATE TABLE student(姓名 varchar(50) NOT NULL,"+"学号 varchar(20) NOT NULL,"+
"出生日期 datetime NOT NULL,专业 varchar(20) NULL,"+"籍贯 varchar(30) NULL)";
System.out.println("输出的SQL语句是:");
System.out.println(sql);
st.execute(sql);
sql="insert into student values('邱培光','20005010819','1984-9-16','英语','福建')";
st.executeUpdate(sql);
st.close();
}
catch (SQLException e)
{
e.printStackTrace();
}
}
public void getStudent(Connection con)
{
try
{
Statement st=con.createStatement();
String sql="select * from student";
ResultSet rs=st.executeQuery(sql);
while(rs.next())
{
String name=rs.getString("姓名");
String number=rs.getString("学号");
Date date=rs.getDate("出生日期");
String spe=rs.getString("专业");
String address=rs.getString("籍贯");
System.out.println("\n姓名:"+name+"\t学号:"+number+"\t出生日期:"+date+"\t专业:"+spe+"\t籍贯:"+address);
st.close();
con.close();
}
}
catch (SQLException e)
{
e.printStackTrace();
}
}
public Connection getConnection()
{
try
{
con=DriverManager.getConnection(url,userName,password);
}
catch (SQLException e)
{
e.printStackTrace();
}
return con;
}
public void getProperty()
{
Properties prop=new Properties();
try
{
FileInputStream in=new FileInputStream("driver.properties");
prop.load(in);
String driver=prop.getProperty("drivers");
if(driver!=null)System.setProperty("jdbc.drivers",driver);
url=prop.getProperty("url");
userName=prop.getProperty("user");
password=prop.getProperty("password");
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch(IOException e)
{
e.printStackTrace();
}
}
}和drivers=com.microsoft.jdbc.sqlserver.SQLServerDriver
url=jdbc:microsoft:sqlserver://localhost:1433;
DatabaseName=studentmanager
user=sa
password=411516wwd.
Error Trace in getConnection() : [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
Error: No active Connection
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.sqlserver.tds.TDSConnection.<init>(Unknown Source)
at com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)
at com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)
at com.microsoft.jdbc.base.BaseConnection.open(Unknown Source)
at com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at testJDBC.SQLServerJDBCTest.getConnection(SQLServerJDBCTest.java:21)
at testJDBC.SQLServerJDBCTest.displayDbProperties(SQLServerJDBCTest.java:51)
at testJDBC.SQLServerJDBCTest.main(SQLServerJDBCTest.java:81)
package com.hotel.db;import java.sql.*;
import java.util.ArrayList;
import java.text.SimpleDateFormat;
import java.util.Calendar;public class MyDB {
final String CLASSFORNAME = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
final String DRIVE = "jdbc:microsoft:sqlserver://127.0.0.1:1433;databasename=hotel2";
final String USER = "sa";
final String PSW = ""; private Connection conn = null; /**
* public Statement st = null; public PreparedStatement prest = null; public CallableStatement proc = null; public ResultSet rs = null;
*/
public MyDB() {
try {
Class.forName(CLASSFORNAME);
conn = DriverManager.getConnection(DRIVE, USER, PSW);
System.out.println("连接成功"); }
catch (SQLException e) {
// System.out.println(e.getMessage() + "1路径错误");
}
catch (ClassNotFoundException e) {
// System.out.println(e.getMessage() + "驱动错误");
}
}
}
package com.hotel.db;import java.sql.*;
import javax.naming.*;
import javax.sql.DataSource;//一个用于查找数据源的工具类。
public class DataSourceConn {
public static synchronized Connection getConnection() throws Exception {
try {
Context initCtx = new javax.naming.InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource) envCtx.lookup("jdbc/hotel");
return ds.getConnection();
}
catch (SQLException e) {
throw e;
}
catch (NamingException e) {
throw e;
}
}
}