package com.qf.controller;
import java.util.List;
import javax.servlet.http.HttpSession;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.SessionAttributes;
import com.qf.entity.Page;
import com.qf.entity.User;
import com.qf.service.UserService;
import com.sun.org.apache.xpath.internal.operations.Mod;
@SessionAttributes(“currentUser”)
@Controller
public class UserController {
@Autowired
private UserService userService;
//1.登录
@RequestMapping("/login.action")
public String login(String userName,String password,HttpSession session,User user){
user.setUserName(userName);
user.setPassword(password);
User u =userService.login(user);
if(u!=null){
session.setAttribute("currentUser", u.getUserName());
return "home";
}else{
return "error";
}
}
//2.到添加界面
@RequestMapping("/toAddPage.action")
public String toAddPage(){
return "add";
}
//3.添加客户
@RequestMapping("/add.action")
public String add(User user){
userService.add(user);
return "redirect:/findAll.action";
}
//4.到客户列表界面
@RequestMapping("/findAll.action")
public String findAll(Model model){
List<User> userList = userService.findAll();
model.addAttribute("userList", userList);
return "list";
}
//5.到修改界面
@RequestMapping("toEditPage.action")
public String toEditPage(Model model,User user){
Integer id = user.getId();
User u =userService.findOne(id);
model.addAttribute("user", u);
return "edit";
}
//6.修改用户
@RequestMapping("update.action")
public String update(User user){
userService.update(user);
return "redirect:/findAll.action";
}
//7.删除用户
@RequestMapping("/delete.action")
public String delete(User user){
userService.delete(user);
return "redirect:/findAll.action";
}
//8.分页
@RequestMapping("findPage.action")
public String findPage(Integer currentPage,Model model){
Page<User> page = userService.findPage(currentPage);
model.addAttribute("page", page);
return "pagelist";
}
//9.回到主页
@RequestMapping("toHome.action")
public String toHome(){
return "home";
}
}
package com.qf.service;
import java.util.List;
import com.qf.entity.Page;
import com.qf.entity.User;
public interface UserService {
User login(User user);
void add(User user);
List<User> findAll();
User findOne(Integer id);
void update(User user);
void delete(User user);
Page<User> findPage(Integer currentPage);
}
package com.qf.service.impl;
import java.util.HashMap;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.qf.dao.UserDao;
import com.qf.entity.Page;
import com.qf.entity.User;
import com.qf.service.UserService;
@Service
@Transactional
public class UserServiceImpl implements UserService {
@Autowired
private UserDao userDao;
public User login(User user) {
// TODO Auto-generated method stub
return userDao.login(user);
}
public void add(User user) {
// TODO Auto-generated method stub
userDao.add(user);
}
public List<User> findAll() {
// TODO Auto-generated method stub
return userDao.findAll();
}
public User findOne(Integer id) {
// TODO Auto-generated method stub
return userDao.findOne(id);
}
public void update(User user) {
// TODO Auto-generated method stub
userDao.update(user);
}
public void delete(User user) {
// TODO Auto-generated method stub
userDao.delete(user);
}
public Page<User> findPage(Integer currentPage) {
// TODO Auto-generated method stub
Page<User> page = new Page<User>();
page.setCurrentPage(currentPage);
Integer pageSize=3;
page.setPageSize(pageSize);
Integer totalCount = userDao.findCount();
page.setTotalCount(totalCount);
double tc =totalCount;
Double num = Math.ceil(tc/pageSize);
page.setTotalPage(num.intValue());
HashMap<String,Object> map = new HashMap<String,Object>();
map.put("start", (currentPage-1)*pageSize);
map.put("size", page.getPageSize());
List<User> list = userDao.findPage(map);
page.setList(list);
return page;
}
}
package com.qf.dao;
import java.util.HashMap;
import java.util.List;
import com.qf.entity.User;
public interface UserDao {
User login(User user);
void add(User user);
List<User> findAll();
User findOne(Integer id);
void update(User user);
void delete(User user);
Integer findCount();
List<User> findPage(HashMap<String, Object> map);
}