package com.dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.entity.Student;
//操作数据库
//原子性的增,删,改,查(位于数据访问层)
public class StudentDao {
private static final String URL="jdbc:mysql://localhost:3306/studentDatabase";
private static final String USER="root";
private static final String PASSWORD="admin";
//要想增加,必须先判断是否已经存在
public static boolean isExist(int sno){
//如果等于null,说明不存在
return StudentDao.queryStudentBySno(sno)==null? false:true;
}
//增加方法
public static boolean addStudent(Student student) {
Connection connection = null;
PreparedStatement pstmt = null;
try {
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection(URL, USER, PASSWORD);
String sql="insert into student values(?,?,?,?)";
pstmt = connection.prepareStatement(sql);
pstmt.setInt(1, student.getSno());
pstmt.setString(2, student.getSname());
pstmt.setInt(3, student.getSage());
pstmt.setString(4, student.getSaddress());
int result = pstmt.executeUpdate();
if(result>0) {
return true;
}
return false;
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
}catch(Exception e) {
e.printStackTrace();
return false;
}finally {
try {
if(pstmt!=null)pstmt.close();
if(connection!=null)connection.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
//删除方法(根据sno进行)
public static boolean deleteStudent(int sno) {
Connection connection = null;
PreparedStatement pstmt = null;
try {
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection(URL, USER, PASSWORD);
String sql="delete from student where sno=?";
pstmt = connection.prepareStatement(sql);
pstmt.setInt(1, sno);
int result = pstmt.executeUpdate();
if(result>0) {
return true;
}
return false;
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
}catch(Exception e) {
e.printStackTrace();
return false;
}finally {
try {
if(pstmt!=null)pstmt.close();
if(connection!=null)connection.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
//修改方法(根据sno 修改student)
public static boolean updateStudent(int sno,Student student) {
Connection connection = null;
PreparedStatement pstmt = null;
try {
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection(URL, USER, PASSWORD);
String sql="update student set sname=?,sage=?,saddress=? where sno=?";
pstmt = connection.prepareStatement(sql);
pstmt.setString(1, student.getSname());
pstmt.setInt(2, student.getSage());
pstmt.setString(3, student.getSaddress());
pstmt.setInt(4, student.getSno());
int result = pstmt.executeUpdate();
if(result>0) {
return true;
}
return false;
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
}catch(Exception e) {
e.printStackTrace();
return false;
}finally {
try {
if(pstmt!=null)pstmt.close();
if(connection!=null)connection.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
//查询方法
public static Student queryStudentBySno(int sno) {
Student student=null;
Connection connection = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection(URL, USER, PASSWORD);
String sql="select * from student where sno=?";
pstmt = connection.prepareStatement(sql);
pstmt.setInt(1, sno);
rs = pstmt.executeQuery();
if(rs.next()) {
int no = rs.getInt("sno");
String sname = rs.getString("sname");
int sage = rs.getInt("sage");
String saddress=rs.getString("saddress");
student=new Student(no,sname,sage,saddress);
return student;
}
return null;
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
}catch(Exception e) {
e.printStackTrace();
return null;
}finally {
try {
if(rs!=null)rs.close();
if(pstmt!=null)pstmt.close();
if(connection!=null)connection.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
//查询全部学生
public static List<Student> queryAllStudent(){
Student student=null;
Connection connection = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
ArrayList<Student> students=new ArrayList<Student>();
try {
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection(URL, USER, PASSWORD);
String sql="select * from student";
pstmt = connection.prepareStatement(sql);
rs = pstmt.executeQuery();
while(rs.next()) {
int sno = rs.getInt("sno");
String sname = rs.getString("sname");
int sage = rs.getInt("sage");
String saddress=rs.getString("saddress");
student=new Student(sno,sname,sage,saddress);
students.add(student);
}
return students;
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
}catch(Exception e) {
e.printStackTrace();
return null;
}finally {
try {
if(rs!=null)rs.close();
if(pstmt!=null)pstmt.close();
if(connection!=null)connection.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
学生信息管理系统),用到知识点:Servlet+jsp+MySQL.zip (22个子文件)
Student-master
Student
src
com
servlet
QueryAllStudentServlet.java 1KB
DeleteStudentServlet.java 1KB
AddStudentServlet.java 2KB
UpdateStudentServlet.java 2KB
QueryStudentBySnoServlet.java 1KB
dao
StudentDao.java 7KB
service
StudentService.java 1KB
entity
Student.java 1KB
build
classes
com
servlet
AddStudentServlet.class 2KB
QueryAllStudentServlet.class 2KB
DeleteStudentServlet.class 2KB
UpdateStudentServlet.class 2KB
QueryStudentBySnoServlet.class 2KB
dao
StudentDao.class 8KB
service
StudentService.class 1KB
entity
Student.class 2KB
WebContent
query.jsp 1009B
WEB-INF
lib
mysql-connector-java-5.1.31-bin.jar 942KB
web.xml 3KB
index.jsp 2KB
add.jsp 655B
META-INF
MANIFEST.MF 39B
共 22 条
- 1
资源评论
博士僧小星
- 粉丝: 1922
- 资源: 5884
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功