1.前边的事例是把数据库的驱动,连接,用户名和密码都写在了类中,耦合性太高,当我们数据库变更或者数据库类型更换后,需要去重新更改代码,很不方便。
解决的方法:把数据库的驱动,连接,用户名和密码写在配置文件中,通过读取配置文件的方式进行代码编写,而以后如果数据库变更直接修改配置文件即可!
2.在工程中右键新建file,命名为jdbc.properties
3.创建完毕如图:
4.在jdbc.properties文件中输入如下信息,分别是数据库的驱动,连接,用户名和密码
5.新建JdbcTest2.java类
6.输入如下代码:
7.代码说明:
这段代码是读取配置文件,把配置文件中的各个项通过名称读取出来
8.这段代码是通过反射来创建Driver对象,反射就是类的实例化
9.在主函数中输入如下,测试方法
10.运行之后的结果如下,表示连接成功!
一、在MySql中创建数据库,并创建表,向表中插入数据1、创建数据库
create database select_test
2、创建表
create table teacher_table(
Id int,
Name Varchar(20),
Sex Varchar(2)
)
3、向表中插入数据(这里插入三条测试数据)
insert into teacher_table values(1,'zhangsan','ma')
insert into teacher_table values(2,'lisi','fe')
insert into teacher_table values(3,'wangwu','ma')
二、配置Eclipse。配置之前请先下载mysql-connector-java-5.1.15-bin.jar文件。
右键单击包所在的工程包(project),Build Path --->Configure Build Path,在d出的窗口中选择 Add External JARs。把下载并解压出来的mysql-connector-java-5.1.15-bin.jar选中。如图
三、编写连接代码。数据库名:select_test
用户名:root
密码:123456
连接成功后显示teacher_table表中的数据。
总结:Elipse连接MySql数据库要求下载mysql-connector-java-5.1.15-bin.jar文件。
1.首先安装MySql数据库,并将数据库驱动程序文件mysql-connector-java-3.1.12-bin.jar放在Tomcat的common/lib中。2.在MySQL的登陆用户名:root,密码:mysql建立数据库testdb,
3.表user 基本代码如下:
<%@ page contentType="text/htmlcharset=gb2312"%>
<%@ page language="java" import="java.sql.Statement" import="java.sql.*" %><html>
<head>
<title>helloworld.jsp</title>
</head>
<body>
<%
try{
Class.forName("org.gjt.mm.mysql.Driver")
out.println("加载Mysql Driver成功!<br>")
} catch(Exception e)
{
out.println("加载Mysql Driver失败!<br>")
e.printStackTrace()
}
try{
out.println("开始连接Mysql server!<br>")
Connection connect=DriverManager.getConnection("jdbc:mysql://localhost/testdb?user=root&password=mysql&useUnicode=true&characterEncoding=8859_1")
//jdbc:mysql://localhost/testdb?user=root&password=mysql&useUnicode=true&characterEncoding=8859_1
//jdbc:mysql://localhost/数据库名user=数据库登陆用户名&password=数据库登陆密码&useUnicode=是否允许设置字符编码&characterEncoding=允许设置编码时,要设置的编码out.print("成功连接Mysql server!<br><br>")
Statement stmt = connect.createStatement()
ResultSet rs=stmt.executeQuery("select * from user")
out.print("读取数据如下:<br>")
while(rs.next())
{
out.println(rs.getInt(1))
out.println(rs.getString(2)+"<br>")
}
} catch(Exception e)
{
out.print("获得数据错误!")
e.printStackTrace()
}
%>
</body>
</html>
4.注意:如果只写import="java.sql.*" ,不写import="java.sql.Statement" 则在Statement
stmt = connect.createStatement()其中Statement下面显示是红色波浪线,程序调用数据库等一切正常。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)