package test;
import java.util.Scanner;
import entity.User;
import service.UserSerivce;
import service.impl.UserServiceImpl;
public class Client {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入用户名:");
String username = sc.next();
System.out.println("请输入用户名:");
String password = sc.next();
User user = new User();
user.setPassword(password);
user.setUsername(username);
UserSerivce userSerivce = new UserServiceImpl();
User u = userSerivce.login(user);
if(u== null) {
System.out.println("用户名密码错误..");
}else {
System.out.println(u.getId()+"\t"+u.getUsername()+"\t"+u.getPassword());
}
}
}
package dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public abstract class DataBase {
public static Connection conn = null;
public static PreparedStatement pstm = null;
public static ResultSet rs = null;
/**
* 得到数据连接
*/
public static Connection getConn() {
try {
String url = "jdbc:oracle:thin:@localhost:1521:orcl";//易错点
String username = "scott";
String password = "tiger";
Class.forName("oracle.jdbc.driver.OracleDriver");//易错点
conn = DriverManager.getConnection(url, username, password);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
/**
* 关闭连接
*/
public static void close() {
try {
if (rs != null) {
rs.close();
}
if(pstm != null) {
pstm.close();
}
if(conn != null) {
conn.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
package dao.impl;
import java.sql.SQLException;
import dao.DataBase;
import dao.UserDao;
import entity.User;
public class UserDaoImpl implements UserDao {
@Override
public User getUser(User user) {
// TODO Auto-generated method stub
String sql = "select userid,username,password from "
+ "t_user where userid=? and username = ? and password = ?";
//易错点,有三个user对象就必须有三个?
User u = null;
try {
DataBase.conn = DataBase.getConn();
DataBase.pstm = DataBase.conn.prepareStatement(sql);
DataBase.pstm.setInt(1, 1);//这里setInt(,);第一个是rs索引,一个是use的对象值
DataBase.pstm.setString(2, user.getUsername());
DataBase.pstm.setString(3, user.getPassword());
DataBase.rs = DataBase.pstm.executeQuery();
while(DataBase.rs.next()) {
u = new User();
u.setId(DataBase.rs.getInt("userid"));
u.setUsername(DataBase.rs.getString("username"));
u.setPassword(DataBase.rs.getString("password"));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return u;
}
}
package service.impl;
import dao.UserDao;
import dao.impl.UserDaoImpl;
import entity.User;
import service.UserSerivce;
public class UserServiceImpl implements UserSerivce {
UserDao userDao = new UserDaoImpl();
@Override
public User login(User user) {
// TODO Auto-generated method stub
return userDao.getUser(user);
}
}
package entity;
public class User {
private int id;
private String username;
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
package service;
import entity.User;
public interface UserSerivce {
public User login(User user);
}
package dao;
import entity.User;
public interface UserDao {
public User getUser(User user);
}
面向对象的jdbc
猜你喜欢
转载自blog.csdn.net/oLengYueHun/article/details/87516956
今日推荐
周排行