Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,14 @@
.git
Users
/target
.idea/.name
.idea/artifacts/
.idea/compiler.xml
.idea/copyright/
.idea/libraries/
.idea/markdown-navigator/
.idea/misc.xml
.idea/modules.xml
.idea/vcs.xml
.idea/workspace.xml
SprinMvc.iml
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#Spring RESFUL CRUD小例子

该项目采用的Mybatis+Spring+SpringMVC
19 changes: 17 additions & 2 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>cn.lonecloud</groupId>
<artifactId>SprinMvc</artifactId>
<artifactId>SpringMvc</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>SprinMvc Maven Webapp</name>
Expand Down Expand Up @@ -72,8 +72,23 @@
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.40</version>
</dependency>
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.5-pre10</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.3.5.RELEASE</version>
</dependency>
</dependencies>
<build>
<finalName>SprinMvc</finalName>
<finalName>SpringMvc</finalName>
</build>
</project>
28 changes: 28 additions & 0 deletions src/main/doc/employee.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
/*
Navicat MySQL Data Transfer

Source Server : mysql
Source Server Version : 50633
Source Host : localhost
Source Database : demo

Target Server Version : 50633
File Encoding : utf-8

Date: 04/17/2017 20:01:03 PM
*/

SET NAMES utf8;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for `employee`
-- ----------------------------
DROP TABLE IF EXISTS `employee`;
CREATE TABLE `employee` (
`id` varchar(50) NOT NULL DEFAULT '',
`name` varchar(50) DEFAULT NULL,
`age` int(10) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

21 changes: 21 additions & 0 deletions src/main/java/cn/lonecloud/base/BaseDao.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package cn.lonecloud.base;

import java.util.List;

/**
* Created by lonecloud on 17/4/17.
*/
public interface BaseDao<E> {

public void insert(E e);

public void update(E e);

public void delete(E e);

public void deleteById(String id);

public List<? extends Object> query(Object... args);

public E queryById(String id);
}
22 changes: 0 additions & 22 deletions src/main/java/cn/lonecloud/controller/DesignController.java

This file was deleted.

133 changes: 133 additions & 0 deletions src/main/java/cn/lonecloud/controller/EmployeeController.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,133 @@
package cn.lonecloud.controller;

import cn.lonecloud.dao.EmployeeDao;
import cn.lonecloud.entity.Employee;
import cn.lonecloud.util.IPUtils;
import cn.lonecloud.util.RandomUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.Servlet;
import javax.servlet.ServletRequest;
import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
* Created by lonecloud on 17/4/16.
*
* @author lonecloud
*/
@Controller
@RequestMapping("/emp")
public class EmployeeController {

private Log logger = LogFactory.getLog(EmployeeController.class);

@Resource
private EmployeeDao employeeDao;

/**
* 防止一些未填写的属性被清空
*
* @param id id
* @param model model
*/
@ModelAttribute
public void getModel(@RequestParam(value = "id",required = false) String id, Model model) {
if (null != id) {
model.addAttribute("employee", employeeDao.queryById(id));
}
}

@RequestMapping("/list")
public String list(Model model) {
model.addAttribute("employee", employeeDao.query());
return "list";
}

@RequestMapping("/edit/{id}")
public String edit(@PathVariable("id") String id, Model model) {
if (logger.isDebugEnabled()) {
logger.debug(id);
}
if (id != null) {
Employee employee = employeeDao.queryById(id);
model.addAttribute(employee);
}
return "edit";
}

@RequestMapping("/show/{id}")
public String show(@PathVariable("id") String id) {
return "list";
}

@RequestMapping(value = "/update/", method = RequestMethod.PUT)
public String update(Employee employee) {
employeeDao.update(employee);
return "redirect:/emp/list";
}

/**
* 显示添加员工的界面
*
* @param model model
* @return view
*/
@RequestMapping(value = "/emp", method = RequestMethod.GET)
public String empShow(Model model) {
//不管需不需要如果使用了form标签必须加上
model.addAttribute("employee", new Employee());
return "input";
}

/**
* 修改员工的界面
*
* @param employee 人员参数
* @return view
*/
@RequestMapping(value = "/emp", method = RequestMethod.PUT)
public String empUpdate(Employee employee) {
employeeDao.update(employee);
return "redirect:/emp/list";
}

/**
* 删除员工的界面
*
* @param id id
* @return view
*/
@RequestMapping(value = "/emp/{id}", method = RequestMethod.DELETE)
public String empDelete(@PathVariable("id") String id) {
logger.debug("delete->>>>>>>>>" + id);
employeeDao.deleteById(id);
return "redirect:/emp/list";
}

/**
* 添加一个人员
*
* @param employee 人员
* @return view
*/
@RequestMapping(value = "/emp", method = RequestMethod.POST)
public String empAdd(Employee employee) {
employee.setId(RandomUtils.getUUID());
employeeDao.insert(employee);
return "redirect:/emp/list";
}

@ResponseBody
@RequestMapping("/ip")
public String getIP(HttpServletRequest request) {
return IPUtils.getIPAddr(request);
}
}
26 changes: 0 additions & 26 deletions src/main/java/cn/lonecloud/controller/ErrorController.java

This file was deleted.

23 changes: 0 additions & 23 deletions src/main/java/cn/lonecloud/controller/HelloController.java

This file was deleted.

32 changes: 0 additions & 32 deletions src/main/java/cn/lonecloud/controller/ModelController.java

This file was deleted.

Loading