Ⅰ JAVA開發在後台DAO層查找語句時,用sql好還是hql好
當然用hql,hql將sql已經封裝成為對象了。如果你需要保存一個學生,你只需要save一個學生對象就行了。
而sql你需要操作一大堆!
www.cao055.com
Ⅱ java 中編寫SqL語句
在數據外面賦值,一般傳入資料庫的語句都是完整的。這句話是是查詢開頭幾條數據的,也就是說number只能是Int類型,表示需要查詢開頭幾條數據。#號不需要。
Ⅲ java SQL項目開發的大致流程
需求分析,你們可以看管理系統要建哪些表,表之間的關系建好。
新建java項目作服務端,介面用servlet輸出為json格式數據就可以了,或者簡單的值就簡單的。(用spring mvc作服務端介面發布也可以)
寫電腦客戶端,可以直接用jsp頁面實現,調介面如:http://127.0.0.1/erp-app/findList
寫手機客戶端,主要用Apache HttpClient調用介面取返回的json數據。
各個可以分工進行。
Ⅳ 如何在JAVA中創建sql 資料庫
Java要連接資料庫,那麼首先你必須安裝mysql資料庫。
安裝好mysql之後,安裝JDK了。
安裝好JDK之後,就是安裝Eclipse了,要支持JDK版本,Eclipse安裝的時候會自動去找JDK安裝位置的,解壓版的Eclipse,就要配置eclipse.ini文件了,將對應的JDK配置好,這些已經准備就緒的時候,就到mysql中創建資料庫和表。
先創建資料庫:
CREATE DATABASE SCUTCS;
接著,創建表:
CREATE TABLE STUDENT
(
SNO CHAR(7) NOT NULL,
SNAME VARCHAR(8) NOT NULL,
SEX CHAR(2) NOT NULL,
BDATE DATE NOT NULL,
HEIGHT DEC(5,2) DEFAULT 000.00,
PRIMARY KEY(SNO)
);
然後插入數據,可以用SQL語句insert into <表名> values (value1, value2, ...);
編寫.java文件來演示一下如何訪問MySQL資料庫。
import java.sql.*;
public class JDBCTest {
public static void main(String[] args){
// 驅動程序名 String driver = "com.mysql.jdbc.Driver";
// URL指向要訪問的資料庫名scutcs String url = "jdbc:mysql://127.0.0.1:3306/scutcs";
// MySQL配置時的用戶名 String user = "root"; // MySQL配置時的密碼 String password = "root";
try { // 載入驅動程序 Class.forName(driver);
// 連續資料庫 Connection conn = DriverManager.getConnection(url, user, password);
if(!conn.isClosed()) System.out.println("Succeeded connecting to the Database!");
// statement用來執行SQL語句 Statement statement = conn.createStatement();
// 要執行的SQL語句 String sql = "select * from student";
// 結果集 ResultSet rs = statement.executeQuery(sql);
while(rs.next()) // 選擇sname這列數據 name = rs.getString("sname
// 輸出結果 System.out.println(rs.getString("sno") + "\t" + name); }
rs.close(); conn.close();
} catch(ClassNotFoundException e) {
System.out.println("Sorry,can`t find the Driver!"); e.printStackTrace();
} catch(SQLException e) {
e.printStackTrace();
} catch(Exception e) {
e.printStackTrace();
} } }
Ⅳ java開發sql復用的問題
有些sql查詢可能差別就一兩個欄位,這種可以多個方法用一個sql,改變參數就OK,但是這種情況存在一個問題,就是在某個方法參數變更的時候,擴展不太好
一個方法對應一條sql就是擴展比較好,而且mybatis應該可以抽取sql相同的部分嘛,多次用到的相同sql部分抽取出來就好
Ⅵ java寫m通過sql需要實體類嗎
java寫m通過sql需要實體類。
1、代碼是在別人的基礎進行改寫的。
2、大家有什麼改進的意見可以告訴我,也可以自己改好共享給其他人。
3、剛剛畢業,水平有限,肯定有許多不足之處。
4、希望剛剛學習java的同學能有所啟發。
編程工具:
Eclipse:一個開放源代碼的、基於Java的可擴展開發平台。
NetBeans:開放源碼的Java集成開發環境,適用於各種客戶機和Web應用。
IntelliJ IDEA:在代碼自動提示、代碼分析等方面的具有很好的功能。
MyEclipse:由Genuitec公司開發的一款商業化軟體,是應用比較廣泛的Java應用程序集成開發環境。
EditPlus:如果正確配置Java的編譯器「Javac」以及解釋器「Java」後,可直接使用EditPlus編譯執行Java程序。
Ⅶ 面試Java開發時問到高並發怎麼處理的,還有sql優化有哪些辦法,有哪位大神知道啊,新手!!
Java開發高並發的處理方法:
最基礎的地方做起,優化我們寫的代碼,減少必要的資源浪費
避免頻繁的使用new對象,對於整個應用只需要存在一個實例的類,我們可以使用單例模式。對於String連接操作,使用StringBuffer或StringBuilder,對於工具類可以通過靜態方法來訪問。
避免使用錯誤的方式,盡量不用instanceof做條件判斷。使用java中效率高的類,比如ArrayList比Vector性能好。
圖片伺服器分離
對於web伺服器來說,圖片是最消耗資源的,於是我們有必要把圖片與頁面進行分離,我們把圖片放到獨立的圖片伺服器。這樣的架構可以降低提供頁面訪問請求的伺服器系統壓力,並且可以保證系統不會因為圖片的問題而崩潰。在圖片伺服器上,我們可以對不同的配置進行優化。
具體接觸過的緩存機制是hibernate的緩存機制。為了避免每次都向資料庫中取得數據,我們把用戶常常訪問到的數據放到內存中,甚至緩存十分大的時候我們可以把內存中的緩存放到硬碟中。還有高級的分布式緩存資料庫使用,都可以增加系統的抗壓力。
分批傳送
在做某項目的時候,一次傳遞的參數太多,而且資料庫規定一次最多傳遞的參數最多是三萬條,當時有五萬條記錄,那怎麼傳送呢?最終是分批傳送,電梯里一次乘不下那麼多的人,會報超重的bug,那就分批把人送上去。
還有一次在考試系統中,如果那麼多的考試人員同時提交到資料庫中,資料庫的壓力增大,有時會被down掉,當時採用的方法是使用ajax非同步傳輸,沒有等待考生點擊提交按鈕的時候,就把考生的答案自動提交,這樣也避免了突然斷電考生前面做過的題出現丟失的現象。
DB優化
在資料庫設計的時候就要考慮到後期的維護,資料庫三範式是我們設計資料庫索要遵循的原則。
索引的建立:建立索引要適當,如果一個表經常用來被查詢,對於增加和修改很少被用到,我們就可以為這個表建立索引,因為對於增加和修改和刪除操作時,我們對索引的維護要大大超過索引給我們帶來的效率。
表欄位的類型選擇要恰當。包括欄位的長度、類型等,要根據實際存儲的數據進行選擇,長度不要過長,否則會影響效率。
外鍵要慎用,因為主鍵代表這一張表,而外鍵代表一群表,對表之間進行了關聯,在刪除修改等需要我們關聯。
在資料庫操作上。 盡量使用prepareStatement,少用Statement,因為PrepareStatement是進行預編譯的。
connection設置為readOnly,Connection是對書庫連接,屬於重量級,我們使用即可。
連接池的使用,我們可以修改資料庫默認的連接數。
Ⅷ java開發中拼接sql語錄使用什麼類型的變數為什麼
String類型 因為sql語句是字元串
Ⅸ java開發中數據量過大的查詢數據怎麼避免翻一頁就執行一次SQL語句
延遲關聯。優化此類分類查詢的一個最簡單的辦法就是盡可能地使用索引覆蓋掃描(如果一個索引包含所有需要查詢的欄位的值