欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

sqlserver封裝,sqlsugar封裝

java中怎么把對(duì)sqlserver的連接封裝并調(diào)用呢

寫(xiě)一個(gè)公共類(lèi),如下:

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),昭陽(yáng)企業(yè)網(wǎng)站建設(shè),昭陽(yáng)品牌網(wǎng)站建設(shè),網(wǎng)站定制,昭陽(yáng)網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷(xiāo),網(wǎng)絡(luò)優(yōu)化,昭陽(yáng)網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專(zhuān)業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

import?java.sql.*;

public?class?ConnectDB?{

//數(shù)據(jù)庫(kù)用戶名

String?userName="sa";

//數(shù)據(jù)庫(kù)密碼

String?userPassword="123456";

//數(shù)據(jù)庫(kù)的URL,包括連接數(shù)據(jù)庫(kù)所使用的編碼格式

String?url="jdbc:sqlserver://localhost:1433;databaseName=stu";

//定義一個(gè)連接對(duì)象

Connection?dbConn;

//錯(cuò)誤信息串

String?errMes;

public?ConnectDB()?{

//初始化操作

errMes="";

dbConn=null;

}

//連接數(shù)據(jù)庫(kù)

public?Connection?getConn()?{

try?{

//聲明所用的類(lèi)包

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

//獲得數(shù)據(jù)庫(kù)的連接對(duì)象

dbConn=?DriverManager.getConnection(url,userName,userPassword);

}?catch(Exception?e)?{

dbConn?=?null;

errMes=e.toString();

}

return?dbConn;

}

//獲取錯(cuò)誤信息

public?String?getErrMes()?{

return?errMes;

}

}

如何封裝用c# 、asp.net 、svg 、sql做的網(wǎng)站?

這個(gè)不叫封裝,一般叫部署

把開(kāi)發(fā)的web網(wǎng)站部署到web服務(wù)器,連接數(shù)據(jù)庫(kù)服務(wù)器

C#只是一種語(yǔ)言,按樓主的意思是需要一種開(kāi)發(fā)web應(yīng)用程序的技術(shù)就是asp.net,只不過(guò)它用的是C#語(yǔ)言

sql也只是數(shù)據(jù)庫(kù)查詢語(yǔ)言,我們一般選擇具體的數(shù)據(jù)庫(kù)產(chǎn)品,比如sqlserver

就像我們不會(huì)說(shuō),我用聊天工具和你聯(lián)系,而說(shuō)的是我用QQ和你聯(lián)系..

在C#中什么做完一個(gè)項(xiàng)目怎么樣吧數(shù)據(jù)庫(kù)和c#打包封裝

這樣看你用C# 語(yǔ)言開(kāi)發(fā)的是什么類(lèi)型的項(xiàng)目了。

1.B/S結(jié)構(gòu)的程序在部署的時(shí)候是需要將你的程序放在一個(gè)web容器中來(lái)運(yùn)行的例如IIS。然后在部署數(shù)據(jù)庫(kù),微軟的數(shù)據(jù)庫(kù)允許我們將數(shù)據(jù)庫(kù)以文件的形式提取出來(lái)存放在項(xiàng)目的某一個(gè)文件當(dāng)中,但是這也是需要一個(gè)前提的,就是你部署的這臺(tái)計(jì)算機(jī)已經(jīng)有SQL server 的客戶端才可以這樣使用。

2.C/S結(jié)構(gòu)的程序不需要web容器的平臺(tái)可以直接運(yùn)行在客戶的機(jī)器上,但是在如果你的程序用到數(shù)據(jù)庫(kù)的話還是需要對(duì)數(shù)據(jù)庫(kù)進(jìn)步部署的。

如果你想將你的程序和數(shù)據(jù)捆綁在一起的話可以選擇一個(gè)比較輕量級(jí)的數(shù)據(jù)庫(kù),比如微軟的Access 它是附加上office中的,使用它是可以實(shí)現(xiàn)程序和數(shù)據(jù)一起打包的

怎么把數(shù)據(jù)庫(kù)連接和關(guān)閉封裝?

package?com.second.dao;

import?java.lang.reflect.InvocationTargetException;

import?java.lang.reflect.Method;

import?java.sql.Connection;

import?java.sql.DriverManager;

import?java.sql.PreparedStatement;

import?java.sql.ResultSet;

import?java.sql.ResultSetMetaData;

import?java.sql.SQLException;

import?java.util.ArrayList;

import?java.util.List;

public?class?JDBCUtilDao?{

private?static?Connection?con?=?null;

private?static?PreparedStatement?ps?=?null;

private?static?ResultSet?rs?=?null;

public?static?Connection?PrintCon()?{

return?con;

}

public?static?PreparedStatement?PrintPs()?{

return?ps;

}

public?static?ResultSet?PrintRs()?{

return?rs;

}

/**

*?準(zhǔn)備驅(qū)動(dòng)

*/

static?{

try?{

Class.forName("net.sourceforge.jtds.jdbc.Driver");

}?catch?(ClassNotFoundException?e)?{

//?TODO?Auto-generated?catch?block

System.out.println("加載驅(qū)動(dòng)失敗!");

e.printStackTrace();

}

}

public?static?Connection?getConnection()?{

try?{

con?=?DriverManager.getConnection(

"jdbc:jtds:sqlserver://192.168.6.110/sql_second",?"sa",

"123");

//?System.out.println(con);

}?catch?(SQLException?e)?{

//?TODO?Auto-generated?catch?block

System.out.println("連接失敗!");

e.printStackTrace();

}

return?con;

}

/**

*?關(guān)閉連接

*?

*?@param?rs

*????????????結(jié)果集對(duì)象

*?@param?ps

*????????????會(huì)話對(duì)象

*?@param?con

*????????????連接對(duì)象

*/

public?static?void?closeAll(ResultSet?rs,?PreparedStatement?ps,

Connection?con)?{

try?{

if?(null?!=?rs)?{

rs.close();

}

if?(null?!=?ps)?{

ps.close();

}

if?(null?!=?con)?{

con.close();

}

}?catch?(SQLException?e)?{

//?TODO?Auto-generated?catch?block

e.printStackTrace();

}

}

/**

*?設(shè)置參數(shù)

*?

*?@param?params

*?@param?ps

*/

public?static?void?setParams(ListString?params,?PreparedStatement?ps)?{

if?(params?!=?null)?{

for?(int?i?=?0;?i??params.size();?i++)?{

try?{

ps.setString(i?+?1,?params.get(i));

}?catch?(SQLException?e)?{

//?TODO?Auto-generated?catch?block

e.printStackTrace();

}

}

}

}

/**

*?實(shí)現(xiàn)增、刪、改

*?

*?@param?sql

*????????????sql語(yǔ)句

*?@param?params

*????????????參數(shù)

*?@return?修改的行數(shù)

*/

public?static?int?doUpdata(String?sql,?ListString?params)?{

int?result?=?0;

try?{

//?判斷是否連接?不連接就把數(shù)據(jù)庫(kù)連上

if?(null?==?con?||?con.isClosed())?{

con?=?getConnection();

}

//?得到會(huì)話

ps?=?con.prepareStatement(sql);

//?設(shè)置參數(shù)

setParams(params,?ps);

//?得到結(jié)果,即改變行數(shù)

result?=?ps.executeUpdate();

}?catch?(SQLException?e)?{

//?TODO?Auto-generated?catch?block

e.printStackTrace();

}?finally?{

closeAll(null,?ps,?con);

}

return?result;

}

/**

*?查詢

*?

*?@param?T

*?@param?sql

*?@param?params

*?@param?t

*?@return

*/

public?static?T?ListT?qureyAll(String?sql,?ListString?params,

ClassT?t)?{

//?用一個(gè)集合接受返回的數(shù)據(jù)

ListT?list?=?new?ArrayListT();

//?判斷是否連接

try?{

if?(null?==?con?||?con.isClosed())?{

con?=?getConnection();

}

//?操作對(duì)象

ps?=?con.prepareStatement(sql);

//?設(shè)置參數(shù)

setParams(params,?ps);

//?返回結(jié)果集

rs?=?ps.executeQuery();

//?取出t中的說(shuō)有方法

Method[]?method?=?t.getDeclaredMethods();

//?取出說(shuō)有列名和列數(shù)

ResultSetMetaData?rsmd?=?rs.getMetaData();

//?獲得列數(shù)

int?count?=?rsmd.getColumnCount();

//?取出每個(gè)列列名放入數(shù)組中

String[]?columns?=?new?String[count];

for?(int?i?=?0;?i??columns.length;?i++)?{

columns[i]?=?rsmd.getColumnName(i?+?1);

}

//?循環(huán)結(jié)果集

while?(rs.next())?{

T?s?=?(T)?t.newInstance();

//?第一個(gè)循環(huán)控制列數(shù)

for?(int?i?=?0;?i??columns.length;?i++)?{

//?第二個(gè)循環(huán)控制方法名

for?(int?j?=?0;?j??method.length;?j++)?{

String?setName?=?"set"?+?columns[i];

if?(setName.equalsIgnoreCase(method[j].getName()))?{//?set+列名相同就是這個(gè)類(lèi)得方法名

String?typeName?=?rsmd.getColumnTypeName(i?+?1);//?得到數(shù)據(jù)庫(kù)中列名的類(lèi)型

//?int

//?varchar..

//System.out.println(typeName);

if?(typeName.equals("INTEGER")

||?typeName.equals("int?identity")

||?typeName.equals("int"))?{

method[j].invoke(s,?rs.getInt(columns[i]));

}?else?if?(typeName.equals("DECIMAL"))?{

method[j].invoke(s,?rs.getDouble(columns[i]));

}?else?if?(typeName.equals("VARCHAR2"))?{

method[j].invoke(s,?rs.getString(columns[i]));

}?else?if?(typeName.equals("money"))?{

method[j].invoke(s,?rs.getFloat(columns[i]));

}?else?if?(typeName.equals("datetime"))?{

//?System.out.println(rs.getTimestamp(columns[i]));

method[j]

.invoke(s,?rs.getTimestamp(columns[i]));

}?else?{

method[j].invoke(s,?rs.getString(columns[i]));

}

}

}

}

list.add(s);

}

closeAll(rs,?ps,?con);

}?catch?(SQLException?e)?{

//?TODO?Auto-generated?catch?block

e.printStackTrace();

}?catch?(InstantiationException?e)?{

//?TODO?Auto-generated?catch?block

e.printStackTrace();

}?catch?(IllegalAccessException?e)?{

//?TODO?Auto-generated?catch?block

e.printStackTrace();

}?catch?(IllegalArgumentException?e)?{

//?TODO?Auto-generated?catch?block

e.printStackTrace();

}?catch?(InvocationTargetException?e)?{

//?TODO?Auto-generated?catch?block

e.printStackTrace();

}

return?list;

}

/**

*?查詢

*?

*?@param?sql

*?@param?obj

*?@return

*/

public?static?ResultSet?getInfoos(String?sql,?Object[]?temp)?{

ResultSet?rs?=?null;

try?{

if?(con?==?null?||?con.isClosed())?{

getConnection();

}

ps?=?con.prepareStatement(sql);

for?(int?i?=?1;?i??temp.length;?i++)?{

ps.setObject(i,?temp[i]);

}

rs?=?ps.executeQuery();

}?catch?(SQLException?e)?{

e.printStackTrace();

}

return?rs;

}

public?static?void?main(String[]?args)?{

//?JDBCUtilDemo?jd?=?new?JDBCUtilDemo();

//?System.out.println(jd.getConnection());

//?if(jd.updateByUserId("8888"?)){

//?System.out.println("OK");

//?}else{

//?System.out.println("NO");

//?}

}

}

這是以前寫(xiě)的一個(gè)類(lèi),你看看有幫助不

Java數(shù)據(jù)庫(kù)連接封裝類(lèi)

try{

class.forName(driver);

}

catch (ClassNotFoundException e)

{

e.printStackTrace();

}

錯(cuò)了,應(yīng)該寫(xiě)在方法里面。。。

public Connection getConnection()

{

try{

class.forName(driver);

connection = DriverManager.getConnection(URL,username,password);

}

catch (SQLException e1)

{

e1.printStackTrace();

}

catch (ClassNotFoundException e)

{

e.printStackTrace();

}

return connection;

}

或者把他放在構(gòu)造方法里。

當(dāng)然是:

Exception in thread "main" java.lang.Error: Unresolved compilation problems:

編譯肯定不對(duì)。

分享名稱(chēng):sqlserver封裝,sqlsugar封裝
路徑分享:http://chinadenli.net/article49/dsidshh.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)虛擬主機(jī)服務(wù)器托管網(wǎng)站建設(shè)建站公司微信公眾號(hào)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司