package com.ssm.web.controller;
import java.io.IOException;
import java.io.PrintWriter;
import java.text.SimpleDateFormat;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import com.github.miemiedev.mybatis.paginator.domain.Order;
import com.github.miemiedev.mybatis.paginator.domain.PageBounds;
import com.github.miemiedev.mybatis.paginator.domain.Paginator;
import com.ssm.web.entity.Person;
import com.ssm.web.service.PersonService;
@Controller
// 为了对url进行分类管理 ,可以在这里定义根路径,最终访问url是根路径+子路径
// 比如:商品列表:/items/queryItems.action
@RequestMapping("/person")
public class HelloWorldController {
@Autowired
private PersonService personService;
// 人员查询
@SuppressWarnings("unchecked")
@RequestMapping(value = "/query", method = { RequestMethod.POST,
RequestMethod.GET })
public ModelAndView queryAll(HttpServletRequest request,
HttpServletResponse response) throws Exception {
String pageNow = request.getParameter("pageNow");
String pageRow = request.getParameter("pageRow");
int page = 1;
int limit = 2;
if (pageNow != null && !"".equals(pageNow)) {
page = Integer.parseInt(pageNow);
}
if (pageRow != null && !"".equals(pageRow)) {
limit = Integer.parseInt(pageRow);
}
String sortString = "id.desc";
Order.formString(sortString);
PageBounds pageBounds = new PageBounds(page, limit);
// 调用service查找 数据库,查询所有人
Map<String, Object> map = personService.queryAll(pageBounds);
List<Person> personList = (List<Person>) map.get("personList");
Paginator paginator = (Paginator) map.get("paginator");
for (Person p : personList) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
p.setBirthdayStr(sdf.format(p.getBirthday()));
}
// 返回ModelAndView
ModelAndView modelAndView = new ModelAndView();
// 相当 于request的setAttribut,在jsp页面中通过personList取数据
modelAndView.addObject("personList", personList);
modelAndView.addObject("paginator", paginator);
// 指定视图
// 下边的路径,如果在视图解析器中配置jsp路径的前缀和jsp路径的后缀,修改为
// modelAndView.setViewName("/jsp/personList.jsp");
// 上边的路径配置可以不在程序中指定jsp路径的前缀和jsp路径的后缀
modelAndView.setViewName("/personList");
return modelAndView;
}
@RequestMapping(value = "/save", method = { RequestMethod.POST,
RequestMethod.GET })
// @RequestParam里边指定request传入参数名称和形参进行绑定。
// 通过required属性指定参数是否必须要传入
// 通过defaultValue可以设置默认值,如果id参数没有传入,将默认值和形参绑定。
public void savePerson(HttpServletRequest request,
HttpServletResponse response, Person person) {
// 插入一个对象(Person)到数据库对应的表中(t_person)
/*
* Person p = new Person(); // p.setId(3); p.setName("张总");
* p.setAge(43);
*/
/*
* String name = request.getParameter("name"); String age =
* request.getParameter("age"); Person person = new Person();
* person.setName(name); person.setAge(Integer.parseInt(age));
* person.setBirthday(new Date());
*/
// 将对象持久化到数据库中
// 需要通过PersonMapper中定义的sql语句完成一个映射过程
try {
personService.insert(person);
String jsonStr = JSON.toJSONString(person);
sendJsonData(response, jsonStr);
} catch (Exception e) {
e.printStackTrace();
} finally {
}
}
// 修改
@RequestMapping(value = "/update", method = { RequestMethod.POST,
RequestMethod.GET })
public ModelAndView update(HttpServletRequest request,
HttpServletResponse response, Integer id, Person person)
throws Exception {
// 调用service 修改
try {
int rows = 0;
rows = personService.update(person);
Map<String, String> map = new HashMap<String, String>();
if (rows > 0) {
map.put("result", "修改成功!");
} else {
map.put("result", "修改失败!");
}
String jsonStr = JSON.toJSONString(map);
sendJsonData(response, jsonStr);
} catch (Exception e) {
e.printStackTrace();
} finally {
}
return null;
}
// 删除
@RequestMapping(value = "/delete", method = { RequestMethod.POST,
RequestMethod.GET })
public ModelAndView delete(HttpServletRequest request,
HttpServletResponse response, Integer id) throws Exception {
// 调用service 删除
try {
int rows = 0;
rows = personService.delete(id);
Map<String, String> map = new HashMap<String, String>();
if (rows > 0) {
map.put("personId", id.toString());
map.put("result", "success");
} else {
map.put("result", "fail");
}
String jsonStr = JSON.toJSONString(map);
sendJsonData(response, jsonStr);
} catch (Exception e) {
e.printStackTrace();
} finally {
}
return null;
}
/**
* 通过JSON向前台发送数据
*
* @param data
* @throws IOException
*/
@SuppressWarnings("unused")
private void sendJsonData(HttpServletResponse response, String data)
throws IOException {
// HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("text/html;charset=UTF-8");
PrintWriter out;
out = response.getWriter();
out.println(data);
out.flush();
out.close();
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
spring + springmvc + mybatis 整合 demo 及 mybatis-paginator分页 demo (115个子文件)
HelloWorldController.class 6KB
PersonServiceImpl.class 2KB
Person.class 1KB
CustomDateConverter.class 1KB
PersonService.class 562B
PersonMapper.class 552B
.classpath 803B
org.eclipse.wst.common.component 498B
org.eclipse.wst.jsdt.ui.superType.container 49B
bootstrap.css 144KB
bootstrap.min.css 120KB
bootstrap-theme.css 26KB
bootstrap-theme.min.css 23KB
datepicker.css 4KB
datepicker.css 4KB
bootstrapValidator.min.css 488B
bootstrapValidator.css 472B
WdatePicker.css 143B
glyphicons-halflings-regular.eot 20KB
img.gif 2KB
img.gif 2KB
datePicker.gif 1KB
spring-core-3.2.4.RELEASE.jar 849KB
spring-context-3.2.4.RELEASE.jar 843KB
log4j-core-2.0-rc1.jar 686KB
mybatis-3.1.1.jar 636KB
spring-webmvc-3.2.4.RELEASE.jar 622KB
spring-web-3.2.4.RELEASE.jar 611KB
spring-beans-3.2.4.RELEASE.jar 594KB
commons-collections-3.2.jar 558KB
log4j-1.2.17.jar 478KB
spring-test-3.2.4.RELEASE.jar 447KB
mysql-connector-java-3.1.13-bin.jar 446KB
spring-jdbc-3.2.4.RELEASE.jar 396KB
standard-1.1.2.jar 384KB
spring-orm-3.2.4.RELEASE.jar 378KB
spring-aop-3.2.4.RELEASE.jar 328KB
fastjson-1.1.15.jar 309KB
spring-tx-3.2.4.RELEASE.jar 237KB
spring-jms-3.2.4.RELEASE.jar 201KB
spring-expression-3.2.4.RELEASE.jar 192KB
spring-webmvc-portlet-3.2.4.RELEASE.jar 184KB
spring-context-support-3.2.4.RELEASE.jar 125KB
log4j-api-2.0-rc1.jar 113KB
commons-dbcp.jar 105KB
servlet-api.jar 86KB
spring-oxm-3.2.4.RELEASE.jar 72KB
spring-build-src-3.2.4.RELEASE.jar 71KB
commons-logging.jar 59KB
spring-aspects-3.2.4.RELEASE.jar 50KB
commons-pool.jar 41KB
mybatis-spring-1.1.1.jar 40KB
mybatis-paginator-1.2.5.jar 40KB
spring-struts-3.2.4.RELEASE.jar 35KB
slf4j-api-1.7.5.jar 25KB
jstl.jar 17KB
spring-instrument-tomcat-3.2.4.RELEASE.jar 10KB
slf4j-log4j12-1.7.5.jar 9KB
spring-instrument-3.2.4.RELEASE.jar 7KB
HelloWorldController.java 6KB
PersonServiceImpl.java 4KB
CustomDateConverter.java 944B
Person.java 826B
PersonService.java 471B
PersonMapper.java 463B
bg.jpg 307B
jquery-1.11.3.js 278KB
bootstrapValidator.js 250KB
jquery-1.11.3.min.js 94KB
bootstrapValidator.min.js 83KB
bootstrap.js 67KB
bootstrap.min.js 36KB
calendar.js 22KB
WdatePicker.js 10KB
zh-cn.js 1KB
zh-tw.js 1KB
en.js 644B
npm.js 484B
.jsdtscope 522B
personList.jsp 4KB
insertPerson.jsp 3KB
index.jsp 2KB
paginator.jsp 1KB
bootstrap.css.map 381KB
bootstrap-theme.css.map 47KB
MANIFEST.MF 39B
org.eclipse.wst.jsdt.ui.superType.name 6B
org.eclipse.jdt.core.prefs 364B
com.genuitec.eclipse.core.prefs 177B
org.eclipse.core.resources.prefs 141B
com.genuitec.eclipse.migration.prefs 76B
.project 1KB
log4j.properties 1KB
log4j.properties 1KB
db.properties 161B
db.properties 161B
mybatis.sql 2KB
glyphicons-halflings-regular.svg 106KB
glyphicons-halflings-regular.ttf 44KB
glyphicons-halflings-regular.woff 23KB
共 115 条
- 1
- 2
河北宋先生
- 粉丝: 5
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页