zoukankan      html  css  js  c++  java
  • crud springmvc

    实体类:Student.java 

    Java代码  收藏代码
    1. package demo.entity;  
    2.   
    3. public class Student  
    4. {  
    5.     private int id;  
    6.       
    7.     private String name;  
    8.       
    9.     private String sex;  
    10.       
    11.     private String address;  
    12.       
    13.     public int getId()  
    14.     {  
    15.         return id;  
    16.     }  
    17.       
    18.     public void setId(int id)  
    19.     {  
    20.         this.id = id;  
    21.     }  
    22.       
    23.     public String getName()  
    24.     {  
    25.         return name;  
    26.     }  
    27.       
    28.     public void setName(String name)  
    29.     {  
    30.         this.name = name;  
    31.     }  
    32.       
    33.     public String getSex()  
    34.     {  
    35.         return sex;  
    36.     }  
    37.       
    38.     public void setSex(String sex)  
    39.     {  
    40.         this.sex = sex;  
    41.     }  
    42.       
    43.     public String getAddress()  
    44.     {  
    45.         return address;  
    46.     }  
    47.       
    48.     public void setAddress(String address)  
    49.     {  
    50.         this.address = address;  
    51.     }  
    52.       
    53. }  


    IStudentDao.java 

    Java代码  收藏代码
    1. package demo.dao;  
    2.   
    3. import java.util.List;  
    4.   
    5. import demo.entity.Student;  
    6.   
    7. public interface IStudentDao  
    8. {  
    9.     public void insert(Student stu);  
    10.       
    11.     public void delete(int id);  
    12.       
    13.     public void update(Student stu);  
    14.       
    15.     public List<Student> findAll();  
    16.       
    17.     public Student findById(int id);  
    18. }  


    StudentDaoImpl.java 

    Java代码  收藏代码
    1. package demo.dao.impl;  
    2.   
    3. import java.util.List;  
    4. import java.util.Map;  
    5.   
    6. import javax.annotation.Resource;  
    7.   
    8. import org.springframework.jdbc.core.BeanPropertyRowMapper;  
    9.   
    10. import demo.dao.IStudentDao;  
    11. import demo.entity.Student;  
    12.   
    13. public class StudentDaoImpl implements IStudentDao  
    14. {  
    15.     public static final String INSERT = "insert into student(name,sex,address) values(?,?,?)";  
    16.       
    17.     public static final String DELETE = "delete from student where id=?";  
    18.       
    19.     public static final String UPDATE = "update student set name=?,sex=?,address=? where id=?";  
    20.       
    21.     public static final String FINDALL = "select * from student";  
    22.       
    23.     public static final String FINDBYID = "select * from student where id=?";  
    24.       
    25.     private org.springframework.jdbc.core.simple.SimpleJdbcTemplate simpleJdbcTemplate;  
    26.       
    27.     @Resource  
    28.     public void setSimpleJdbcTemplate(  
    29.             org.springframework.jdbc.core.simple.SimpleJdbcTemplate simpleJdbcTemplate)  
    30.     {  
    31.         this.simpleJdbcTemplate = simpleJdbcTemplate;  
    32.     }  
    33.       
    34.     public void delete(int id)  
    35.     {  
    36.         // TODO Auto-generated method stub  
    37.         this.simpleJdbcTemplate.update(DELETE, id);  
    38.     }  
    39.       
    40.     @SuppressWarnings("deprecation")  
    41.     public List<Student> findAll()  
    42.     {  
    43.         // TODO Auto-generated method stub  
    44.         List<Student> stuList = this.simpleJdbcTemplate.query(FINDALL,new BeanPropertyRowMapper<Student>(Student.class));  
    45.         return stuList;  
    46.     }  
    47.       
    48.     public Student findById(int id)  
    49.     {  
    50.         // TODO Auto-generated method stub  
    51.         Map<String, Object> stuMap = this.simpleJdbcTemplate.queryForMap(FINDBYID, id);  
    52.         Student stu = new Student();  
    53.         stu.setId(id);  
    54.         stu.setName(stuMap.get("name").toString());  
    55.         stu.setSex(stuMap.get("sex").toString());  
    56.         stu.setAddress(stuMap.get("address").toString());  
    57.         return stu;  
    58.     }  
    59.       
    60.     public void insert(Student stu)  
    61.     {  
    62.         // TODO Auto-generated method stub  
    63.         this.simpleJdbcTemplate.update(INSERT, stu.getName(),stu.getSex(),stu.getAddress());  
    64.     }  
    65.       
    66.     public void update(Student stu)  
    67.     {  
    68.         // TODO Auto-generated method stub  
    69.         this.simpleJdbcTemplate.update(UPDATE, stu.getName(),stu.getSex(),stu.getAddress(),stu.getId());  
    70.     }  
    71.       
    72. }  


    IStudentService.java 

    Java代码  收藏代码
    1. package demo.service;  
    2.   
    3. import java.util.List;  
    4.   
    5. import demo.entity.Student;  
    6.   
    7. public interface IStudentService  
    8. {  
    9.     public void insert(Student stu);  
    10.       
    11.     public void delete(int id);  
    12.       
    13.     public void update(Student stu);  
    14.       
    15.     public List<Student> findAll();  
    16.       
    17.     public Student findById(int id);  
    18. }  


    StudentServiceImpl.java 

    Java代码  收藏代码
    1. package demo.service.impl;  
    2.   
    3. import java.util.List;  
    4.   
    5. import javax.annotation.Resource;  
    6.   
    7. import demo.dao.IStudentDao;  
    8. import demo.entity.Student;  
    9. import demo.service.IStudentService;  
    10.   
    11. public class StudentServiceImpl implements IStudentService  
    12. {  
    13.     private IStudentDao stuDao;  
    14.     @Resource  
    15.     public void setStuDao(IStudentDao stuDao)  
    16.     {  
    17.         this.stuDao = stuDao;  
    18.     }  
    19.   
    20.     public void delete(int id)  
    21.     {  
    22.         // TODO Auto-generated method stub  
    23.         stuDao.delete(id);  
    24.     }  
    25.   
    26.     public List<Student> findAll()  
    27.     {  
    28.         // TODO Auto-generated method stub  
    29.         return stuDao.findAll();  
    30.     }  
    31.   
    32.     public Student findById(int id)  
    33.     {  
    34.         // TODO Auto-generated method stub  
    35.         return stuDao.findById(id);  
    36.     }  
    37.   
    38.     public void insert(Student stu)  
    39.     {  
    40.         // TODO Auto-generated method stub  
    41.         stuDao.insert(stu);  
    42.     }  
    43.   
    44.     public void update(Student stu)  
    45.     {  
    46.         // TODO Auto-generated method stub  
    47.         stuDao.update(stu);  
    48.     }  
    49.       
    50. }  


    StudentController.java 

    Java代码  收藏代码
    1. package demo.controller;  
    2.   
    3. import java.io.UnsupportedEncodingException;  
    4. import java.util.List;  
    5.   
    6. import javax.annotation.Resource;  
    7. import javax.servlet.http.HttpServletRequest;  
    8. import javax.servlet.http.HttpServletResponse;  
    9.   
    10. import org.springframework.stereotype.Controller;  
    11. import org.springframework.ui.ModelMap;  
    12. import org.springframework.web.bind.annotation.PathVariable;  
    13. import org.springframework.web.bind.annotation.RequestMapping;  
    14. import org.springframework.web.bind.annotation.RequestMethod;  
    15. import org.springframework.web.servlet.ModelAndView;  
    16.   
    17. import demo.entity.Student;  
    18. import demo.service.IStudentService;  
    19.   
    20. @Controller  
    21. @RequestMapping("/student")  
    22. public class StudentController  
    23. {  
    24.     private IStudentService stuService;  
    25.       
    26.     @Resource  
    27.     public void setStuService(IStudentService stuService)  
    28.     {  
    29.         this.stuService = stuService;  
    30.     }  
    31.       
    32.     /** 
    33.      * 全部 
    34.      */  
    35.     @RequestMapping(value = "/all", method = RequestMethod.GET)  
    36.     public ModelAndView findAll(HttpServletRequest request,  
    37.             HttpServletResponse response, ModelMap modelMap)  
    38.     {  
    39.         List<Student> stuList = stuService.findAll();  
    40.         modelMap.put("stuList", stuList);  
    41.         return new ModelAndView("allStudent", modelMap);  
    42.     }  
    43.       
    44.     /** 
    45.      * 删除 
    46.      */  
    47.     @RequestMapping(value = "/delete/{id}", method = RequestMethod.GET)  
    48.     public String delete(HttpServletRequest request,  
    49.             HttpServletResponse response, @PathVariable("id")  
    50.             int id, ModelMap modelMap)  
    51.     {  
    52.         stuService.delete(id);  
    53.         return "redirect:/student/all.do";  
    54.     }  
    55.       
    56.     /** 
    57.      * 添加 
    58.      */  
    59.     @RequestMapping(value = "/add", method = RequestMethod.POST)  
    60.     public String addStudent(HttpServletRequest request,  
    61.             HttpServletResponse response, Student stu)  
    62.             throws UnsupportedEncodingException  
    63.     {  
    64.         stuService.insert(stu);  
    65.         return "redirect:/student/all.do";  
    66.     }  
    67.       
    68.     /** 
    69.      * pre4Update 
    70.      */  
    71.     @RequestMapping("/pre4Update/{id}")  
    72.     public ModelAndView pre4Update(HttpServletRequest request,  
    73.             HttpServletResponse response, @PathVariable("id")  
    74.             int id, ModelMap modelMap)  
    75.     {  
    76.         Student stu = stuService.findById(id);  
    77.         modelMap.put("stu", stu);  
    78.         return new ModelAndView("updateStudent", modelMap);  
    79.     }  
    80.       
    81.     /** 
    82.      * updateStudent 
    83.      */  
    84.     @RequestMapping("/updateStudent")  
    85.     public String updateStudent(HttpServletRequest request,  
    86.             HttpServletResponse response, Student stu)  
    87.     {  
    88.         stuService.update(stu);  
    89.         return "redirect:/student/all.do";  
    90.     }  
    91.       
    92.     /** 
    93.      * 跳转:用于跳转的过度 
    94.      */  
    95.     @RequestMapping(value = "/redir/{url}", method = RequestMethod.GET)  
    96.     public String sendRedirect(HttpServletRequest request,  
    97.             HttpServletResponse response, @PathVariable("url")  
    98.             String url)  
    99.     {  
    100.         return url;  
    101.     }  
    102. }  


    ================================================ 
    配置文件: 
    jdbc.properties 

    Java代码  收藏代码
    1. jdbc.driverClassName=com.mysql.jdbc.Driver  
    2. jdbc.url=jdbc:mysql://localhost:3306/demo?characterEncoding=utf-8  
    3. jdbc.username=root  
    4. jdbc.password=root  


    servlet.xml 

    Java代码  收藏代码
    1. <?xml version="1.0" encoding="UTF-8"?>  
    2.   
    3. <beans xmlns="http://www.springframework.org/schema/beans"  
    4.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    5.     xmlns:mvc="http://www.springframework.org/schema/mvc"  
    6.     xmlns:context="http://www.springframework.org/schema/context"  
    7.     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd  
    8.         http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd  
    9.         http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">  
    10.   
    11.   
    12.   
    13.       
    14.     <context:component-scan base-package="demo.controller"></context:component-scan>  
    15.     <!-- 内部资源视图解析器 (用于支持Servlet、JSP视图解析) -->  
    16.     <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">  
    17.         <property name="prefix" value="/WEB-INF/jsp/"/>  
    18.         <property name="suffix" value=".jsp"/>  
    19.     </bean>  
    20.   
    21.   
    22.     <!-- 数据库连接配置文件路径及读取方式 -->  
    23.     <bean id="propertyConfigurer"  
    24.         class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">  
    25.         <property name="locations">  
    26.             <list>  
    27.                 <value>classpath:jdbc.properties</value>  
    28.             </list>  
    29.         </property>  
    30.     </bean>  
    31.   
    32.     <!-- 数据库连接池 -->  
    33.     <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"  
    34.         destroy-method="close">  
    35.         <property name="driverClassName" value="${jdbc.driverClassName}" />  
    36.         <property name="url" value="${jdbc.url}" />  
    37.         <property name="username" value="${jdbc.username}" />  
    38.         <property name="password" value="${jdbc.password}" />  
    39.     </bean>  
    40.   
    41.     <bean id="simpleJdbcTemplate"    
    42.         class="org.springframework.jdbc.core.simple.SimpleJdbcTemplate">    
    43.         <constructor-arg><ref bean="dataSource"/></constructor-arg>    
    44.     </bean>  
    45.     <!-- spring JDBC -->  
    46.     <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">  
    47.         <property name="dataSource" ref="dataSource" />  
    48.     </bean>  
    49.       
    50. </beans>  


    applicationContext-dao.xml 

    Java代码  收藏代码
    1. <?xml version="1.0" encoding="UTF-8"?>  
    2. <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" " http://www.springframework.org/dtd/spring-beans.dtd">  
    3. <beans>  
    4.     <bean id="stuDao" class="demo.dao.impl.StudentDaoImpl">  
    5.         <property name="simpleJdbcTemplate"  
    6.             ref="simpleJdbcTemplate" />  
    7.     </bean>  
    8. </beans>  


    applicationContext-service.xml 

    Java代码  收藏代码
    1. <?xml version="1.0" encoding="UTF-8"?>  
    2. <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" " http://www.springframework.org/dtd/spring-beans.dtd">  
    3. <beans>  
    4.     <bean id="stuService" class="demo.service.impl.StudentServiceImpl">  
    5.         <property name="stuDao" ref="stuDao"/>  
    6.     </bean>  
    7. </beans>  


    web.xml 

    Java代码  收藏代码
    1. <?xml version="1.0" encoding="UTF-8"?>  
    2. <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"  
    3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    4.     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   
    5.     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  
    6.     <welcome-file-list>  
    7.         <welcome-file>index.jsp</welcome-file>  
    8.     </welcome-file-list>  
    9.     <servlet>  
    10.         <servlet-name>demo2</servlet-name>  
    11.         <servlet-class>  
    12.             org.springframework.web.servlet.DispatcherServlet  
    13.         </servlet-class>  
    14.         <init-param>  
    15.             <param-name>contextConfigLocation</param-name>  
    16.             <param-value>/WEB-INF/classes/spring/*.xml</param-value>  
    17.         </init-param>  
    18.   
    19.         <load-on-startup>1</load-on-startup>  
    20.     </servlet>  
    21.     <servlet-mapping>  
    22.         <servlet-name>demo2</servlet-name>  
    23.         <url-pattern>*.do</url-pattern>  
    24.     </servlet-mapping>  
    25.     <!-- 处理乱码 -->  
    26.     <filter>  
    27.         <filter-name>encodingFilter</filter-name>  
    28.         <filter-class>  
    29.             org.springframework.web.filter.CharacterEncodingFilter  
    30.         </filter-class>  
    31.         <init-param>  
    32.             <param-name>encoding</param-name>  
    33.             <param-value>utf-8</param-value>  
    34.         </init-param>  
    35.         <init-param>  
    36.             <param-name>forceEncoding</param-name>  
    37.             <param-value>true</param-value>  
    38.         </init-param>  
    39.     </filter>  
    40.     <filter-mapping>  
    41.         <filter-name>encodingFilter</filter-name>  
    42.         <url-pattern>/*</url-pattern>  
    43.     </filter-mapping>  
    44. </web-app>  


    ================== 
    allStudent.jsp 

    Java代码  收藏代码
      1. <%@ page language="java" pageEncoding="utf-8"%>  
      2. <%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="e"%>  
      3. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
      4. <html>  
      5.     <head>  
      6.         <title>Student列表</title>  
      7.     </head>  
      8.     <table width="50%" border="1">  
      9.         <tr>  
      10.             <td>id</td>  
      11.             <td>姓名</td>  
      12.             <td>性别</td>  
      13.             <td>地址</td>  
      14.             <td>操作</td>  
      15.         </tr>  
      16.         <e:forEach items="${requestScope.stuList}" var="stu">  
      17.             <tr>  
      18.                 <td>${stu.id}</td>  
      19.                 <td>${stu.name}</td>  
      20.                 <td>${stu.sex}</td>  
      21.                 <td>${stu.address}</td>  
      22.                 <td><a href="pre4Update/${stu.id}.do">修改</a>||<a href="delete/${stu.id}/${stu.name}.do">删除</a></td>  
      23.             </tr>  
      24.         </e:forEach>  
      25.     </table>  
      26.     <a href="redir/addStudent.do">添加</a>  
      27.     <body>  
      28.     </body>  
      29. </html> 
  • 相关阅读:
    1058 A+B in Hogwarts (20)
    1036. Boys vs Girls (25)
    1035 Password (20)
    1027 Colors in Mars (20)
    1009. Product of Polynomials (25)
    1006. Sign In and Sign Out
    1005 Spell It Right (20)
    1046 Shortest Distance (20)
    ViewPager页面滑动,滑动到最后一页,再往后滑动则执行一个事件
    IIS7.0上传文件限制的解决方法
  • 原文地址:https://www.cnblogs.com/Struts-pring/p/4951702.html
Copyright © 2011-2022 走看看