首页 > crud springmvc

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 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 findAll()  
  42.     {  
  43.         // TODO Auto-generated method stub  
  44.         List stuList = this.simpleJdbcTemplate.query(FINDALL,new BeanPropertyRowMapper(Student.class));  
  45.         return stuList;  
  46.     }  
  47.       
  48.     public Student findById(int id)  
  49.     {  
  50.         // TODO Auto-generated method stub  
  51.         Map 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 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 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 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. "1.0" encoding="UTF-8"?>  
  2.   
  3. "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.     package="demo.controller">  
  15.       
  16.     class="org.springframework.web.servlet.view.InternalResourceViewResolver">  
  17.         "prefix" value="/WEB-INF/jsp/"/>  
  18.         "suffix" value=".jsp"/>  
  19.       
  20.   
  21.   
  22.       
  23.     "propertyConfigurer"  
  24.         class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">  
  25.         "locations">  
  26.               
  27.                 classpath:jdbc.properties  
  28.               
  29.           
  30.       
  31.   
  32.       
  33.     "dataSource" class="org.apache.commons.dbcp.BasicDataSource"  
  34.         destroy-method="close">  
  35.         "driverClassName" value="${jdbc.driverClassName}" />  
  36.         "url" value="${jdbc.url}" />  
  37.         "username" value="${jdbc.username}" />  
  38.         "password" value="${jdbc.password}" />  
  39.       
  40.   
  41.     "simpleJdbcTemplate"    
  42.         class="org.springframework.jdbc.core.simple.SimpleJdbcTemplate">    
  43.         "dataSource"/>    
  44.       
  45.       
  46.     "jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">  
  47.         "dataSource" ref="dataSource" />  
  48.       
  49.       
  50.   



applicationContext-dao.xml 

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



applicationContext-service.xml 

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



web.xml 

Java代码  收藏代码
  1. "1.0" encoding="UTF-8"?>  
  2. "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.       
  7.         index.jsp  
  8.       
  9.       
  10.         demo2  
  11.         class>  
  12.             org.springframework.web.servlet.DispatcherServlet  
  13.         class>  
  14.           
  15.             contextConfigLocation  
  16.             /WEB-INF/classes/spring/*.xml  
  17.           
  18.   
  19.         1  
  20.       
  21.       
  22.         demo2  
  23.         *.do  
  24.       
  25.       
  26.       
  27.         encodingFilter  
  28.         class>  
  29.             org.springframework.web.filter.CharacterEncodingFilter  
  30.         class>  
  31.           
  32.             encoding  
  33.             utf-8  
  34.           
  35.           
  36.             forceEncoding  
  37.             true  
  38.           
  39.       
  40.       
  41.         encodingFilter  
  42.         /*  
  43.       
  44.   



================== 

allStudent.jsp 

Java代码  收藏代码
    1. <%@ page language="java" pageEncoding="utf-8"%>  
    2. <%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="e"%>  
    3. "-//W3C//DTD HTML 4.01 Transitional//EN">  
    4.   
    5.       
    6.         Student列表  
    7.       
    8.     "50%" border="1">  
    9.           
    10.             id  
    11.             姓名  
    12.             性别  
    13.             地址  
    14.             操作  
    15.           
    16.         "${requestScope.stuList}" var="stu">  
    17.               
    18.                 ${stu.id}  
    19.                 ${stu.name}  
    20.                 ${stu.sex}  
    21.                 ${stu.address}  
    22.                 "pre4Update/${stu.id}.do">修改||"delete/${stu.id}/${stu.name}.do">删除  
    23.               
    24.           
    25.       
    26.     "redir/addStudent.do">添加  
    27.       
    28.       
    29.  

转载于:https://www.cnblogs.com/Struts-pring/p/4951702.html

更多相关:

  • 在.Net Framework中,配置文件一般采用的是XML格式的,.NET Framework提供了专门的ConfigurationManager来读取配置文件的内容,.net core中推荐使用json格式的配置文件,那么在.net core中该如何读取json文件呢?1、在Startup类中读取json配置文件1、使用Confi...

  •   1 public class FrameSubject extends JFrame {   2    3   …………..   4    5   //因为无法使用多重继承,这儿就只能使用对象组合的方式来引入一个   6    7   //java.util.Observerable对象了。   8    9   DateSub...

  • 本案例主要说明如何使用NSwag 工具使用桌面工具快速生成c# 客户端代码、快速的访问Web Api。 NSwagStudio 下载地址 比较强大、可以生成TypeScript、WebApi Controller、CSharp Client  1、运行WebApi项目  URL http://yourserver/swagger 然后...

  •   在绑定完Action的所有参数后,WebAPI并不会马上执行该方法,而要对参数进行验证,以保证输入的合法性.   ModelState 在ApiController中一个ModelState属性用来获取参数验证结果.   public abstract class ApiController : IHttpController,...

  • 1# 引用  C:AVEVAMarineOH12.1.SP4Aveva.ApplicationFramework.dll C:AVEVAMarineOH12.1.SP4Aveva.ApplicationFramework.Presentation.dll 2# 引用命名空间, using Aveva.Applicati...

  •     先吐为敬!   最近心血来潮研究nodejs如何完成微信支付功能,结果网上一搜索,一大堆“代码拷贝党”、“留一手”、“缺斤少两”、“不说人话”、“自己都没跑通还出来发blog”、“各种缺少依赖包”、“各种注释都没有”、“自己都不知道在写什么”的程序大神纷纷为了增加自己博客一个帖子的名额而发布了各种千奇百�...

  • 阅读ceph源码过程中需要明确当前操作是由哪个线程发出,此时需要根据线程id来确认线程名称 C++获取线程id是通过系统调用来直接获取 函数描述 头文件: 函数名称:syscall(SYS_gettid) 该函数直接返回了一个pid_t int类型的数字,即为当前线程id 此外函数pthread_s...

  • 面试题 分库分表之后,id 主键如何处理? 面试官心理分析 其实这是分库分表之后你必然要面对的一个问题,就是 id 咋生成?因为要是分成多个表之后,每个表都是从 1 开始累加,那肯定不对啊,需要一个全局唯一的 id 来支持。所以这都是你实际生产环境中必须考虑的问题。 面试题剖析 基于数据库的实现方案 数据库自增 id 这个就是说你的...

  • ORM操作    单表、一对多表操作 1 from django.db import models 2 3 4 class UserGroup(models.Model): 5 title = models.CharField(max_length=32) 6 7 8 class UserInfo(m...

  • 建立如下表: 建表语句: class表创建语句 create table class(cid int not null auto_increment primary key, caption varchar(32) not null)engine=innodb default charset=utf8;student表创建语句 c...

  • 有一天,我写了一个自信满满的自定义组件myComponent,在多个页面import使用了,结果控制台给我来这个 我特么裤子都脱了,你给我来这个提示是几个意思 仔细一看 The Component 'MyComponentComponent' is declared by more than one NgModule...

  • 创建一个带路由的项目,依次执行下面每行代码 ng n RouingApp --routingcd RouingAppng g c components/firstng g c components/secondng g m components/second --routing    代码拷贝: import {NgModul...

  •       cnpm install vue-quill-editor cnpm install quill-image-drop-module cnpm install quill-image-resize-module 执行上面的命令安装,然后在main.js下面加入 //引入quill-editor编辑器import...

  • 首先要理解Vue项目加载顺序: index.html → main.js → App.vue → nav.json→ routes.js → page1.vue index.html建议加入样式

  • 简单记录平时画图用到的python 便捷小脚本 1. 从单个文件输入 绘制坐标系图 #!/usr/bin/python # coding: utf-8 import matplotlib.pyplot as plt import numpy as np import matplotlib as mpl import sysf...