java+mysql项目,javaweb项目连接MySQL数据库
很多朋友对于java+mysql项目和javaweb项目连接MySQL数据库不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!
用java连接mysql实现对表中的数据查找,插入,修改等功能,
JDBC操作MySQL数据库的步骤
1、准备MySQL数据库驱动包:mysql-connector-java-5.0.8-bin.jar,一个项目中只能存在一个版本的驱动包
a、复制该驱动包,粘贴到项目中
b、选中项目里的驱动包,右键->Build Path->Add to Build Path
2、在类里写代码加载驱:决定连接哪种数据库
a、Class.forName("com.mysql.jdbc.Driver");
b、必须进行异常处理:ClassNotFoundException
3、连接数据库
a、Connection con=DriverManager.getConnection("连接字符串","用户名","密码");
b、连接字符串格式固定,不同数据库,格式不同:jdbc:mysql://要连接的计算机名称:端口号/要连接的数据库名称
c、必须进行异常处理:SQLException
4、拼写要执行的sql语句,必须是可以在数据库中执行的
5、创建执行sql语句的对象
a、Statement stmt=con.createStatement();
b、注意:Statement必须来自于java.sql包中
6、执行sql语句
a、执行insert、update和delete语句:int row=stmt.executeUpdate(sql);返回影响行数
b、执行查询语句:ResultSet rs=stmt.executeQuery(sql);返回查询结果
c、执行任意sql语句(DDL、DCL、DML和DQL等)
7、对执行结果进行处理
a、执行更新语句:判断影响行数是否为0,0表示失败,非0表示成功
b、对查询结果进行处理:
1)结果集需要先移动、后取值:rs.next();int id=rs.getInt(1);
String name=rs.getString("loginName");
2)结果集有多条时,需要循环操作:
while(rs.next()){ System.out.println(rs.getInt(1)+"\t"+rs.getString(2)+"\t"+rs.getString(3)+"\t"+rs.getString(4)+"\t"+rs.getInt(5));
}
3)不确定是否有查询结果时:if(rs.next()){说明有查询结果}else{没有查询结果}
4)使用了聚合函数,一定有查询结果,查询结果是一行一列:
rs.next();
int result=rs.getInt(1);
注意:结果集取值时取出的时查询语句中包含的字段,与表中字段无关
9、关闭相关对象(先关闭结果集对象、在关闭执行语句对象,最后关闭连接对象)
例如:执行查询语句
Scanner input=new Scanner(System.in);
System.out.print("请输入登录名:");
String name=input.next();
System.out.print("请输入密码:");
String pass=input.next();
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/userdb","root","root");
String sql="select COUNT(*) from UserInfo where loginName='"+name+"' and loginPass='"+pass+"'";
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery(sql);
rs.next();
int result=rs.getInt(1);
if(result!=0){
System.out.println("登录成功!");
}else{
System.out.println("用户名或密码错误,请重新登录!");
}
rs.close();
stmt.close();
con.close();
} catch(ClassNotFoundException e){
System.out.println("加载驱动错误:"+e.getMessage());
} catch(SQLException e){
System.out.println("数据库操作错误:"+e.getMessage());
}
执行添加、修改和删除语句
try{
//加载驱动
Class.forName("com.mysql.jdbc.Driver");
//连接数据库
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/userdb","root","root");
//拼写要执行的sql语句
String sql="update UserInfo set loginPass='111' where loginName='a'";
//String sql="insert UserInfo values(default,'test','test')";
//String sql="delete from UserInfo where loginName='a'";
//创建执行语句对象
Statement stmt=con.createStatement();
//执行
int row=stmt.executeUpdate(sql);
//处理结果
if(row==0){
System.out.println("修改失败!");
}else{
System.out.println("修改成功!");
}
//关闭
stmt.close();
con.close();
} catch(ClassNotFoundException e){
System.out.println("驱动加载错误:"+e.getMessage());
} catch(SQLException e){
System.out.println("数据库操作错误:"+e.getMessage());
}
怎样用java连接mysql
Java MySQL连接
Java连接 MySQL需要驱动包,百度就有自行下载,解压后得到jar库文件,然后在对应的项目中导入该库文件。
本实例使用的是 Eclipse,导入 jar包:
创建测试数据
接下来我们在 MySQL中创建 RUNOOB数据库,并创建 websites数据表,表结构如下:
CREATETABLE`websites`(
`id`int(11)NOTNULLAUTO_INCREMENT,
`name`char(20)NOTNULLDEFAULT''COMMENT'站点名称',
`url`varchar(255)NOTNULLDEFAULT'',
`alexa`int(11)NOTNULLDEFAULT'0'COMMENT'Alexa排名',
`country`char(10)NOTNULLDEFAULT''COMMENT'国家',
PRIMARYKEY(`id`))ENGINE=InnoDBAUTO_INCREMENT=10DEFAULTCHARSET=utf8;数据表显示如下:
连接数据库
以下实例使用了 JDBC连接 MySQL数据库,注意一些数据如用户名,密码需要根据你的开发环境来配置:
MySQLDemo.java文件代码:
packagecom.runoob.test;
importjava.sql.*;
publicclassMySQLDemo{
//JDBC驱动名及数据库URL
staticfinalStringJDBC_DRIVER="com.mysql.jdbc.Driver";
staticfinalStringDB_URL="jdbc:mysql://localhost:3306/RUNOOB";
//数据库的用户名与密码,需要根据自己的设置
staticfinalStringUSER="root";
staticfinalStringPASS="123456";
publicstaticvoidmain(String[]args){
Connectionconn=null;
Statementstmt=null;
try{
//注册JDBC驱动
Class.forName("com.mysql.jdbc.Driver");
//打开链接
System.out.println("连接数据库...");
conn=DriverManager.getConnection(DB_URL,USER,PASS);
//执行查询
System.out.println("实例化Statement对...");
stmt=conn.createStatement();
Stringsql;
sql="SELECTid,name,urlFROMwebsites";
ResultSetrs=stmt.executeQuery(sql);
//展开结果集数据库
while(rs.next()){
//通过字段检索
intid=rs.getInt("id");
Stringname=rs.getString("name");
Stringurl=rs.getString("url");
//输出数据
System.out.print("ID:"+id);
System.out.print(",站点名称:"+name);
System.out.print(",站点URL:"+url);
System.out.print("
");
}
//完成后关闭
rs.close();
stmt.close();
conn.close();
}catch(SQLExceptionse){
//处理JDBC错误
se.printStackTrace();
}catch(Exceptione){
//处理Class.forName错误
e.printStackTrace();
}finally{
//关闭资源
try{
if(stmt!=null)stmt.close();
}catch(SQLExceptionse2){
}//什么都不做
try{
if(conn!=null)conn.close();
}catch(SQLExceptionse){
se.printStackTrace();
}
}
System.out.println("Goodbye!");
}
}以上实例执行输出结果如下:
我有一个微信公众号,经常会分享一些Java技术相关的干货,还有一些学习资源。
如果你喜欢我的分享,可以用微信搜索“Java团长”或者“javatuanzhang”关注。
java怎样连接mysql数据库
1、java连接MySQL数据库需要有一个驱动jar包
例如:mysql-connector-java-5.1.26-bin.jar,
该驱动jar可以自行百度搜索最新包下载放在项目的lib目录下即可。
2、连接代码如下
packagebaidu.test.jsp;
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.ResultSet;
importjava.sql.SQLException;
importjava.sql.Statement;
importjavax.naming.spi.DirStateFactory.Result;
publicclassDbConnection{
privatestaticConnectionconn;
publicDbConnection(){
Stringdrivername="com.mysql.jdbc.Driver";
Stringusername="root";
Stringurl="jdbc:mysql://localhost/jsptest?useUnicode=true&characterEncoding=UTF-8";
Stringpassword="";
//加载驱动
try{
Class.forName(drivername);
}catch(ClassNotFoundExceptione){
System.out.println("驱动加载失败!");
e.printStackTrace();
}
//建立连接
try{
conn=DriverManager.getConnection(url,username,password);
}catch(SQLExceptione){
System.out.println("数据库连接失败!");
e.printStackTrace();
}
}
//getResultSet
publicResultSetGetResultSet(Stringsql)
{
ResultSetrs=null;
//statemanage
try{
Statementst=conn.createStatement();
rs=st.executeQuery(sql);
}catch(SQLExceptione){
System.out.println("状态管理器创建失败");
e.printStackTrace();
}
returnrs;
}
//DML
publicintDML(Stringsql)
{
intcount=-1;
try{
Statementstatement=conn.createStatement();
count=statement.executeUpdate(sql);
}catch(SQLExceptione){
System.out.println("状态管理器创建失败");
e.printStackTrace();
}
returncount;
}
}3、可以新建service类来调用连接类里面的getResultSet方法和DML,实现自己所需用的功能。
OK,关于java+mysql项目和javaweb项目连接MySQL数据库的内容到此结束了,希望对大家有所帮助。