组团学

SSM整合-学生信息管理系统

阅读 (737486)

1、完成登录功能

1.1、表准备

ssm数据库中,加入manager表

CREATE TABLE `manager` ( `id` int(11) NOT NULL AUTO_INCREMENT, `uname` varchar(20) DEFAULT NULL, `pword` varchar(20) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8; INSERT INTO `manager` VALUES ('1', 'zhangsan', 'zhangsan'), ('2', 'lisi', 'lisi');

1.2、编写pojo

Manager.java

import java.io.Serializable; public class Manager implements Serializable { private int mid; private String uname; private String pword; public int getMid() { return mid; } public void setMid(int mid) { this.mid = mid; } public String getUname() { return uname; } public void setUname(String uname) { this.uname = uname; } public String getPword() { return pword; } public void setPword(String pword) { this.pword = pword; } @Override public String toString() { return "Manager{" + "mid=" + mid + ", uname='" + uname + '\'' + ", pword='" + pword + '\'' + '}'; } }

1.3、编写持久层

IManagerDAO.java

@Repository("iManagerDAO") public interface IManagerDAO { @Select("select * from manager where uname=#{uname} and pword=#{pword}") public List<Manager> loginManager(Manager m); }

1.4、编写业务层

IManagerServcie.java

public interface IManagerServcie { public List<Manager> loginManager(Manager m); }

ManagerServiceImpl.java

@Service("managerServiceImpl") public class ManagerServiceImpl implements IManagerServcie { @Autowired @Qualifier(value="iManagerDAO") private IManagerDAO iManagerDAO; @Override public List<Manager> loginManager(Manager m) { return iManagerDAO.loginManager(m); } }

1.5、编写控制层

@Controller("managerController") @RequestMapping("/manager") public class ManagerController { @Autowired @Qualifier("managerServiceImpl") private IManagerServcie iManagerServcie; @RequestMapping("/loginManager") public String loginManager(Manager m, Model model,HttpSession session){ List<Manager> list=iManagerServcie.loginManager(m); if(list.size()>0){ session.addAttribute("uname",m.getUname()); return "index"; }else{ return "login"; } } }

1.6、编写view层

/pages/login.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>登录天易IT学院</title> </head> <body> <center> <h3>登录天易IT学院</h3> <form action="${pageContext.request.contextPath}/manager/loginManager" method="post"> 用户名:<input type="text" name="uname"/> 密码:<input type="password" name="pword"/> <input type="submit" value="登录"> </form> </center> </body> </html>

/pages/index.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>欢迎来到天易IT学院学生信息管理系统</title> </head> <body> <center> <h3>欢迎:${uname},<a href="">退出</a></h3> <h3>天易IT学院学生信息管理系统</h3> <table> <tr><th>学员ID</th><th>学员姓名</th><th>学员性别</th><th>学员年龄</th></tr> </table> </center> </body> </html>

1.7、测试

http://localhost:8080/ssm001/pages/login.jsp

2、查询学生表中所有信息

2.1、修改控制器

ManagerController.java

@Controller("managerController") @RequestMapping("/manager") public class ManagerController { @Autowired @Qualifier("managerServiceImpl") private IManagerServcie iManagerServcie; @Autowired @Qualifier("studentsServiceImpl") private IStudentsService iStudentsService; @RequestMapping("/loginManager") public String loginManager(Manager m, Model model, HttpSession session){ List<Manager> list=iManagerServcie.loginManager(m); if(list.size()>0){ List<Students> list1=iStudentsService.findAll(); session.setAttribute("uname",m.getUname()); model.addAttribute("list",list1); return "index"; }else{ return "login"; } } }

2.2、修改展示层

/pages/index.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <html> <head> <title>欢迎来到天易IT学院学生信息管理系统</title> <link type="text/css" rel="styleSheet" href="${pageContext.request.contextPath}/css/index.css" /> </head> <body> <center> <h3>欢迎:${uname},<a href="">退出</a></h3> <h3>天易IT学院学生信息管理系统</h3> <table> <tr><th>学员ID</th><th>学员姓名</th><th>学员性别</th><th>学员年龄</th><th>操作</th></tr> <c:forEach items="${list}" var="students"> <tr><td>${students.sid}</td><td>${students.sname}</td><td>${students.sex}</td><td>${students.age}</td><td><a href="">删除</a>|<a href="">修改</a></td></tr> </c:forEach> </table> </center> </body> </html>

2.3、编写静态资源

/css/index.css

table{ width:500px; } table td{ border: 1px solid black; text-align: center; }

修改配置文件springmvc.xml

<mvc:default-servlet-handler/>

mvc:default-servlet-handler 将在 SpringMVC 上下文中定义一个 DefaultServletHttpRequestHandler,它会对进入 DispatcherServlet 的请求进行筛查,如果发现是没有经过映射的请求,就将该请求交由 WEB 应用服务器默认的 Servlet 处理,如果不是静态资源的请求,才由 DispatcherServlet 继续处理。

3、通过sid删除学生信息

3.1、修改控制器

StudentsController.java

@RequestMapping("/deleteStudents") public String deleteSudents(int sid){ iStudentsService.deleteStudents(sid); return "redirect:findAll"; }

3.2、修改业务层

StudentsServiceImpl.java

@Override public int deleteStudents(int sid) { System.out.println("删除学生的信息!"); return iStudentsDAO.deleteStudents(sid); }

3.3、修改页面

/pages/index.jsp

<a href="${pageContext.request.contextPath}/deleteStudents?sid=${students.sid}">删除</a>

4、修改学生信息

4.1、完成学生信息查询

通过sid找到学生信息

4.1.1、修改控制器

StudentsController.java

@RequestMapping("findById") public String findById(Model model,int sid){ Students students=iStudentsService.findById(sid); model.addAttribute("students",students); return "update"; }

4.1.2、修改业务层

StudentsServiceImpl.java

@Override public Students findById(int sid) { System.out.println("通过SID查询学生的信息!"); return iStudentsDAO.findById(sid); }

4.1.3、创建修改页面

/pages/update.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>修改学生信息页面</title> </head> <body> <center> <h3>欢迎:${uname},<a href="${pageContext.request.contextPath}/findAll">返回</a></h3> <h3>天易IT学院学生信息管理系统-学生信息修改</h3> <form> <table> <tr><th>姓名:</th><td><input type="text" name="sname" value="${students.sname}"/></td></tr> <tr><th>性别:</th><td><input type="text" name="sex" value="${students.sex}"/></td></tr> <tr><th>年龄:</th><td><input type="text" name="age" value="${students.age}"/></td></tr> <tr><td clospan="2"><input type="submit" value="修改"/></td></tr> </table> </form> </center> </body> </html>

4.1.4、修改页面

<a href="${pageContext.request.contextPath}/findById?sid=${students.sid}">修改</a>

4.2、完成学生信息修改

4.2.1、修改控制器

StudentsController.java

@RequestMapping("/updateStudents") public String updateStudents(Students students){ iStudentsService.updateStudents(students); return "redirect:findAll"; }

4.2.2、修改业务层

StudentsServiceImpl.java

@Override public int updateStudents(Students students) { System.out.println("修改学生的信息!"); return iStudentsDAO.updateStudents(students); }

4.2.3、修改页面

/pages/update.jsp

<form action="updateStudents" method="post"> <input type="hidden" name="sid" value="${students.sid}"/> <table> <tr><th>姓名:</th><td><input type="text" name="sname" value="${students.sname}"/></td></tr> <tr><th>性别:</th><td><input type="text" name="sex" value="${students.sex}"/></td></tr> <tr><th>年龄:</th><td><input type="text" name="age" value="${students.age}"/></td></tr> <tr><td clospan="2"><input type="submit" value="修改"/></td></tr> </table> </form>

5、增加学生信息

5.1、修改控制器

StudentsController.java

@RequestMapping("/addStudents") public String addStudents(Students students){ iStudentsService.addStudents(students); return "redirect:findAll"; }

5.2、修改业务层

StudentsServiceImpl.java

@Override public int addStudents(Students students) { System.out.println("增加学生的信息!"); return iStudentsDAO.addStudents(students); }

5.3、修改页面

/pages/index.jsp

<tr><td clospan="5"><a href="${pageContext.request.contextPath}/pages/add.jsp">增加学生信息</a></td></tr>

5.4、创建页面

/pages/add.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>增加学生信息页面</title> </head> <body> <center> <h3>欢迎:${uname},<a href="${pageContext.request.contextPath}/findAll">返回</a></h3> <h3>天易IT学院学生信息管理系统-学生信息增加</h3> <form action="${pageContext.request.contextPath}/addStudents" method="post"> <table> <tr><th>姓名:</th><td><input type="text" name="sname" /></td></tr> <tr><th>性别:</th><td><input type="text" name="sex"/></td></tr> <tr><th>年龄:</th><td><input type="text" name="age"/></td></tr> <tr><td clospan="2"><input type="submit" value="增加"/></td></tr> </table> </form> </center> </body> </html>

6、前台通过姓名查询学生信息

6.1、修改控制器

StudentsController.java

@RequestMapping("/findBySname") public String findBySname(Model model,String sname){ List<Students> list=iStudentsService.findByName("%"+sname+"%"); model.addAttribute("list",list); model.addAttribute("sname",sname); return "forward:/index.jsp"; }

6.2、修改业务层

StudentsServiceImpl.java

@Override public List<Students> findByName(String sname) { System.out.println("通过NAME查询学生的信息!"); return iStudentsDAO.findByName(sname); }

6.3、修改页面

index.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <html> <head> <title>天易IT学院学生信息查询系统</title> </head> <body> <center> <h3>天易IT学院学生信息查询系统</h3> <form action="${pageContext.request.contextPath}/findBySname" method="post"> 请输入学生姓名:<input type="text" name="sname" value="${sname}"><input type="submit" value="查看学生信息"> </form> <table> <tr><th>学员ID</th><th>学员姓名</th><th>学员性别</th><th>学员年龄</th></tr> <c:forEach items="${list}" var="students"> <tr><td>${students.sid}</td><td>${students.sname}</td><td>${students.sex}</td><td>${students.age}</td></tr> </c:forEach> </table> </center> </body> </html>
需要 登录 才可以提问哦