java如何创建表
在Java中创建数据库表的方法
使用JDBC连接数据库并执行SQL语句创建表
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class CreateTableExample {
public static void main(String[] args) {
String url = "jdbc:mysql://localhost:3306/mydatabase";
String username = "root";
String password = "password";
try {
Connection connection = DriverManager.getConnection(url, username, password);
Statement statement = connection.createStatement();
String sql = "CREATE TABLE users (" +
"id INT PRIMARY KEY AUTO_INCREMENT," +
"username VARCHAR(50) NOT NULL," +
"email VARCHAR(100) UNIQUE," +
"created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP" +
")";
statement.executeUpdate(sql);
System.out.println("Table created successfully");
statement.close();
connection.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
使用Hibernate框架创建表
配置Hibernate实体类自动生成表结构
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name = "users")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String username;
private String email;
// Getters and setters
}
配置Hibernate属性文件自动创建表

# hibernate.cfg.xml或application.properties配置
hibernate.hbm2ddl.auto=update
hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
hibernate.connection.driver_class=com.mysql.jdbc.Driver
hibernate.connection.url=jdbc:mysql://localhost:3306/mydatabase
hibernate.connection.username=root
hibernate.connection.password=password
使用Spring Data JPA创建表
定义实体类并配置自动建表
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
@Entity
public class Product {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private String name;
private Double price;
// Getters and setters
}
在application.properties中配置

spring.datasource.url=jdbc:mysql://localhost:3306/mydatabase
spring.datasource.username=root
spring.datasource.password=password
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
使用MyBatis创建表
通过MyBatis映射文件执行建表SQL
<!-- mapper/TableMapper.xml -->
<mapper namespace="com.example.mapper.TableMapper">
<update id="createUserTable">
CREATE TABLE IF NOT EXISTS users (
id INT PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(50) NOT NULL,
email VARCHAR(100) UNIQUE
)
</update>
</mapper>
Java调用代码
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
public class MyBatisCreateTable {
public static void main(String[] args) {
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder()
.build(Resources.getResourceAsStream("mybatis-config.xml"));
try (SqlSession session = sqlSessionFactory.openSession()) {
session.update("com.example.mapper.TableMapper.createUserTable");
session.commit();
System.out.println("Table created successfully");
}
}
}






