JDBCDAO优化
DAO(Data Access Object)数据访问对象是一个数据访问接口,处理业务逻辑与数据库资源之间的关系。 DAO由两部分组成: 1.Data Access:数据访问,实现数据访问与业务逻辑的分离。 2.Action Domain Object:领域对象,业务数据对象的封装。 DAO模式的实现: 1.DA
DAO(Data Access Object)数据访问对象是一个数据访问接口,处理业务逻辑与数据库资源之间的关系。
DAO由两部分组成:
1.Data Access:数据访问,实现数据访问与业务逻辑的分离。
2.Action Domain Object:领域对象,业务数据对象的封装。
DAO模式的实现:
1.DAO的工厂类:构造DAO的实例对象。
2.DAO的接口:提供接口抽象方法,引导子类实现。
3.DAO的实现子类:实现接口方法。
4.数据对象:封装数据。
DAO包下面分4个包:
1.dao包:存放抽象接口的方法。
2.dao.impl包:存放实现子类的方法。
3.pojo包:存放封装的数据信息。
4.util包:存放工厂类。
代码实现:
父类接口:
public interface TeacherDao {//父类接口 public boolean insert(Teacherpojo tea) throws Exception; public boolean delete(int id) throws Exception; public boolean update(Teacherpojo tea) throws Exception; public List<teacherpojo> query() throws Exception; public Teacherpojo queryById(int id) throws Exception; }</teacherpojo>
具体实现语句预制的方法:
public static int update(String sql,Object...objects) throws Exception { Connection con = SQLUtil.getConnection();//获取连接 PreparedStatement ps = con.prepareStatement(sql);//获取预制对象 for (int i=0;i<objects.length ps.setobject objects return ps.executeupdate><br> <br> <br> 子类实现(添加一条数据): <p><span style="font-size:24px"></span></p> <pre name="code" class="java">public boolean insert(Teacherpojo tea) throws Exception { String sql = "insert into teacher (id,name,gender,age,job,creatDate) " + "values(?,?,?,?,?,?)"; int result = SQLTemplete.update(sql, tea.getId(),tea.getName(), tea.getGender(),tea.getAge(),tea.getJob(),tea.getCreatdate()); System.out.println("执行完成..."); if(result > 0){ return true; } return false; }
结果图示:
删除一条数据:
public boolean delete(int id) throws Exception { String sql = "delete from teacher where id=?"; int result = SQLTemplete.update(sql, id); System.out.println("执行完成..."); if( result > 0 ){ return true; } return false; }
删除结果图示:
修改一条数据:
public boolean update(Teacherpojo tea) throws Exception { String sql = "update teacher set " + "id=?,name=?,gender=?,age=?,job=?,creatDate=? where id=?"; int result = SQLTemplete.update(sql, tea.getId(),tea.getName(),tea.getGender(), tea.getAge(),tea.getJob(),tea.getCreatdate(),tea.getId()); System.out.println("执行完成..."); if( result > 0 ){ return true; } return false; }
添加结果图示:
查找所有的数据,返回一个数据队列:
public ArrayList<teacherpojo> query() throws SQLException { Connection con = SQLUtil.getConnection(); Statement state = con.createStatement(); String sql = "select * from teacher"; ResultSet rs = state.executeQuery(sql); ArrayList<teacherpojo> list = new ArrayList<teacherpojo>(); Teacherpojo tp ; while(rs.next()){ tp = new Teacherpojo(); tp.setId(rs.getInt("id")); tp.setName(rs.getString("name")); tp.setAge(rs.getInt("age")); tp.setGender(rs.getString("gender")); tp.setJob(rs.getString("job")); tp.setCreatdate(rs.getString("creatDate")); list.add(tp); } System.out.println("执行完成..."); return list; }</teacherpojo></teacherpojo></teacherpojo>
结果图示:
很多时候并不是要查询所有的结果,要的是部分条件查询结果,所有可以写一个预制查找的方法,代码如下:
public static ResultSet query(String sql,Object...objects) throws Exception{ Connection con = SQLUtil.getConnection(); PreparedStatement ps = con.prepareStatement(sql); for (int i = 0; i <br> 结果图示,我只搜索关于gender为man的数据: <p><span style="font-size:24px"><img src="/static/imghw/default1.png" data-src="http://img.blog.csdn.net/20160506200506812?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" class="lazy" alt=""><br> </span></p> <p><span style="font-size:24px"><br> </span></p> <p><span style="font-size:24px"><br> </span></p> <p><span style="font-size:24px"><br> </span></p> <p><span style="font-size:24px"><br> </span></p>

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Deepseek kann Dateien nicht direkt in PDF konvertieren. Abhängig vom Dateityp können Sie verschiedene Methoden verwenden: gemeinsame Dokumente (Word, Excel, PowerPoint): Verwenden Sie Microsoft Office, LibreOffice und andere Software, um als PDF zu exportieren. Bild: Speichern Sie als PDF mithilfe von Image Viewer oder Bildverarbeitungssoftware. Webseiten: Verwenden Sie die Funktion des Browsers "Into PDF" oder die dedizierte Webseite zum PDF -Tool. Ungewöhnliche Formate: Finden Sie den richtigen Konverter und konvertieren Sie ihn in PDF. Es ist wichtig, die richtigen Tools auszuwählen und einen Plan zu entwickeln, der auf der tatsächlichen Situation basiert.

Die Zeitkomplexität misst die Ausführungszeit eines Algorithmus im Verhältnis zur Größe der Eingabe. Zu den Tipps zur Reduzierung der Zeitkomplexität von C++-Programmen gehören: Auswahl geeigneter Container (z. B. Vektor, Liste) zur Optimierung der Datenspeicherung und -verwaltung. Nutzen Sie effiziente Algorithmen wie die schnelle Sortierung, um die Rechenzeit zu verkürzen. Eliminieren Sie mehrere Vorgänge, um Doppelzählungen zu reduzieren. Verwenden Sie bedingte Verzweigungen, um unnötige Berechnungen zu vermeiden. Optimieren Sie die lineare Suche, indem Sie schnellere Algorithmen wie die binäre Suche verwenden.

Vor kurzem hat „Black Myth: Wukong“ weltweit große Aufmerksamkeit erregt. Die Anzahl der gleichzeitigen Online-Benutzer auf jeder Plattform hat einen neuen Höchststand erreicht. Dieses Spiel hat auf mehreren Plattformen große kommerzielle Erfolge erzielt. Die Xbox-Version von „Black Myth: Wukong“ wurde verschoben. Obwohl „Black Myth: Wukong“ auf PC- und PS5-Plattformen veröffentlicht wurde, gibt es keine konkreten Neuigkeiten zur Xbox-Version. Es wird davon ausgegangen, dass der Beamte bestätigt hat, dass „Black Myth: Wukong“ auf der Xbox-Plattform veröffentlicht wird. Der genaue Starttermin wurde jedoch noch nicht bekannt gegeben. Kürzlich wurde berichtet, dass die Verzögerung der Xbox-Version auf technische Probleme zurückzuführen sei. Laut einem relevanten Blogger erfuhr er aus der Kommunikation mit Entwicklern und „Xbox-Insidern“ während der Gamescom, dass die Xbox-Version von „Black Myth: Wukong“ existiert.

Lösen Sie das Problem der Schnittstelle zwischen Drittanbietern, die 403 in der Node.js-Umgebung zurückgeben. Wenn wir Node.js verwenden, um Schnittstellen von Drittanbietern aufzurufen, begegnen wir manchmal einen Fehler von 403 von der Schnittstelle, die 403 zurückgibt ...

Die Auswirkungen des Austauschs von Redis -Verbindungen im Laravel -Framework und der Auswahl von Methoden bei Verwendung von Laravel -Framework und Redis können Entwickler auf ein Problem stoßen: Durch Konfiguration ...

Strategien zur Optimierung des C++-Serverdurchsatzes: Thread-Pool: Erstellen Sie im Voraus einen Thread-Pool, um schnell auf Anfragen zu reagieren. Nicht blockierende E/A: Führen Sie andere Aufgaben aus, während Sie auf E/A warten, um den Durchsatz zu verbessern. HTTP/2: Verwendet ein Binärprotokoll, unterstützt Multiplexing und Inhaltskomprimierung und verbessert die Leistung.

Der Vorteil des Multithreading besteht darin, dass es die Leistung und die Ressourcenauslastung verbessern kann, insbesondere für die Verarbeitung großer Datenmengen oder die Durchführung zeitaufwändiger Vorgänge. Es ermöglicht es, mehrere Aufgaben gleichzeitig auszuführen, wodurch die Effizienz verbessert wird. Zu viele Threads können jedoch zu einer Leistungsverschlechterung führen. Sie müssen daher sorgfältig die Anzahl der Threads basierend auf der Anzahl der CPU -Kerne und Aufgabenmerkmale auswählen. Darüber hinaus beinhaltet die Multi-Thread-Programmierung Herausforderungen wie Deadlock- und Rassenbedingungen, die unter Verwendung von Synchronisationsmechanismen gelöst werden müssen, und erfordern solide Kenntnisse über die gleichzeitige Programmierung, das Abwägen der Vor- und Nachteile und die Verwendung mit Vorsicht.

So vermeiden Sie die Schnittstelle von Drittanbietern, die 403 Fehler in der Knotenumgebung zurückgibt. Wenn Sie die Website von Drittanbietern mithilfe von node.js aufrufen, stoßen Sie manchmal auf das Problem der Rückgabe von 403-Fehler. � ...
