java做数据库
java连接数据库主要用的是jdbc。
在你指定jdbc的时候需要指定连接字符串。
对于数据库的不同连接字符串的格式不同。
但是目前发现jdbc连接数据库都是指定库名称的。比如mysql会指定。oracle会指定。sqlserver也会指定。可能是为了安全期间数据库开发商没有提供此类不用指定库名就连接上的方法,主要是为了安全数据库的安全。个人想法。
目前java连接数据库动态建表是没有问题的。只要是标准的sql92语法的都能实现与执行。 但是好像sql92没有定义如何建库的语句吧。
还有你需要先确定表和库的概念。。 表的合集是库。。。
② java数据库是什么
是个学生吧,还没有系统的学习:
1、Java是一门编程语言,为的实现如何连接客户与数据,之间的一种连接工具,你可以这么理解,你想要图书馆里面的所有的图书,查找某个资料,没有编程语言做的变成系统,你只能够通过自己去图书馆一本一本的去翻,去找。有了编程语言,就可以专门的做出一个查询系统,这个系统将所有的图书的内容都融汇到一个地方,然后通过你用Java编写的查询系统,进行查找想要的资料,就是电子化,这样同时可以提供给更多的人去查找,也给更多的人省去了,单独查找的时间。编程语言就是做这个的。
2、数据库是做什么的呢:
在上面我们提到了,就是把所有的书的内容都放置到一个地方,而数据库就是进行存放这个书籍内容的地方,有了数据库,我们可以更好的去管理书籍里面的内容,进行改写,进行备份,进行整理。在一个企业里面:三分管理 七分技术 十二分数据,其实人们最注重的是数据的积累。一家银行,有多少个客户,客户都各自存储了多少钱,什么时候存储的。它并不关心你这系统是什么东西,它只想通过你的系统继续操作里面的数据。数据库就是这个作用。
3、话又说回来了,就是存储数据,你完全可以用记事本,excel表格,或者自己随便的定义一种东西进行存储,但是,当级别达到几千,几万,几十万,几百万,几千万,几亿,你如何去存储,用什么东西进行查询历史的数据,如果你真的有本事能够做到查询的速度性,安全性以及便于管理性,你可以完全不用数据库,当然目前世界上还没有人能够弄成,能弄成的几个公司就是现在的数据库公司:oracle,db2等等
不知你是否明白,希望对你有帮助。
以上回答你满意么?
③ 做java程序员数据库需要学多好
1、如果是java的web程序员,你就必须要学习数据库知识,至少要了解如何写sql,建表,表之间的关系。
2、如果是java做工具,可以不了解数据库,学好java基础知识。
3、i码邦是java入门学习的好帮手,i码邦--手机上的java编程神器,碎片时间,分分钟搞定一切java问题。。随时随地,学java,写java,大神在线,解答一切java问题。。
④ java镎崭綔鏁版嵁搴撶殑鏂瑰纺链夊摢浜
JDBC鏄痡ava鏁版嵁搴撹繛鎺ユ妧链镄勭亩绉,瀹冩彁渚涗简杩炴帴钖勭嶆暟鎹搴撶殑鑳藉姏,杩欎究浣跨▼搴忕殑鍙缁存姢镐у拰鍙镓╁𪾢镐уぇ澶х殑鎻愰珮浜.JDBC杩炴帴鏁版嵁搴揿父瑙佺殑椹卞姩鏂瑰纺链変袱绉,涓绉嶆槸jdbc-odbc鍗虫ˉ杩炲彟澶栦竴绉嶆槸绾痡ava椹卞姩.涓鑸鍦ㄥ仛java寮鍙戠殑镞跺欑敤绗浜岀.so鍓崭竴绉嶆垜灏变笉璇翠简,绾痡ava椹卞姩鏂瑰纺杩炴帴姝ラゅ备笅:
1.鍏堟妸涓涓猨dbc镄刯ar鍖呭煎叆鍒伴”鐩(鐢∕yEclipse寮鍙)镄刲ib涓.
2.浠g爜濡备笅:
[c-sharp]view plain
importjava.sql.*;
/**
*杩炴帴鏁版嵁搴揿府锷╃被
*@authorAdministrator
*
*/
publicclassBaseDao{
="com.microsoft.sqlserver.jdbc.SQLServerDriver";
privatestaticfinalStringURL="jdbc:sqlserver://localhost:1433;DatabaseName=LibraryManageSystem";
="sa";
="sa";
/**
*杩炴帴鏁版嵁搴
*@return鏁版嵁搴撹繛鎺ュ硅薄
*@throwsClassNotFoundException
*@throwsSQLException
*/
publicConnectiongetConn()throwsClassNotFoundException,SQLException{
Class.forName(DRIVER);
Connectionconn=DriverManager.getConnection(URL,USERNAME,PASSWORD);
returnconn;
}
/**
*閲婃斁璧勬簮
*@paramconn
*@parampstmt
*@paramrs
*@throwsSQLException
*/
publicvoidcloseAll(Connectionconn,PreparedStatementpstmt,ResultSetrs)throwsSQLException{
if(rs!=null){
rs.close();
}
if(pstmt!=null){
pstmt.close();
}
if(conn!=null){
conn.close();
}
}
/**
*镓ц孲QL璇鍙ワ纴鍙浠ヨ繘琛屽炪佸垹銆佹敼镄勬搷浣
*@paramsql
*@return褰卞搷𨱒℃暟
*@throwsClassNotFoundException
*@throwsSQLException
*/
publicintexecuteSQL(Stringsql)throwsClassNotFoundException,SQLException{
Connectionconn=this.getConn();
PreparedStatementpstmt=conn.prepareStatement(sql);
intnumber=pstmt.executeUpdate();
this.closeAll(conn,pstmt,null);
returnnumber;
}
}
<Resourcename="jdbc/book"auth="Container"type="javax.sql.DataSource"
maxActive="100"maxIdle="20"maxWait="100"username="sa"password="sa"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://localhost:1433;dataBaseName=book"
/>鍦╟onfig.xml鏂囦欢涓锷犲叆Resource镙囩,铹跺悗瀵规暟鎹搴扑俊鎭杩涜岄厤缃,褰撶劧杩欎釜鏁版嵁搴撴寚镄勪篃鏄痵qlserver链夌枒闂鍙浠qq757966892镵旂郴
packageweb.login.;
importjava.sql.Connection;
importjava.sql.PreparedStatement;
importjava.sql.ResultSet;
importjavax.naming.Context;
importjavax.naming.InitialContext;
importjavax.sql.DataSource;
publicclassBaseDao{
protectedConnectionconn;
protectedPreparedStatementps;
protectedResultSetrs;
protectedStringsql;
publicConnectiongetConn(){
try{
Contextcontext=newInitialContext();
DataSourceds=(DataSource)context.lookup("java:comp/env/jdbc/user");
returnds.getConnection();
}catch(Exceptione){
e.printStackTrace();
returnnull;
}
}
publicvoidcloseAll(Connectionconn,PreparedStatementps,ResultSetrs){
try{
if(rs!=null){
rs.close();
rs=null;
}
if(ps!=null){
ps.close();
ps=null;
}
if(conn!=null){
conn.close();
conn=null;
}
}catch(Exceptione){
e.printStackTrace();
}
}
}
- 涔嫔悗渚垮彲浠ュ缓绔嬩笟锷$被浠庤屽规暟鎹搴撹繘琛屾搷浣.
浠庝唬镰佺煡阆挞栧厛钖jdbc椹卞姩绫昏呰浇java铏氭嫙链轰腑,鍗矫lass.forName(DRIVER);鍏舵″姞杞介┍锷ㄥ苟寤虹珛浜庢暟鎹搴撶殑杩炴帴Connection conn = DriverManager.getConnection(URL,USERNAME,PASSWORD);;铹跺悗鍙戦丼QL璇鍙ュ苟镄勫埌缁撴灉闆.涔嫔悗澶勭悊缁撴灉,链钖庤佸叧闂鏁版嵁搴撶殑杩炴帴,閲婃斁璧勬簮.褰撶劧鎴戣寸殑杩欐牱杩炴帴鏁版嵁搴撶殑鏂瑰纺浣跨敤镄勮蒋浠舵槸sql鍜孧yEclipse.
浣跨敤閰岖疆鏂囦欢𨱒ヨ繛鎺ユ暟鎹搴,褰撶劧杩欐牱镄勮繛鎺ラ渶瑕佽繘琛屼竴浜涢厤缃.鍏跺疄杩欐牱镄勮繛鎺ョ敤涓扑笟链璇𨱒ヨ村氨鏄杩炴帴姹,杩炴帴姹犳槸璐熻矗鍒嗛厤绠$悊鍜岄喷鏀炬暟鎹搴撹繛鎺.瀹冨厑璁哥敤鐢ㄧ▼搴忛吨澶崭娇鐢ㄤ竴涓鐜版湁镄勬暟鎹搴撹繛鎺ヤ笉鍐嶉吨澶嶅缓绔嬭繛鎺.閲婃斁绌洪棽镞堕棿瓒呰繃链澶х┖闂叉椂闂寸殑鏁版嵁搴撹繛鎺ヤ互阆垮厤锲犱负娌℃湁閲婃斁鏁版嵁搴撹屽紩璧风殑鏁版嵁搴挞仐婕.
杩炴帴姹犵殑鍒涘缓鍒嗕负浠ヤ笅鍑犱釜姝ラ:1.閰岖疆context.xml鏂囦欢 杩欎釜鏂囦欢鏄链嶅姟鍣(鎸噒omcat)镄勪竴涓猚onf鏂囦欢澶逛腑,𨰾疯礉鍑烘潵鏀惧叆椤圭洰镄刲ib鏂囦欢澶逛腑,鍏蜂綋閰岖疆濡备笅:
[c-sharp]view plain
涔嫔悗鎶婃暟鎹搴撶殑椹卞姩鍖,杩欓噷鎸囩殑鏄痵ql2005镄勫寘鏀惧叆链嶅姟鍣ㄧ殑lib涓,杩欐牱浠ュ悗濡傛灉鍦ㄤ綘镊宸辩殑链哄瓙涓婇兘涓岖敤鍦ㄩ吨鏂板煎叆杩欎釜鍖呬简.
铹跺悗灏辨槸浠崄yEclipse涓鍙栧缑杩欐牱镄勮繛鎺ヤ粠钥屽规暟鎹搴撹繘琛屼竴浜涙搷浣滃叿浣扑唬镰佸备笅:
[c-sharp]view plain
⑤ 用java设计一个数据库管理系统
import java.sql.*;
import java.awt.*;
import javax.swing.*;
import javax.swing.table.*;
//import java.awt.event.*;
public class DisplayDemo extends JFrame
//implements ActionListener
{
// private String dbURL="jdbc:microsoft:sqlserver://202.115.26.181:1433"; // 数据库标识名
private String user="devon"; // 数据库用户
private String password="book"; // 数据库用户密码
private JTable table;
private JButton ok,canel;
public DisplayDemo(){
super("显示数据库查询结果"); //调用父类构造函数
String[] columnNames={"用户名","年龄","性别","Email"}; //列名
Object[][] rowData=new Object[5][4]; //表格数据
ok=new JButton("确定");
canel=new JButton("取消");
// ok.addActionListener(this);
// canel.addActionListener(this);
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:example","sa","");
// Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); //加载驱动器
// Connection con=DriverManager.getConnection(dbURL,user,password); //获取连接
String sqlStr="select * from users"; //查询语句
PreparedStatement ps=con.prepareStatement(sqlStr); //获取PreparedStatement对象
ResultSet rs=ps.executeQuery(); //执行查询
String name,sex,email; //查询结果
int age;
int count=0;
while (rs.next()){ //遍历查询结果
rowData[count][0]=rs.getString("name"); //初始化数组内容
rowData[count][1]=Integer.toString(rs.getInt("age"));
rowData[count][2]=rs.getString("sex");
rowData[count][3]=rs.getString("email");
count++;
}
con.close(); //关闭连接
}
catch(Exception ex){
ex.printStackTrace(); //输出出错信息
}
Container container=getContentPane(); //获取窗口容器
//container.setLayout(null);
container.add(ok);container.add(canel); ok.setBounds(10,120,70,20);
canel.setBounds(100,120,70,20);
table=new JTable(rowData,columnNames); //实例化表格
table.getColumn("年龄").setMaxWidth(25); //设置行宽
container.add(new JScrollPane(table),BorderLayout.CENTER); //增加组件
setSize(300,200); //设置窗口尺寸
setVisible(true); //设置窗口可视
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时退出程序
}
public static void main(String[] args){
new DisplayDemo();
}
}
-----------------
这是其中一个例子 你照着上面做就可以了