java数据库为什么要建表(Java Web 项目,数据库建表)
大家好,关于java数据库为什么要建表很多朋友都还不太明白,今天小编就来为大家分享关于Java Web 项目,数据库建表的知识,希望对各位有所帮助!
java 学习中,为什么需要数据库
学习都可以,
实际工作中看项目需要来定数据库类型,
管理系统、普通网站,使用mysql,
大型项目、互联网开发,数据量大,选择oracle,
如果,你需要的系统,对数据库的事物要求不高,同时,支持高并发,可处理大量数据的更新、查询,诸如web2.0网站类的开发,此时,选择Nosql之类的数据库最为合适,如mongoDb等。
在Java中建立Oracle数据库表怎么建啊
下面是用JAVA通过JDBC连接 Oracle的步骤
希望对你有帮助
(1)装载并注册数据库的JDBC驱动程序
载入JDBC驱动:
Class.forName("oracle.jdbc.driver.OracleDriver");
注册JDBC驱动:
java.sql.DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
(2)建立与数据库的连接
要建立与数据库的连接,首先要创建指定数据库的URL。连接数据库的URL对象,利用DriverManager的getConnection方法建立的。数据库URL对象与网络资源的统一资源定位类似,其构成格式如下:
jdbc:subProtocol:subName://hostname:port;DatabaseName=ⅹⅹⅹ
其中:
jdbc表示当前通过Java的数据库连接进行数据库访问;
subProtocol表示通过某种驱动程序支持的数据库连接机制;
subName表示在当前连接机制下的具体名称;
hostname表示主机名;
port表示相应的连接端口;
DatabaseName表示要连接的数据库的名称。
这里以与Oracle数据库的连接为例:
连接Oracle 8/8i/9i数据库(用thin模式)
url= jdbc:oracle:thin:@hostip:1521:oracleSID;
注意:hostip指主机的ip地址,oracleSID指数据库的SID。
再者确定连接数据库的用户名与密码,即user和password的值:
user=“ⅹⅹⅹ“;
password=“ⅹⅹⅹ“;
最后使用如下语句:
Connection con=java.sql.DriverManager.getConnection(url,user,password);
(3)创建Statement对象
例如:
Statement stmt= con.createStatement();
(4)调用并执行SQL语句
例如:
String sql=“select a,b,c from table1";//table1为你所要查询的表名,a,b,c为所要查询的字段
ResultSet rs= stmt.executeQuery(sql);
(5)访问ResultSet中的记录集并从中取出记录
例如:
rs.next();
rs.absolute(4);
String col1=rs.getString(1);
……..
(6)依次关闭ResultSet、Statement和Connection对象
例如:
rs.close();
stmt.close();
con.close();
Java Web 项目,数据库建表
Java使用executeUpdate向数据库中创建表格
一、创建mysql.ini文件,配置如下
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/select_test
user=root
pass=123456
这样以后修改数据库的配置直接在mysql.ini文件中修改。
二、编写代码
initParam方法:获得mysql.ini中的数据
createTale方法:连接数据库,并且executeUpdate执行sql语句。此例的sql文件为创建表语句。
main方法:传入Sql语句。
class ExecuteDDL{
private String driver;
private String url;
private String user;
private String pass;
Connection conn;
Statement stmt;
public void initParam(String paramFile) throws Exception{
Properties props= new Properties();
props.load(new FileInputStream(paramFile));
driver= props.getProperty("driver");
url= props.getProperty("url");
user= props.getProperty("user");
pass= props.getProperty("pass");
}
public void createTale(String sql) throws Exception{
try{
Class.forName(driver);
conn= DriverManager.getConnection(url,user,pass);
stmt= conn.createStatement();
stmt.executeUpdate(sql);
}
finally
{
if(stmt!= null){
stmt.close();
}
if(conn!= null){
conn.close();
}
}
}
/**
*@param args
*@throws Exception
*/
public static void main(String[] args) throws Exception{
// TODO Auto-generated method stub
ExecuteDDL ed= new ExecuteDDL();
ed.initParam("src/mysql.ini");
ed.createTale("create table student"+
"(id int,"+
"name varchar(50),"+
"num varchar(20))");
System.out.println("Creating table success!");
}
注意事项:传入的Sql语句最好在MySql测试通过,并且传入的mysql.int文件的路径必须正确。
当执行完毕后,在MySql的select_test数据库中查看该Student表是否已经创建成功了。
三、使用executeUpdate方法,向表中插入数据。
将上面的创建表的Sql语句改为插入数据表的语句,执行executeUpdate方法,其结果就是想表中插入数据。
创建insertSql变量。
private static String insertSql="insert into student values(1,'XiaoMing','06108787')";
执行插入语句。
ed.createTale(insertSql);
...映射回来以后手动改成了java.lang.String 为什么
Hibernate基本类型名(比如:integer, string, character,date, timestamp, float, binary, serializable, object, blob)。
一个Java类的名字,这个类属于一种默认基础类型(比如: int, float,char, java.lang.String, java.util.Date, java.lang.Integer, java.sql.Clob)。
一个可以序列化的Java类的名字。
一个自定义类型的类的名字。(比如: com.illflow.type.MyCustomType)。
基本值类型(Hibernate内建立自己的类型,从java转化成数据库类型)
string
从java.lang.String到 VARCHAR(或者 Oracle的 VARCHAR2)的映射。
date, time, timestamp
从java.util.Date和其子类到SQL类型DATE, TIME和TIMESTAMP(或等价类型)的映射。
calendar, calendar_date
从java.util.Calendar到SQL类型TIMESTAMP和 DATE(或等价类型)的映射。
big_decimal, big_integer
从java.math.BigDecimal和java.math.BigInteger到NUMERIC(或者 Oracle的NUMBER类型)的映射。
locale, timezone, currency
从java.util.Locale, java.util.TimeZone和java.util.Currency到VARCHAR(或者 Oracle的VARCHAR2类型)的映射. Locale和 Currency的实例被映射为它们的ISO代码。TimeZone的实例被影射为它的ID。
class
从java.lang.Class到 VARCHAR(或者 Oracle的VARCHAR2类型)的映射。Class被映射为它的全限定名。
binary
把字节数组(byte arrays)映射为对应的 SQL二进制类型。
text
把长Java字符串映射为SQL的CLOB或者TEXT类型。
serializable
把可序列化的Java类型映射到对应的SQL二进制类型。你也可以为一个并非默认为基本类型的可序列化Java类或者接口指定Hibernate类型serializable。
clob, blob
JDBC类 java.sql.Clob和 java.sql.Blob的映射。某些程序可能不适合使用这个类型,因为blob和clob对象可能在一个事务之外是无法重用的。(而且,驱动程序对这种类型的支持充满着补丁和前后矛盾。)
OK,关于java数据库为什么要建表和Java Web 项目,数据库建表的内容到此结束了,希望对大家有所帮助。