JavaWeb之JavaBean

九、JavaBean

实体类
JavaBean有特定的写法:
①必须要有一个无参构造
②属性必须私有化
③必须有对应的get/set方法;
一般用来和数据库的字段做映射 ORM;
ORM:对象关系映射
①表——>类
②字段——>属性
③行记录——>对象
Person.java:

package com.ping.pojo;
//实体类一般都是和数据库中的表结构一一对应
public class People {
  private int id;
  private String name;
  private int age;
  private String address;
  public People() {
  }
  public People(int id,String name,int age,String address) {
    this.id = id;
    this.name = name;
    this.age = age;
    this.address = address;
  }
  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 int getAge() {
    return age;
  }
  public void setAge(int age) {
    this.age = age;
  }
  public String getAddress() {
    return address;
  }
  public void setAddress(String address) {
    this.address = address;
  }
  @Override
  public String toString() {
    return "People{"+
              "id="+id+
              ",name='"+name+'\''+
              ",age="+age+
              ",address='"+address+'\''+
              '}';
  }
}

创建对应的数据库中的表。
对应的数据库中的表

<%
  //People people = new People();
  //people.setAddress();
  //people.setId();
  //people.setAge();
  //people.setName();
%>
<jsp:useBean id="people" class="com.ping.pojo.People" scope="page" />
<jsp:setProperty name="people" property="address" value="南京"/>
<jsp:setProperty name="people" property="id" value="1"/>
<jsp:setProperty name="people" property="age" value="20"/>
<jsp:setProperty name="people" property="name" value="ping"/>
<%-- <%=people.getAddress()%> --%>
姓名:<jsp:getProperty name="people" property="name"/>
年龄:<jsp:getProperty name="people" property="age"/>
序号:<jsp:getProperty name="people" property="id"/>
地址:<jsp:getProperty name="people" property="address"/>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
首先,我们需要在Java创建一个User作为JavaBean,该应该包含以下属性: ```java public class User { private int id; private String name; private String email; private String password; // 其他属性 // 构造方法 public User() {} public User(int id, String name, String email, String password) { this.id = id; this.name = name; this.email = email; this.password = password; } // Getter 方法和 Setter 方法 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 String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } // toString 方法 @Override public String toString() { return "User{" + "id=" + id + ", name='" + name + '\'' + ", email='" + email + '\'' + ", password='" + password + '\'' + '}'; } } ``` 在此基础上,我们可以使用JDBC连接数据库,并在Java创建一个UserDao来操作数据库的用户数据,以下是UserDao的示例代码: ```java import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; public class UserDao { private Connection connection; // 构造方法 public UserDao(Connection connection) { this.connection = connection; } // 添加用户 public void addUser(User user) throws SQLException { String sql = "INSERT INTO user (name, email, password) VALUES (?, ?, ?)"; PreparedStatement statement = connection.prepareStatement(sql); statement.setString(1, user.getName()); statement.setString(2, user.getEmail()); statement.setString(3, user.getPassword()); statement.executeUpdate(); } // 根据ID获取用户 public User getUserById(int id) throws SQLException { String sql = "SELECT * FROM user WHERE id = ?"; PreparedStatement statement = connection.prepareStatement(sql); statement.setInt(1, id); ResultSet resultSet = statement.executeQuery(); if (resultSet.next()) { String name = resultSet.getString("name"); String email = resultSet.getString("email"); String password = resultSet.getString("password"); User user = new User(id, name, email, password); return user; } return null; } // 根据Email获取用户 public User getUserByEmail(String email) throws SQLException { String sql = "SELECT * FROM user WHERE email = ?"; PreparedStatement statement = connection.prepareStatement(sql); statement.setString(1, email); ResultSet resultSet = statement.executeQuery(); if (resultSet.next()) { int id = resultSet.getInt("id"); String name = resultSet.getString("name"); String password = resultSet.getString("password"); User user = new User(id, name, email, password); return user; } return null; } // 获取所有用户 public List<User> getAllUsers() throws SQLException { List<User> users = new ArrayList<>(); String sql = "SELECT * FROM user"; PreparedStatement statement = connection.prepareStatement(sql); ResultSet resultSet = statement.executeQuery(); while (resultSet.next()) { int id = resultSet.getInt("id"); String name = resultSet.getString("name"); String email = resultSet.getString("email"); String password = resultSet.getString("password"); User user = new User(id, name, email, password); users.add(user); } return users; } // 更新用户信息 public void updateUser(User user) throws SQLException { String sql = "UPDATE user SET name = ?, email = ?, password = ? WHERE id = ?"; PreparedStatement statement = connection.prepareStatement(sql); statement.setString(1, user.getName()); statement.setString(2, user.getEmail()); statement.setString(3, user.getPassword()); statement.setInt(4, user.getId()); statement.executeUpdate(); } // 删除用户 public void deleteUser(int id) throws SQLException { String sql = "DELETE FROM user WHERE id = ?"; PreparedStatement statement = connection.prepareStatement(sql); statement.setInt(1, id); statement.executeUpdate(); } } ``` 上述代码包含了添加用户、根据ID和Email获取用户、获取所有用户、更新用户信息以及删除用户等操作。在实际开发,我们可以根据需要自定义UserDao的方法来操作数据库的用户数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值