package com.yujian.dao;
import com.yujian.model.ClassInfo;
import com.yujian.model.Student;
import com.yujian.util.DBHelper;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class StudentDao {
private DBHelper db=new DBHelper();
public void insertStudent(Student student){
String sql="insert into student values(null,?,?,?,?)";
try {
PreparedStatement pst=db.getConnection().prepareStatement(sql);
pst.setString(1,student.getStuName());
pst.setInt(2,student.getStuSex());
pst.setTimestamp(3,new Timestamp(student.getBirth().getTime()));
pst.setInt(4,student.getClassInfo().getCid());
pst.execute();
} catch (SQLException e) {
e.printStackTrace();
} finally {
db.closeConn();
}
}
public void updateStudent(Student student){
String sql="update student set stu_name=?,stu_sex=?,stu_birth=?,cid=? where stu_id=?";
try {
PreparedStatement pst=db.getConnection().prepareStatement(sql);
pst.setString(1,student.getStuName());
pst.setInt(2,student.getStuSex());
pst.setTimestamp(3,new Timestamp(student.getBirth().getTime()));
pst.setInt(4,student.getClassInfo().getCid());
pst.setInt(5,student.getStuId());
pst.execute();
} catch (SQLException e) {
e.printStackTrace();
} finally {
db.closeConn();
}
}
public void deleteStudent(int stuId){
String sql="delete from student where stu_id=?";
try {
PreparedStatement pst=db.getConnection().prepareStatement(sql);
pst.setInt(1,stuId);
pst.execute();
} catch (SQLException e) {
e.printStackTrace();
} finally {
db.closeConn();
}
}
public List<Student> findStudentAll(){
//数据库后连接断开之后,是不能通过ResultSet去获得数据值得
//所以要转换到list集合里面去,这样哪怕数据库连接关闭,我可以在内存里
// 操作 list集合
List<Student> list=new ArrayList<Student>();
String sql="select s.stu_id,s.stu_name,s.stu_sex,s.stu_birth,s.cid,c.cname";
sql+=" from student s INNER JOIN classinfo c on s.cid=c.cid;";
try {
PreparedStatement pst = db.getConnection().prepareStatement(sql);
ResultSet rs = pst.executeQuery();
//获取记录集需要迭代
while (rs.next()) {
//循环一次就取一行
int stuId = rs.getInt("stu_id");
String stuName = rs.getString("stu_name");
int stuSex=rs.getInt("stu_sex");
Date stuBirth=rs.getDate("stu_birth");
Student s=new Student();
s.setStuId(stuId);
s.setStuName(stuName);
s.setStuSex(stuSex);
s.setBirth(stuBirth);
ClassInfo c=new ClassInfo();
c.setCid(rs.getInt("cid"));
c.setCname(rs.getString("cname"));
s.setClassInfo(c);
list.add(s);
}
}catch (Exception e){
e.printStackTrace();
}finally {
db.closeConn();
}
return list;
}
public Student findStudentById(int paramStuId){
Student student=null;
String sql="select s.stu_id,s.stu_name,s.stu_sex,s.stu_birth,s.cid,c.cname";
sql+=" from student s INNER JOIN classinfo c on s.cid=c.cid";
sql+=" where s.stu_id=?";
try {
PreparedStatement pst = db.getConnection().prepareStatement(sql);
pst.setInt(1,paramStuId);
ResultSet rs = pst.executeQuery();
//获取记录集需要迭代
while (rs.next()) {
//循环一次就取一行
int stuId = rs.getInt("stu_id");
String stuName = rs.getString("stu_name");
int stuSex=rs.getInt("stu_sex");
Date stuBirth=rs.getDate("stu_birth");
student=new Student();
student.setStuId(stuId);
student.setStuName(stuName);
student.setStuSex(stuSex);
student.setBirth(stuBirth);
ClassInfo c=new ClassInfo();
c.setCid(rs.getInt("cid"));
c.setCname(rs.getString("cname"));
student.setClassInfo(c);
}
}catch (Exception e){
e.printStackTrace();
}finally {
db.closeConn();
}
return student;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
学生信息管理系统初始版.zip (37个子文件)
stuweb-master
pom.xml 3KB
src
main
java
com
yujian
web
StudentListServlet.java 2KB
StudentDeleteServlet.java 852B
StudentUpdateServlet.java 2KB
StudentPreAddServlet.java 2KB
StudentAddServlet.java 2KB
StudentSaveServlet.java 1KB
StudentPreUpdateServlet.java 3KB
dao
StudentDao.java 5KB
ClassinfoDao.java 900B
GuestBookDao.java 1KB
model
ClassInfo.java 356B
Student.java 968B
GuestBook.java 397B
util
DateUtil.java 452B
DBHelper.java 949B
webapp
guestbook.jsp 1001B
processGuestBook.jsp 566B
news.jsp 6KB
WEB-INF
web.xml 215B
index.jsp 205B
image
sinalogo.png 2KB
w500h333l80af5.jpg 24KB
normal-sprite-fddd98.png 5KB
banner.jpg 30KB
main_icons.png 49KB
269869534.jpg 28KB
269885877.jpg 14KB
thumb_default.png 3KB
269855519.jpg 22KB
269864136.jpg 30KB
StudentRegister.html 838B
css
news.css 5KB
.idea
misc.xml 655B
compiler.xml 527B
.gitignore 38B
encodings.xml 172B
共 37 条
- 1
资源评论
博士僧小星
- 粉丝: 1978
- 资源: 5910
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功