JDBCの基本操作
自分でjdbcのいくつかの簡単な操作に対して、私はmysqlを使っています
1.mysqlデータベースでテーブルを作成する
2.Studioのbeanクラスの作成
3 . srcディレクトリの下にpropertiesファイルを作成します.その内容は次のとおりです.
4.Connectionオブジェクトを返す独自のJDBCUtilsツールクラスを作成します.
5.これはStudentDaoクラスが主にデータベースを操作して、削除して調べます
6.これはテストクラスです.
6.運転結果:
1.mysqlデータベースでテーブルを作成する
create table student ( name varchar(10),sex varchar(10),id int(10) );
2.Studioのbeanクラスの作成
public class Student {
private String name;
private String sex;
private int id;
public Student(String name, String sex, int id) {
super();
this.name = name;
this.sex = sex;
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
}
3 . srcディレクトリの下にpropertiesファイルを作成します.その内容は次のとおりです.
username=root
password=123
url=jdbc\:mysql\://localhost\:3306/song
4.Connectionオブジェクトを返す独自のJDBCUtilsツールクラスを作成します.
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.util.Properties;
public class JDBCUtil {
public static Connection getConnection(){
try {
Properties properties=new Properties();
properties.load(new FileInputStream("src/properties.properties"));
String username=properties.getProperty("username");
String password=properties.getProperty("password");
String url=properties.getProperty("url");
Class.forName("com.mysql.jdbc.Driver");
Connection con=DriverManager.getConnection(url, username, password);
return con;
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
}
}
}
5.これはStudentDaoクラスが主にデータベースを操作して、削除して調べます
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import edu.jju.info.Student;
import edu.jju.util.JDBCUtil;
public class StudentDao {
/** * * @return */
public ResultSet findAll(){
String sql="select * from student";
Connection con= JDBCUtil.getConnection();
try {
Statement st=con.createStatement();
ResultSet rs=st.executeQuery(sql);
return rs;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
/** * student * @param student * @return */
public boolean updateStudent(Student student){
Connection con=JDBCUtil.getConnection();
String sql="update student set name='"+student.getName()+
"',sex='"+student.getSex()+"'"+ " where id="+student.getId();
System.out.println(sql);
try {
Statement st=con.createStatement();
int i=st.executeUpdate(sql);
if (i>=0) {
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
/** * student * @param id * @return */
public boolean deleteStudent(Student student){
try {
Connection con=JDBCUtil.getConnection();
String sql="delete from student where id=?";
// PreparedStatement, sql
PreparedStatement ps=con.prepareStatement(sql);
ps.setInt(1, student.getId());
int i=ps.executeUpdate();
if(i>=0){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
/** * * @param student * @return */
public boolean insertStudent(Student student){
try {
Connection con=JDBCUtil.getConnection();
String sql="insert into student (name,sex,id) values(?,?,?)";
PreparedStatement ps=con.prepareStatement(sql);
ps.setString(1, student.getName());
ps.setString(2, student.getSex());
ps.setInt(3, student.getId());
int b= ps.executeUpdate();
System.out.println(sql);
if (b>=0) {
return true;
}
} catch (SQLException e) {
e.printStackTrace();
}
return false;
}
}
6.これはテストクラスです.
import java.sql.ResultSet;
import java.sql.SQLException;
import edu.jju.dao.StudentDao;
import edu.jju.info.Student;
public class Test {
/** * @param args */
public static void main(String[] args) {
try {
StudentDao dao=new StudentDao();
ResultSet rs=dao.findAll();
//
while(rs.next()){
String name=rs.getString("name");
String sex=rs.getString("sex");
int id=rs.getInt("id");
System.out.println(name+"::"+sex+"::"+id);
}
// student
Student student =new Student(" "," ",5);
boolean b= dao.insertStudent(student);
System.out.println(" :"+b);
ResultSet rs1=dao.findAll();
//
while(rs1.next()){
String name=rs1.getString("name");
String sex=rs1.getString("sex");
int id=rs1.getInt("id");
System.out.println(name+"::"+sex+"::"+id);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
6.運転結果:
lisi::nu::1
wangwu::nan::2
:: ::4
:true
lisi::nu::1
wangwu::nan::2
:: ::4
:: ::5