update sys_user set password = "此處是加密后的密碼" where id = "此處是要修改密碼的用戶的id";
合山網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,合山網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為合山數(shù)千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站制作要多少錢,請找那個售后服務(wù)好的合山做網(wǎng)站的公司定做!
把這個sql語句,放到dao里面,在需要的時(shí)候調(diào)用就可以了,password和id修改為自己需要的。
DAO層一般有接口和該接口的實(shí)現(xiàn)類!
接口用于規(guī)范實(shí)現(xiàn)類!
實(shí)現(xiàn)類一般用于用于操作數(shù)據(jù)庫!
一般操作修改,添加,刪除數(shù)據(jù)庫操作的步驟很相似,就寫了一個公共類DAO類
,修改,添加,刪除數(shù)據(jù)庫操作時(shí)
直接調(diào)用公共類DAO類!
DAO是Data Access Object數(shù)據(jù)訪問接口,數(shù)據(jù)訪問:顧名思義就是與數(shù)據(jù)庫打交道。夾在業(yè)務(wù)邏輯與數(shù)據(jù)庫資源中間。
在核心J2EE模式中是這樣介紹DAO模式的:為了建立一個健壯的J2EE應(yīng)用,應(yīng)該將所有對數(shù)據(jù)源的訪問操作抽象封裝在一個公共API中。
用程序設(shè)計(jì)的語言來說,就是建立一個接口,接口中定義了此應(yīng)用程序中將會用到的所有事務(wù)方法。在這個應(yīng)用程序中,當(dāng)需要和數(shù)據(jù)源進(jìn)行交互的時(shí)候則使用這個接口,并且編寫一個單獨(dú)的類來實(shí)現(xiàn)這個接口在邏輯上對應(yīng)這個特定的數(shù)據(jù)存儲。
擴(kuò)展資料:
Java是一門面向?qū)ο缶幊陶Z言,不僅吸收了C++語言的各種優(yōu)點(diǎn),還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強(qiáng)大和簡單易用兩個特征。Java語言作為靜態(tài)面向?qū)ο缶幊陶Z言的代表,極好地實(shí)現(xiàn)了面向?qū)ο罄碚?,允許程序員以優(yōu)雅的思維方式進(jìn)行復(fù)雜的編程 。
Java具有簡單性、面向?qū)ο?、分布式、健壯性、安全性、平臺獨(dú)立與可移植性、多線程、動態(tài)性等特點(diǎn) 。Java可以編寫桌面應(yīng)用程序、Web應(yīng)用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用程序等。
JRE是個運(yùn)行環(huán)境,JDK是個開發(fā)環(huán)境。因此寫Java程序的時(shí)候需要JDK,而運(yùn)行Java程序的時(shí)候就需要JRE。而JDK里面已經(jīng)包含了JRE,因此只要安裝了JDK,就可以編輯Java程序,也可以正常運(yùn)行Java程序。
但由于JDK包含了許多與運(yùn)行無關(guān)的內(nèi)容,占用的空間較大,因此運(yùn)行普通的Java程序無須安裝JDK,而只需要安裝JRE即可。
參考資料來源:百度百科-java
package org.dao;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.Date;
import org.dbc.DBManageer;
import org.dbc.DBUtil;
import org.vo.CardInfo;
public class CardInfoDao {
public void testResultSetMetaData() {
String sql = "select * from cardinfo";
Connection con = new DBUtil().getConnection();
PreparedStatement ps = null;
ResultSetMetaData rsmd = null;
ResultSet rs = null;
try {
ps = con.prepareStatement(sql);
rs = ps.executeQuery();
rsmd = rs.getMetaData();
for (int i = 1; i rsmd.getColumnCount(); i++) {
System.out.print(" 數(shù)據(jù)類型名:" + rsmd.getColumnClassName(i));
System.out.print(" 別名:" + rsmd.getColumnLabel(i));
System.out.print(" 列名:" + rsmd.getColumnName(i));
System.out.print(" 數(shù)據(jù)類型:" + rsmd.getColumnTypeName(i));
System.out.println(" 數(shù)據(jù)類型:" + rsmd.getColumnType(i));
}
while (rs.next()) {
// 通過反射可以對VO對象(CardInfo)自動賦值
// for(...)
// CardInfo ci=new CardInfo();
// ci.setId(rs.getInt(columnIndex))
/*
* CardInfo ca = new CardInfo(); Class cc = ca.getClass();
*/
/*Class? c = Class.forName("org.vo.CardInfo");
CardInfo ca = (CardInfo) c.newInstance();
ca.setCardId(rs.getString("cardId"));
ca.setCustomerName(rs.getString("customerName"));
ca.setCurrentMoney(rs.getFloat("currentMoney"));
ca.setOpenDate(rs.getDate("openDate"));
System.out.println(ca);//ok */
//加載一個CardInfo類
Class c = Class.forName("org.vo.CardInfo");
Object o = c.newInstance(); //獲得它的一個實(shí)例
//定義String類的對象數(shù)組
Class[] params = new Class[] { String.class};
//定義float類的對象數(shù)組
Class[] floatparams = new Class[] { float.class};
//定義Date(util)類的對象數(shù)組
Class[] dateparams = new Class[] { Date.class};
//獲得setCardId方法
Method me = c.getMethod("setCardId", params);
//實(shí)例方法的參數(shù)
Object []ostr = new Object[]{rs.getString("cardId")};
//如果底層方法是靜態(tài)的,那么可以忽略指定的 obj 參數(shù)。該參數(shù)可以為 null。
//如果底層方法所需的形參數(shù)為 0,則所提供的 args 數(shù)組長度可以為 0 或 null。
//o 調(diào)用方法的對象 ostr 方法調(diào)用的參數(shù)
me.invoke(o, ostr);
//獲得setCustomerName方法
Method name = c.getMethod("setCustomerName", params);
Object []cusname = new Object[]{rs.getString("customerName")};
name.invoke(o,cusname);
//獲得setCurrentMoney方法
Method money = c.getMethod("setCurrentMoney", floatparams);
Object []cusmoney = new Object[]{rs.getFloat("currentMoney")};
money.invoke(o,cusmoney);
//獲得setOpenDate方法
Method date = c.getMethod("setOpenDate",dateparams);
Object []openDate = new Object[]{rs.getDate("openDate")};
date.invoke(o, openDate);
//打印
System.out.println(o);
}
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (SecurityException e) {
e.printStackTrace();
}catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
}
public void showResultSet() {
String sql = "select * from cardinfo";
Connection con = new DBManageer().getConnection();
PreparedStatement ps = null;
try {
ps = con.prepareStatement(sql, ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
ResultSet rs = ps.executeQuery();
System.out.println("---依次讀取------");
while (rs.next()) {
CardInfo ca = new CardInfo();
ca.setCardId(rs.getString("cardId"));
ca.setCustomerName(rs.getString("customerName"));
ca.setCurrentMoney(rs.getFloat("currentMoney"));
ca.setOpenDate(rs.getDate("openDate"));
System.out.println(ca);
}
System.out.println("---倒讀------");
while (rs.previous()) {
CardInfo ca = new CardInfo();
ca.setCardId(rs.getString("cardId"));
ca.setCustomerName(rs.getString("customerName"));
ca.setCurrentMoney(rs.getFloat("currentMoney"));
ca.setOpenDate(rs.getDate("openDate"));
System.out.println(ca);
}
rs.absolute(3);// 定位倒第幾行
rs.updateString("customerName", "star");
// rs.updateRow();
rs.beforeFirst();
while (rs.next()) {
CardInfo ca = new CardInfo();
ca.setCardId(rs.getString("cardId"));
ca.setCustomerName(rs.getString("customerName"));
ca.setCurrentMoney(rs.getFloat("currentMoney"));
ca.setOpenDate(rs.getDate("openDate"));
System.out.println(ca);
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
網(wǎng)上截取的一段改的代碼,包括連接mysql數(shù)據(jù)庫,希望能幫到你。!
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Dao {
private Connection conn = null;
PreparedStatement statement = null;
void connSQL() {
String url = "jdbc:mysql://localhost:3306/test?characterEncoding=UTF-8"; // 數(shù)據(jù)庫地址,端口,數(shù)據(jù)庫名稱,字符集
String username = "root"; // 數(shù)據(jù)庫用戶名
String password = "root"; // 數(shù)據(jù)庫密碼
try {
Class.forName("com.mysql.jdbc.Driver"); // 加載驅(qū)動,必須導(dǎo)入包mysql-connector-java-5.1.6-bin.jar
conn = DriverManager.getConnection(url, username, password);
}
// 捕獲加載驅(qū)動程序異常
catch (ClassNotFoundException cnfex) {
System.err.println("裝載 JDBC/ODBC 驅(qū)動程序失敗。");
cnfex.printStackTrace();
}
// 捕獲連接數(shù)據(jù)庫異常
catch (SQLException sqlex) {
System.err.println("無法連接數(shù)據(jù)庫");
sqlex.printStackTrace();
}
}
// 關(guān)閉數(shù)據(jù)庫
void deconnSQL() {
try {
if (conn != null)
conn.close();
} catch (Exception e) {
System.out.println("關(guān)閉數(shù)據(jù)庫異常:");
e.printStackTrace();
}
}
boolean updateSQL(String sql) {
try { ?
statement = conn.prepareStatement(sql); ?
statement.executeUpdate(); ?
return true; ?
} catch (SQLException e) { ?
System.out.println("更新數(shù)據(jù)庫時(shí)出錯:"); ?
e.printStackTrace(); ?
} catch (Exception e) { ?
System.out.println("更新時(shí)出錯:"); ?
e.printStackTrace(); ?
} ?
return false; ?
} ?
void print(ResultSet rs) {
System.out.println("-----------------"); ?
System.out.println("查詢結(jié)果:"); ?
System.out.println("-----------------"); ?
try { ?
while (rs.next()) { ?
System.out.println(rs.getInt(0) + "/t/t" + rs.getString(1) ?
+ "/t/t" + rs.getString(2)); ?
} ?
} catch (SQLException e) { ?
System.out.println("顯示時(shí)數(shù)據(jù)庫出錯。"); ?
e.printStackTrace(); ?
} catch (Exception e) { ?
System.out.println("顯示出錯。"); ?
e.printStackTrace(); ?
} ?
} ?
public static void main(String args[]) {
Dao dao = new Dao(); ?
dao.connSQL(); // 連接數(shù)據(jù)庫 ?
String s = "select * from users"; ?
String update = "update users set userPWD =20000 where userID= '10000'";
if (dao.updateSQL(update) == true) {
System.out.println("更新成功"); ?
ResultSet resultSet = dao.selectSQL(s); ?
dao.print(resultSet); ?
} ?
dao.deconnSQL(); // 關(guān)閉數(shù)據(jù)庫連接
} ?
} ?
來源地址: