当前位置: 代码迷 >> J2EE >> jdbc连接sqlserver字符串怎么动态指定
  详细解决方案

jdbc连接sqlserver字符串怎么动态指定

热度:100   发布时间:2016-04-22 01:11:37.0
jdbc连接sqlserver字符串如何动态指定?
Java code
URL = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=tempdb";String username="sa";String password="sa";Connection conn = DriverManager.getConnection(URL, username, password);


上面的localhost,username,password 可以让用户动态指定吗?这样就写死在程序里了,谢谢!

------解决方案--------------------
用配置文件配置
URL = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=tempdb";
String username="sa";
String password="sa";
这三个参数,
文件名:“xxx.properties”
内容:
url=jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=tempdb
user=sa
pwd=sa
读取配置文件例子:
Java code
import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.Properties;public class ConnectUtils {    private static String url = null;    private static String user = null;    private static String pwd = null;    public static Connection geConnection(){        Connection conn=null;        try{            getParam("db_oracle.preperties");            Class.forName("oracle.jdbc.driver.OracleDriver");            conn=DriverManager.getConnection(url,user,pwd);        }catch(Exception e){            e.printStackTrace();        }        return conn;    }    public static void close(ResultSet rs){        if(rs!=null){            try {                rs.close();            } catch (SQLException e) {                e.printStackTrace();            }        }    }    public static void close(PreparedStatement pstmt){        if(pstmt!=null){            try {                pstmt.close();            } catch (SQLException e) {                e.printStackTrace();            }        }    }    public static void close(Connection conn){        if(conn!=null){            try {                conn.close();            } catch (SQLException e) {                e.printStackTrace();            }        }    }    public static void getParam(String filename){//HERE!!!!!!!!!!!!!!!        Properties props=new Properties();        try {            InputStream in=new FileInputStream(filename);            props.load(in);            url=(String) props.get("url");            user=(String) props.get("user");            pwd=(String) props.get("pwd");            System.out.println(url+"\n"+user+"\n"+pwd);            in.close();                    } catch (FileNotFoundException e) {            // TODO Auto-generated catch block            e.printStackTrace();        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }            }    }
------解决方案--------------------
.properties文件
------解决方案--------------------
用个 properties文件 ok
------解决方案--------------------
properties 文件放到项目文件夹下,以后就算要迁移数据库也不用改代码了,只需要改配置文件
  相关解决方案