Maison base de données tutoriel mysql java操作mysql数据库实例_MySQL

java操作mysql数据库实例_MySQL

May 27, 2016 pm 02:12 PM
java mysql public 接口 数据库

bitsCN.com

//接口类package com.syxy.dao;import com.syxy.domain.User;//操纵数据库的 dao接口public interface UserDao {       //加入一个用户       public void addUser(User user);       //得到一个用户       public User getUser( int userId);       //寻找一个用户       public User findUser(String loginName);       //更新用户数据       public void update(User user);       //删除一个用户       public void delete(User user);}//接口的实现类package com.syxy.dao.impl;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import com.syxy.dao.UserDao;import com.syxy.domain.User;import com.syxy.utils.jdbcUtils;public class UserDaoJdbcImpl implements UserDao {     @Override     public void addUser(User user) {          // TODO Auto-generated method stub          Connection conn = null;          PreparedStatement ps = null;          ResultSet rs = null;          try {               conn = jdbcUtils.getConnection();               String sql = "insert into user(name, birthday, monery) values(?,?,?)";               ps = conn.prepareStatement(sql);               ps.setString(1, user.getName());               ps.setDate(2, new java.sql.Date(user.getBirthday().getTime()));               ps.setFloat(3, user.getMoney());               ps.executeUpdate();          } catch (Exception e) {               e.printStackTrace();          }finally{               jdbcUtils.free(rs, ps, conn);          }     }     @Override     public User getUser(int userId) {          Connection conn = null;          PreparedStatement ps = null;          ResultSet rs = null;          User user = null;          try {               conn = jdbcUtils.getConnection();               String sql = "select id,name,money,birthday from user where id=?";               ps = conn.prepareStatement(sql);               ps.setInt(1, userId);               rs = ps.executeQuery();               while(rs.next()){                    user = MappingUser(rs);               }          } catch (Exception e) {               e.printStackTrace();          }finally{               jdbcUtils.free(rs, ps, conn);          }          return user;     }     @Override     public User findUser(String loginName) {          Connection conn = null;          PreparedStatement ps = null;          ResultSet rs = null;          User user = null;          try {               conn = jdbcUtils.getConnection();               String sql = "select id,money,birthday from user where name=?";               ps = conn.prepareStatement(sql);               ps.setString(1, loginName);               rs = ps.executeQuery();               while(rs.next()){                    user = MappingUser(rs);               }          } catch (Exception e) {               e.printStackTrace();          }finally{               jdbcUtils.free(rs, ps, conn);          }          return user;     }     private User MappingUser(ResultSet rs) throws SQLException {          User user = new User();          user.setId(rs.getInt("id"));          user.setName(rs.getString("name"));          user.setMoney(rs.getFloat("money"));          user.setBirthday(rs.getDate("birthday"));          return user;     }     @Override     public void update(User user) {          Connection conn = null;          PreparedStatement ps = null;          ResultSet rs = null;          try {               conn = jdbcUtils.getConnection();               String sql = "update user set name=?, birthday=?, money=? where id=?";               ps = conn.prepareStatement(sql);               ps.setString(1, user.getName());               ps.setDate(2, new java.sql.Date(user.getBirthday().getTime()));               ps.setFloat(3, user.getMoney());               ps.setInt(4, user.getId());               ps.executeUpdate();          } catch (Exception e) {               e.printStackTrace();          }finally{               jdbcUtils.free(rs, ps, conn);          }     }     @Override     public void delete(User user) {          Connection conn = null;          PreparedStatement ps = null;          ResultSet rs = null;          try {               conn = jdbcUtils.getConnection();               String sql = "delete from user where id=?";               ps = conn.prepareStatement(sql);               ps.setInt(1, user.getId());               ps.executeUpdate();          } catch (Exception e) {               e.printStackTrace();          }finally{               jdbcUtils.free(rs, ps, conn);          }     }}//domain用户类package com.syxy.domain;import java.util.Date;public class User {       private int id ;       private String name ;       private Date birthday ;       private float money ;             public int getId() {             return id ;      }       public void setId( int id) {             this .id = id;      }       public String getName() {             return name ;      }       public void setName(String name) {             this .name = name;      }       public Date getBirthday() {             return birthday ;      }       public void setBirthday(Date birthday) {             this .birthday = birthday;      }       public float getMoney() {             return money ;      }       public void setMoney( float money) {             this .money = money;      }  }//dao工厂类(方便复用)package com.syxy.dao;import java.io.File;import java.io.FileInputStream;import java.io.InputStream;import java.util.Properties;public class DaoFactory {       private static UserDao userDao = null ;       private static DaoFactory instance = new DaoFactory();             private DaoFactory(){             try {                  Properties prop = new Properties();                  InputStream inStream = new FileInputStream(                               new File("src/daoconfig.properties" ));                  prop.load(inStream);                  String userDaoClass = prop.getProperty("userDaoClass" );                   userDao = (UserDao) Class.forName(userDaoClass).newInstance();            } catch (Exception e) {                   // TODO: handle exception            }      }             public static DaoFactory getInstance(){             return instance ;      }             public UserDao getUserDao(){             return userDao ;      }}//操作数据库的工具类package com.syxy.utils;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public final class jdbcUtils {     private static String url = "jdbc:mysql://localhost:3306/jdbc";     private static String user = "root";     private static String password = "lxtalx";          private  jdbcUtils(){}     static{          try {               Class.forName("com.mysql.jdbc.Driver");          } catch (ClassNotFoundException e) {               throw new ExceptionInInitializerError(e);          }     }          public static Connection getConnection() throws SQLException{          return DriverManager.getConnection(url, user, password);     }          public static void free(ResultSet rs, Statement st, Connection conn){          try {               if(rs!=null)                     rs.close();          } catch (Exception e) {               e.printStackTrace();          }finally{               try {                    if(st!=null)                         st.close();               } catch (Exception e2) {                    e2.printStackTrace();               }finally{                    try {                         conn.close();                    } catch (Exception e3) {                         e3.printStackTrace();                    }               }          }     }}
Copier après la connexion


bitsCN.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
4 Il y a quelques semaines By DDD
Musée à deux points: toutes les expositions et où les trouver
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment corriger les erreurs mysql_native_password non chargé sur MySQL 8.4 Comment corriger les erreurs mysql_native_password non chargé sur MySQL 8.4 Dec 09, 2024 am 11:42 AM

L'un des changements majeurs introduits dans MySQL 8.4 (la dernière version LTS en 2024) est que le plugin « MySQL Native Password » n'est plus activé par défaut. De plus, MySQL 9.0 supprime complètement ce plugin. Ce changement affecte PHP et d'autres applications

Break or Return of Java 8 Stream Forach? Break or Return of Java 8 Stream Forach? Feb 07, 2025 pm 12:09 PM

Java 8 présente l'API Stream, fournissant un moyen puissant et expressif de traiter les collections de données. Cependant, une question courante lors de l'utilisation du flux est: comment se casser ou revenir d'une opération FOREAK? Les boucles traditionnelles permettent une interruption ou un retour précoce, mais la méthode Foreach de Stream ne prend pas directement en charge cette méthode. Cet article expliquera les raisons et explorera des méthodes alternatives pour la mise en œuvre de terminaison prématurée dans les systèmes de traitement de flux. Lire plus approfondie: Améliorations de l'API Java Stream Comprendre le flux Forach La méthode foreach est une opération terminale qui effectue une opération sur chaque élément du flux. Son intention de conception est

Programme Java pour trouver le volume de la capsule Programme Java pour trouver le volume de la capsule Feb 07, 2025 am 11:37 AM

Les capsules sont des figures géométriques tridimensionnelles, composées d'un cylindre et d'un hémisphère aux deux extrémités. Le volume de la capsule peut être calculé en ajoutant le volume du cylindre et le volume de l'hémisphère aux deux extrémités. Ce tutoriel discutera de la façon de calculer le volume d'une capsule donnée en Java en utilisant différentes méthodes. Formule de volume de capsule La formule du volume de la capsule est la suivante: Volume de capsule = volume cylindrique volume de deux hémisphères volume dans, R: Le rayon de l'hémisphère. H: La hauteur du cylindre (à l'exclusion de l'hémisphère). Exemple 1 entrer Rayon = 5 unités Hauteur = 10 unités Sortir Volume = 1570,8 unités cubes expliquer Calculer le volume à l'aide de la formule: Volume = π × r2 × h (4

Comment exécuter votre première application Spring Boot dans Spring Tool Suite? Comment exécuter votre première application Spring Boot dans Spring Tool Suite? Feb 07, 2025 pm 12:11 PM

Spring Boot simplifie la création d'applications Java robustes, évolutives et prêtes à la production, révolutionnant le développement de Java. Son approche "Convention sur la configuration", inhérente à l'écosystème de ressort, minimise la configuration manuelle, allo

Programme Java pour insérer un élément au bas d'une pile Programme Java pour insérer un élément au bas d'une pile Feb 07, 2025 am 11:59 AM

Une pile est une structure de données qui suit le principe LIFO (dernier dans, premier sorti). En d'autres termes, le dernier élément que nous ajoutons à une pile est le premier à être supprimé. Lorsque nous ajoutons (ou poussons) des éléments à une pile, ils sont placés sur le dessus; c'est-à-dire surtout

La page est vide après que PHP est connecté à MySQL. Quelle est la raison de la fonction Die () non valide? La page est vide après que PHP est connecté à MySQL. Quelle est la raison de la fonction Die () non valide? Apr 01, 2025 pm 03:03 PM

La page est vide après que PHP se connecte à MySQL, et la raison pour laquelle la fonction Die () échoue. Lorsque vous apprenez la connexion entre PHP et la base de données MySQL, vous rencontrez souvent des choses déroutantes ...

Comparaison de deux ArrayList en Java Comparaison de deux ArrayList en Java Feb 07, 2025 pm 12:03 PM

Ce guide explore plusieurs méthodes Java pour comparer deux listes de table. Une comparaison réussie nécessite que les deux listes aient la même taille et contiennent des éléments identiques. Méthodes pour comparer les listes d'arraises en Java Plusieurs approches existent pour comparer AR

Programme Java pour trier les éléments d'une pile donnée dans l'ordre croissant Programme Java pour trier les éléments d'une pile donnée dans l'ordre croissant Feb 07, 2025 am 11:34 AM

Ce tutoriel vous guidera comment trier les éléments de pile dans l'ordre croissant à l'aide de Java. Les piles sont les structures de données de base en informatique, en suivant le dernier principe de la première place (LIFO). Nous décomposons une méthode simple et efficace qui utilise une pile temporaire supplémentaire, fournit des instructions détaillées étape par étape et comprend un exemple de code complet. Ce tutoriel est idéal pour ceux qui souhaitent améliorer leur compréhension des opérations de pile et améliorer leurs compétences en programmation Java. Triez la pile dans l'ordre croissant en utilisant Java La pile est comme une pile de livres, vous ne pouvez prendre le haut. Autrement dit, la pile est stockée en mode First-Out (LIFO). Le dernier élément ajouté est le premier élément supprimé. Ce qui suit est le tri des éléments de pile à l'aide de la pile auxiliaire

See all articles