이 코드는 Java를 사용하여 Micrososft SQL 데이터베이스를 Callable 문과 연결하는 것입니다. 호출 가능한 문, 매개 변수 및 SQL 드라이버 URL이 속성 파일에서 호출됩니다. 데이터베이스에 연결되면 쿼리를 기반으로 특정 열의 모든 값을 채 웁니다. SQL 데이터베이스 출력을 파일로 인쇄 할 수 있습니다.
속성 파일과 Callable Statement로 MS SQL 연결
import java.util.Properties; import java.util.Random; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException;
import java.util.Properties; import java.util.Random; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException;
import java.util.Properties; import java.util.Random; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException;
import java.util.Properties; import java.util.Random; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException;
import java.util.Properties; import java.util.Random; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException;
import java.util.Properties; import java.util.Random; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException;
import java.util.Properties; import java.util.Random; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException;
import java.util.Properties; import java.util.Random; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException;
import java.util.Properties; import java.util.Random; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException;
import java.util.Properties; import java.util.Random; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException;
공용 클래스 DBConnect {
개인 문자열 dbValue;
public String getDbValue () {
dbValue를 반환;
}
공공 무효 setDbValue (문자열 dbValue) {
this.dbValue = dbValue;
}
공공 정적 문자열 callStoredProc () {
InputStream 입력 = null;
ResultSet rs = null;
PreparedStatement ps = null;
연결 con = null;
문자열 결과 = null;
시도 {
String propPath = ". \ src \ props \ db.properties"; // 속성 파일
입력 = 새로운 FileInputStream (propPath);
속성 prop = 새 속성 ();
prop.load (입력); // 속성 파일을로드합니다.
// 속성 값을 얻습니다.
문자열 dbDriver = (prop.getProperty ( "dbDriver")); // db.properties의 드라이버
문자열 dbURL = (prop.getProperty ( "dbURL"));
Class.forName (dbDriver);
con = DriverManager.getConnection (dbURL);
// 저장 프로 시저 호출
문자열 stPro = (prop.getProperty ( "SPSql1"));
ps = con.prepareStatement (stPro);
ps.setEscapeProcessing (true);
ps.setQueryTimeout (90); // 타임 아웃 값
ps.setString (1, prop.getProperty ( "VALUE1"));
ps.setString (2, prop.getProperty ( "VALUE2"));
ps.setString (3, prop.getProperty ( "VALUE3"));
rs = ps.executeQuery ();
rs.next ();
// 1-100의 DB 범위에서 임의 값 선택
int random = (int) (Math.random () * 100 + 1);
int i = 0;
while (i <랜덤) {
rs.next ();
나는 ++;
}
결과 = (rs.getString ( "row_name")); //prop.getProperty("dbRow ")
prop.getProperty ( "dbRow");
prop.getProperty ( "value2");
} catch (IOException e) {
e.printStackTrace ();
} catch (ClassNotFoundException e) {
e.printStackTrace ();
} catch (SQLException e) {
e.printStackTrace ();
} finally {
시도 {
if (rs! = null)
input.close ();
if (rs! = null)
rs.close ();
if (ps! = null)
ps.close ();
if (con! = null)
con.close ();
} catch (예외 e) {
e.printStackTrace ();
}
}
반환 결과;
}
}
// 클래스의 끝
// 속성 파일
/*db.properties * /
dbDriver = com.microsoft.sqlserver.jdbc.SQLServerDriver
dbURL = jdbc : sqlserver : SERVER_URL; 데이터베이스 = DB_NAME; 사용자 = USERNAME; 암호 = PASSWORD
VALUE1 = aaa
VALUE2 = bbb
VALUE3 = ccc
SPSql1 = {storeprecdurecall 호출 (?, ?, ?)}
dbRow = row_name
DB_USERNAME = uname
DB_PASSWORD = 암호
이 특정 예에서는 데이터가 테이블에서 반복되고 결과에서 임의의 값을 선택합니다. 이 예제에서는 값을 100으로 설정하고 결과는 테이블 결과에서 1-100 사이의 임의의 값을 선택합니다.