6月23日 SSH 周六

本文介绍了一个学生信息管理系统的设计与实现,该系统使用Struts框架、Hibernate持久层技术进行开发,实现了学生信息的增删改查等功能。
package com.action;

import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletResponse;

import org.apache.struts2.ServletActionContext;

import com.alibaba.fastjson.JSONArray;
import com.dto.Student;
import com.dto.Teacher;
import com.service.StudentService;
import com.util.PageUtils;

public class Action {
    private StudentService service;
    private List<Student> studentList;
    private Student student;
    private String mohu;
    private PageUtils pu;
    private Integer cpage;

    public String list(){
        if(cpage==null){
            cpage=1;
        }
        Integer pageSize = 2;
        Integer count = service.getCount(mohu);
        pu = new PageUtils(cpage, pageSize, count);
        studentList = service.getStudentList(pu,mohu);
        return "list";
    }
    public void getData() throws IOException{
        List<Teacher> teacherList = service.findTeacherList();
        student = service.getStudent(student);
        Map<String, Object> map = new HashMap<String, Object>();
        map.put("teacherList", teacherList);
        map.put("student", student);
        String jsonString = JSONArray.toJSONString(map);
        System.out.println(jsonString);
        HttpServletResponse response = ServletActionContext.getResponse();
        response.setCharacterEncoding("utf-8");
        response.getWriter().print(jsonString);

    }
    public void saveOrUpdate() throws IOException{
        int i = service.saveOrUpdate(student);
        HttpServletResponse response = ServletActionContext.getResponse();
        response.getWriter().print(i);
    }
    public void del() throws IOException{
        int i = service.delete(student);
        HttpServletResponse response = ServletActionContext.getResponse();
        response.getWriter().print(i);
    }

    public StudentService getService() {
        return service;
    }

    public void setService(StudentService service) {
        this.service = service;
    }

    public List<Student> getStudentList() {
        return studentList;
    }

    public void setStudentList(List<Student> studentList) {
        this.studentList = studentList;
    }
    public Student getStudent() {
        return student;
    }
    public void setStudent(Student student) {
        this.student = student;
    }
    public String getMohu() {
        return mohu;
    }
    public void setMohu(String mohu) {
        this.mohu = mohu;
    }
    public PageUtils getPu() {
        return pu;
    }
    public void setPu(PageUtils pu) {
        this.pu = pu;
    }
    public Integer getCpage() {
        return cpage;
    }
    public void setCpage(Integer cpage) {
        this.cpage = cpage;
    }


}
package com.dao;

import java.util.List;

import org.hibernate.Query;
import org.springframework.dao.DataAccessException;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import com.dto.Student;
import com.dto.Teacher;
import com.util.PageUtils;

public class StudentDao extends HibernateDaoSupport{

    public List<Student> studentList(PageUtils pu, String mohu) {
        String hql = " from Student ";
        if(mohu!=null){
            hql+=" where name like '%"+mohu+"%' ";
        }
        Query query = getSession().createQuery(hql).setFirstResult(pu.getStartIndex()).setMaxResults(pu.getPageSize());
        List list = query.list();
        return list;
    }

    public List<Teacher> findTeacherList() {
        return getHibernateTemplate().find("from Teacher");
    }

    public Student getStudent(Student student) {
        return (Student) getHibernateTemplate().get(Student.class, student.getId());
    }

    public int saveOrUpdate(Student student) {
        // TODO Auto-generated method stub
        try {
            getHibernateTemplate().saveOrUpdate(student);
            return 1;
        } catch (DataAccessException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            return 0;
        }
    }

    public int delete(Student student) {
        // TODO Auto-generated method stub
        try {
            getHibernateTemplate().delete(student);
            return 1;
        } catch (DataAccessException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            return 0;
        }
    }

    public Integer getCount(String mohu) {
        // TODO Auto-generated method stub
        String hql = " select count(*) from Student ";
        if(mohu!=null){
            hql+=" where name like '%"+mohu+"%' ";
        }
        Query query = getSession().createQuery(hql);
        Integer count = Integer.valueOf(query.uniqueResult().toString());
        return count;
    }

}

人总是会喜欢自己擅长领域的东西,那是因为你有足够的成就感和满足感。但人,还是要学习着,并尝试会去消化那些你所不擅长且天生笨拙的领域。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值