executeQuery() 实现什么功能?

使用JDBC连接数据库需要4步:
1、加载驱动程序;
2、连接数据库;
3、访问数据库;
4、执行查询;要用statement类的executeQuery()方法来下达select指令以查询数据库,executeQuery()方法会把数据库响应的查询结果存放在ResultSet类对象中供我们使用。即语句:ResultSet rs=s.executeQuery(sql);

  • 47
    点赞
  • 115
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
好的,下面是一个简单的 JavaWeb 分层实现注册功能的案例: 首先,我们需要创建一个 User 实体类,保存用户信息: ```java public class User { private int id; private String username; private String password; private String email; // 省略 getter 和 setter 方法 } ``` 接着,我们创建一个 UserDao 接口,定义增删改查等操作: ```java public interface UserDao { // 添加用户 void addUser(User user) throws SQLException; // 根据用户名查找用户 User findUserByUsername(String username) throws SQLException; // 根据邮箱查找用户 User findUserByEmail(String email) throws SQLException; } ``` 然后,我们创建一个 UserDaoImpl 类,实现 UserDao 接口,实现具体的操作: ```java public class UserDaoImpl implements UserDao { // 获取数据库连接 private Connection getConnection() throws SQLException { // ... } @Override public void addUser(User user) throws SQLException { String sql = "INSERT INTO users (username, password, email) VALUES (?, ?, ?)"; try (Connection conn = getConnection(); PreparedStatement pstmt = conn.prepareStatement(sql)) { pstmt.setString(1, user.getUsername()); pstmt.setString(2, user.getPassword()); pstmt.setString(3, user.getEmail()); pstmt.executeUpdate(); } } @Override public User findUserByUsername(String username) throws SQLException { String sql = "SELECT * FROM users WHERE username = ?"; try (Connection conn = getConnection(); PreparedStatement pstmt = conn.prepareStatement(sql)) { pstmt.setString(1, username); try (ResultSet rs = pstmt.executeQuery()) { if (rs.next()) { User user = new User(); user.setId(rs.getInt("id")); user.setUsername(rs.getString("username")); user.setPassword(rs.getString("password")); user.setEmail(rs.getString("email")); return user; } else { return null; } } } } @Override public User findUserByEmail(String email) throws SQLException { // 和 findUserByUsername 类似 } } ``` 最后,我们创建一个 UserService 类,调用 UserDao 的方法完成注册功能: ```java public class UserService { private UserDao userDao = new UserDaoImpl(); public void register(User user) throws SQLException { // 判断用户名是否已存在 User u = userDao.findUserByUsername(user.getUsername()); if (u != null) { throw new IllegalArgumentException("用户名已存在"); } // 判断邮箱是否已存在 u = userDao.findUserByEmail(user.getEmail()); if (u != null) { throw new IllegalArgumentException("邮箱已被注册"); } // 添加用户 userDao.addUser(user); } } ``` 这样,我们就完成了一个简单的 JavaWeb 分层实现注册功能的案例。需要注意的是,这里的数据库连接等细节并没有完全实现,需要根据实际情况进行调整。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值