java连接数据库操作—-DAO
可能学过jdbc的朋友们都知道java是如何与数据库建立连接,现在想分享的是一种较为结构化的数据库操作,即DAO,啥都不多说,现上代码啦! O(∩_∩)O哈哈~Java编程网:http://www.haohaoblog.com
package com.cn.crud.dao;
import java.sql.*;
import java.util.*;
import com.cn.crud.dto.*;
*///userDAO++++++++++++++++++++++++++++++++++++++++++++++++++
public class UserDAO
{
String driver = “com.mysql.jdbc.Driver”;
String url = “jdbc:mysql://localhost:3306/crud”;
String username = “root”; String password = “root”;
//CreateByDTO————————————————
public void createUser(UserDTO user)
{
Connection con=null;
Statementstmt=null;
ResultSetrs=null;
try
{
Class.forName(driver);
con = DriverManager.getConnection(url,username,password);
String sql=”insert into user (userid,username,pass,name,sex,age) values (” + “‘” + user.getUserid() + “‘” + “,” + “‘” + user.getUsername() + “‘” + “,” + “‘” + user.getPass() + “‘” + “,” + “‘” + user.getName() + “‘” + “,” + “‘” + user.getSex() + “‘” + “,” + “‘” + user.getAge() + “‘” +”)”;
stmt = con.createStatement();
stmt.execute(sql);
}
catch(Exception sqlex1)
{ sqlex1.printStackTrace(); }
finally {
if (con != null)
{
try { con.close(); }
catch(SQLException sqlex2)
{ sqlex2.printStackTrace(); }
}
}
}
//UpdateByDTO————————————————
public void updateUser(UserDTO user)
{
Connection con=null;
Statementstmt=null;
ResultSetrs=null;
try{
Class.forName(driver);
con = DriverManager.getConnection(url,username,password);
String sql = “update user set ” + “username =’” + user.getUsername() + “‘,” + “pass =’” + user.getPass() + “‘,” + “name =’” + user.getName() + “‘,” + “sex =’” + user.getSex() + “‘,” + “age =’” + user.getAge() + “‘” + ” where userid = ‘” + user.getUserid() + “‘” ; stmt = con.createStatement(); stmt.executeUpdate(sql);
}
catch(Exception sqlex1)
{ sqlex1.printStackTrace(); }
finally { if (con != null)
{ try { con.close(); }
catch(SQLException sqlex2)
{ sqlex2.printStackTrace(); } } } }
//UpdateByDTOs————————————————
public void updateUsers(Vector users)
{ Iterator it = users.iterator();
while(it.hasNext())
{ UserDTO user = (UserDTO)it.next(); updateUser(user); } }
//RemoveByPrimaryKey————————————————
public void removeByPrimaryKey(java.lang.String _userid)
{ Connection con=null;
Statementstmt=null;
ResultSetrs=null;
try{
Class.forName(driver);
con = DriverManager.getConnection(url,username,password);
String sql = “delete from user where userid = ‘” + _userid + “‘”;
stmt = con.createStatement(); stmt.execute(sql);
}
catch(Exception sqlex1)
{ sqlex1.printStackTrace(); }
finally
{ if (con != null)
{ try { con.close(); }
catch(SQLException sqlex2)
{ sqlex2.printStackTrace(); } } } }
//RemoveByDTO————————————————
public void removeUser(UserDTO user)
{ removeByPrimaryKey(user.getUserid()); }
//RemoveByDTOs————————————————
public void removeUsers(Vector users)
{ Iterator it = users.iterator();
while(it.hasNext())
{ UserDTO user = (UserDTO)it.next(); removeUser(user); } }
//findByPrimaryKey————————————————
public UserDTO findByPrimaryKey(java.lang.String _userid)
{ Connection con=null;
Statementstmt=null;
ResultSetrs=null;
UserDTO user = new UserDTO();
try{
Class.forName(driver);
con = DriverManager.getConnection(url,username,password);
stmt = con.createStatement();
String sql = “select * from user where userid = ‘” + _userid + “‘”;
rs = stmt.executeQuery(sql);
while(rs.next())
{
user.setUserid(rs.getString(“userid”));
user.setUsername(rs.getString(“username”));
user.setPass(rs.getString(“pass”));
user.setName(rs.getString(“name”));
user.setSex(rs.getString(“sex”));
user.setAge(rs.getString(“age”));
}
}
catch(Exception sqlex1)
{ sqlex1.printStackTrace(); }
finally
{ if (con != null)
{ try { con.close();
}
catch(SQLException sqlex2)
{ sqlex2.printStackTrace(); }
}
return user; } }
public List findAll()
{ Connection con = null;
Statement stmt = null;
ResultSet rs = null;
List ls = new ArrayList();
try
{ Class.forName(driver);
con = DriverManager.getConnection(url, username, password);
stmt = con.createStatement();
String sql = “select * from user”;
UserDTO user; rs = stmt.executeQuery(sql);
while(rs.next())
{ user = new UserDTO();
user.setUserid(rs.getString(“userid”));
user.setUsername(rs.getString(“username”));
user.setPass(rs.getString(“pass”));
user.setName(rs.getString(“name”));
user.setSex(rs.getString(“sex”));
user.setAge(rs.getString(“age”));
ls.add(user);
}
}
catch (Exception sqlex1)
{ sqlex1.printStackTrace(); }
finally {
if (con != null)
try { con.close(); }
catch (SQLException sqlex2)
{ sqlex2.printStackTrace(); }
return ls; }}
publicstatic voidmain(String args[])
{ UserDAO dao=new UserDAO();
UserDTO dto=new UserDTO();
List ls=new ArrayList();
ls=dao.findAll();
System.out.println(ls.size());
if(ls.size()>0)
{ for(int i=0;i<ls.size();i++)
{ dto=(UserDTO)ls.get(i);
dto.getAge(); }} } }
有些地方是根据笔者电脑的配置环境来具体改变的,比如数据库的名称,数据库连接的表,用户名和密码,还有具体的DTO 名称,但以上代码是较为完整的数据库操作代码,只是有些外部调用类,但是都是很好理解!希望朋友们能够互相交流!
本文固定链接: http://www.haohaoblog.com/?p=145 | java编程网
页:
[1]