Java与MySQL的结合,可以使Java应用程序能够轻松地与MySQL数据库进行交互,实现数据的存储、查询、更新等操作。以下是一个使用Java连接MySQL数据库的示例:
import java.sql.*;
public class Main {
public static void main(String[] args) {
// 加载MySQL JDBC驱动
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
System.out.println("未找到MySQL JDBC驱动!");
e.printStackTrace();
}
// 建立数据库连接
Connection conn = null;
try {
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "password");
} catch (SQLException e) {
System.out.println("建立数据库连接失败!");
e.printStackTrace();
}
// 执行SQL语句
try {
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM users");
while (rs.next()) {
System.out.println(rs.getString("name"));
}
} catch (SQLException e) {
System.out.println("执行SQL语句失败!");
e.printStackTrace();
}
// 关闭数据库连接
try {
conn.close();
} catch (SQLException e) {
System.out.println("关闭数据库连接失败!");
e.printStackTrace();
}
}
}
Spring框架结合Java和MySQL,可以使开发人员更加便捷地实现数据访问层的编写,减少了重复的模板代码。以下是一个使用Spring框架实现MySQL数据库的数据访问层的示例:
import org.springframework.jdbc.core.JdbcTemplate;
public class UserDao {
private JdbcTemplate jdbcTemplate;
public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
this.jdbcTemplate = jdbcTemplate;
}
public User findById(int id) {
String sql = "SELECT * FROM users WHERE id = ?";
return jdbcTemplate.queryForObject(sql, new Object[] {id}, new UserRowMapper());
}
}
public class UserRowMapper implements RowMapper<User> {
public User mapRow(ResultSet rs, int rowNum) throws SQLException {
User user = new User();
user.setId(rs.getInt("id"));
user.setName(rs.getString("name"));
user.setAge(rs.getInt("age"));
return user;
}
}
以上这个示例中,大家通过Spring框架的JdbcTemplate简化了Java与MySQL交互的过程,同时使用了Spring框架提供的数据映射机制,使得代码更加清晰、简洁。