1、springmvc+hibernate实现对学生信息的增删改查功能换了一份新工作,刚到公司第一个礼拜,让学习spring mvc +hibernate,学完之后实现一个小功能,对学生信息的增删改查。对于工作近两年的我,真的没有那份恒心把两本电子书认认真真的从头至尾看完。以前接触过spring mvc,稍微了解一些配置文件,但是要和hibernate结合起来,还真不知道怎么搭建。所以就哪里不懂从哪里入手,现学现用,现在把学习过程总结一下,和大家做个分享。第一步:准备好开发工具,本次学习使用myeclipse +mysql第二步:准备好需要的jar包,如下所示:第三步:创建数据库 以及表机构cre
2、ate database student default character set utf8;create table student_info (id varchar(32) comment 主键,name varchar(5) comment 学生姓名,sex varchar(1) comment 性别,age int(2) comment 年龄,num varchar(5) comment 学号,PRIMARY KEY (id)ENGINE=InnoDB DEFAULT CHARSET=utf8;第四步:创建web project 并且添加配置文件,路径如下:其中spring-bean
3、s.xml配置如下:spring-common.xml内容如下:org.hibernate.dialect.MySQLDialectupdatetruetruecom.app.entity.Student!- -PROPAGATION_REQUIRED,-ExceptionPROPAGATION_REQUIRED,-myExceptionPROPAGATION_REQUIREDPROPAGATION_REQUIREDspring-mvc.xml内容如下:第五步:配置web.xml,具体如下:contextConfigLocationclasspath*:config/spring-*.xmlo
4、rg.springframework.web.context.ContextLoaderListenerencodingFilterorg.springframework.web.filter.CharacterEncodingFilterencodingUTF-8forceEncodingtrueencodingFilter/*studentorg.springframework.web.servlet.DispatcherServletcontextConfigLocationclasspath*:config/spring-mvc.xml1student/default*.js第六步:创
5、建package和java文件,目录如下:下来就是根据具体的要求编写代码了,现在将详细的代码罗列出来哦Student.javapackage com.app.entity;import java.io.Serializable;import javax.persistence.Column;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;import javax.persistence.Table;import org.hibernate.an
6、notations.GenericGenerator;EntityTable(name=student_info)public class Student implements SerializableId GeneratedValue(generator=system-uuid)GenericGenerator(name = system-uuid,strategy=uuid)Column(length=32) private String id;Column(length=5) private String name;Column(length=2) private Integer age
7、;Column(length=2) private String sex;Column(length=5) private String num;public String getId() return id;public void setId(String id) this.id = id;public String getName() return name;public void setName(String name) this.name = name;public Integer getAge() return age;public void setAge(Integer age)
8、this.age = age;public String getSex() return sex;public void setSex(String sex) this.sex = sex;public String getNum() return num;public void setNum(String num) this.num = num;StudentDAO.javapackage com.app.dao;import java.util.List;import org.springframework.stereotype.Repository;import com.app.enti
9、ty.Student;public interface StudentDAO public List allStudent(String page);public Student findById(String id);public void addStudent(Student student);public boolean deleteStudent(String id);public boolean updateStudent(Student student);public List queryStudent(Student student);public int getPageNum(
10、);StudentDAOimpl.javapackage com.app.dao.impl;import java.util.List;import org.hibernate.Query;import org.hibernate.SessionFactory;import com.app.dao.StudentDAO;import com.app.entity.Student;public class StudentDAOimpl implements StudentDAO private SessionFactory sessionFactory; private int pageSize
11、 = 10;public void setSessionFactory(SessionFactory sessionFactory) this.sessionFactory = sessionFactory; public void addStudent(Student student) sessionFactory.getCurrentSession().save(student);/* 获取所有学生*/public List allStudent(String page) String hql=from Student;Query query = sessionFactory.getCur
12、rentSession().createQuery(hql);query.setFirstResult(Integer.parseInt(page)-1)*pageSize); query.setMaxResults(pageSize); return query.list();/* 根据id删除学生*/public boolean deleteStudent(String id) String hql =delete Student s where s.id = ? ;Query query = sessionFactory.getCurrentSession().createQuery(hql);query.setString(0, id);return (query.executeUpdate()0);/* 根据id查找学生*/public Student findById(String id) String hql = from Student s where s.id=? ; Query query = sess
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1