package basic;
站在用戶的角度思考問題,與客戶深入溝通,找到簡陽網(wǎng)站設(shè)計與簡陽網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:網(wǎng)站設(shè)計制作、成都網(wǎng)站設(shè)計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、域名注冊、網(wǎng)站空間、企業(yè)郵箱。業(yè)務(wù)覆蓋簡陽地區(qū)。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class JDBC {
public void findAll() {
try {
// 獲得數(shù)據(jù)庫驅(qū)動
//由于長時間不寫,驅(qū)動名和URL都忘記了,不知道對不對,你應(yīng)該知道的,自己改一下的哈
String url = "jdbc:oracle:thin:@localhost:1521:XE";
String userName = "system";
String password = "system";
Class.forName("oracle.jdbc.driver.OracleDriver");
// 創(chuàng)建連接
Connection conn = DriverManager.getConnection(url, userName,
password);
// 新建發(fā)送sql語句的對象
Statement st = conn.createStatement();
// 執(zhí)行sql
String sql = "select * from users";
ResultSet rs = st.executeQuery(sql);
// 處理結(jié)果
while(rs.next()){
//這個地方就是給你的封裝類屬性賦值
System.out.println("UserName:"+rs.getString(0));
}
// 關(guān)閉連接
rs.close();
st.close();
conn.close();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void delete(){
try {
//步驟還是那六個步驟,前邊的兩步是一樣的
String url = "jdbc:oracle:thin:@localhost:1521:XE";
String userName = "system";
String password = "system";
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn = DriverManager.getConnection(url,userName,password);
//這里的發(fā)送sql語句的對象是PreparedStatement,成為預(yù)處理sql對象,因為按條件刪除是需要不定值的
String sql = "delete from users where id = ?";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setInt(0, 1);
int row = ps.executeUpdate();
if(row!=0){
System.out.println("刪除成功!");
}
// 關(guān)閉連接
rs.close();
st.close();
conn.close();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
處理大量數(shù)據(jù)并發(fā)操作可以采用如下幾種方法:
1.使用緩存:使用程序直接保存到內(nèi)存中?;蛘呤褂镁彺婵蚣? 用一個特定的類型值來保存,以區(qū)別空數(shù)據(jù)和未緩存的兩種狀態(tài)。
2.數(shù)據(jù)庫優(yōu)化:表結(jié)構(gòu)優(yōu)化;SQL語句優(yōu)化,語法優(yōu)化和處理邏輯優(yōu)化;分區(qū);分表;索引優(yōu)化;使用存儲過程代替直接操作。
3.分離活躍數(shù)據(jù):可以分為活躍用戶和不活躍用戶。
4.批量讀取和延遲修改: 高并發(fā)情況可以將多個查詢請求合并到一個。高并發(fā)且頻繁修改的可以暫存緩存中。
5.讀寫分離: 數(shù)據(jù)庫服務(wù)器配置多個,配置主從數(shù)據(jù)庫。寫用主數(shù)據(jù)庫,讀用從數(shù)據(jù)庫。
6.分布式數(shù)據(jù)庫: 將不同的表存放到不同的數(shù)據(jù)庫中,然后再放到不同的服務(wù)器中。
7.NoSql和Hadoop: NoSql,not only SQL。沒有關(guān)系型數(shù)據(jù)庫那么多限制,比較靈活高效。Hadoop,將一個表中的數(shù)據(jù)分層多塊,保存到多個節(jié)點(分布式)。每一塊數(shù)據(jù)都有多個節(jié)點保存(集群)。集群可以并行處理相同的數(shù)據(jù),還可以保證數(shù)據(jù)的完整性。
拓展資料:
大數(shù)據(jù)(big data),指無法在一定時間范圍內(nèi)用常規(guī)軟件工具進行捕捉、管理和處理的數(shù)據(jù)集合,是需要新處理模式才能具有更強的決策力、洞察發(fā)現(xiàn)力和流程優(yōu)化能力的海量、高增長率和多樣化的信息資產(chǎn)。
在維克托·邁爾-舍恩伯格及肯尼斯·庫克耶編寫的《大數(shù)據(jù)時代》中大數(shù)據(jù)指不用隨機分析法(抽樣調(diào)查)這樣捷徑,而采用所有數(shù)據(jù)進行分析處理。大數(shù)據(jù)的5V特點(IBM提出):Volume(大量)、Velocity(高速)、Variety(多樣)、Value(低價值密度)、Veracity(真實性)。
參考資料:網(wǎng)頁鏈接
預(yù)生成靜態(tài)頁面或者使用緩存(內(nèi)存數(shù)據(jù)庫/nosql)
靜態(tài)頁面是根據(jù)業(yè)務(wù)來確定是否合適使用,例如博客網(wǎng)站,會對文章進行生產(chǎn)靜態(tài)html,固定時間更新(例如每天重新生成一次),這種內(nèi)容修改幾率比較小的比較適合,可以有效的避免每次獲取文章內(nèi)容都要交互數(shù)據(jù)庫,直接訪問對應(yīng)靜態(tài)頁面(相關(guān)技術(shù)可以查看freemarker等)
緩存是針對讀取比較頻繁,且數(shù)據(jù)不是很大的情況。nosql類似,去掉了數(shù)據(jù)庫比較復(fù)雜的強制關(guān)系(例如主外鍵等),只是單純的存儲讀取數(shù)據(jù),具體數(shù)據(jù)/業(yè)務(wù)邏輯再程序中去具體控制,可以極大的加快訪問速度,例如(redis,mongodb)
具體可以搜索nosql或者key-value 數(shù)據(jù)庫了解。
網(wǎng)站欄目:包含nosql頻繁修改數(shù)據(jù)的詞條
分享地址:http://jinyejixie.com/article48/dssoeep.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、網(wǎng)站策劃、企業(yè)網(wǎng)站制作、域名注冊、搜索引擎優(yōu)化、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)