mybatis学习笔记二mybatis结合spring mvc实现(用户登录,数据查询)
Posted [殊途同归]
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis学习笔记二mybatis结合spring mvc实现(用户登录,数据查询)相关的知识,希望对你有一定的参考价值。
接着上次的来,我做了一个用户登录的例子
UserController:
package com.yihaomen.controller;
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.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import com.yihaomen.inter.IUserOperation;
import com.yihaomen.model.Article;
import com.yihaomen.model.User;
@Controller
@RequestMapping("/article")
public class UserController {
@Autowired
public IUserOperation userMapper;
@RequestMapping("/list")
public ModelAndView listall(User user, HttpServletRequest request,HttpServletResponse response){
/* User user=new User();
user.setUserName("殊途同归");
user.setUserAge("23");
user.setUserAddress("广州天河");
userMapper.addUser(user);*/
Map<String, Object> map = new HashMap<String, Object>();
map.put("name",user.getUserName());
map.put("age",user.getUserAge());
System.out.println(user.getUserName());
List<User> listuser=userMapper.mapUser(map);
/*List<Article> articles=userMapper.getUserArticles(1); */
ModelAndView mav=new ModelAndView("list");
mav.addObject("articles",listuser);
return mav;
}
@RequestMapping({"/login"})
public ModelAndView login(){
ModelAndView mv=new ModelAndView("login");
return mv;
}
@RequestMapping({"/doLogin"})
public ModelAndView login(HttpServletRequest request,HttpServletResponse response){
Map<String, Object> map = new HashMap<String, Object>();
String name=request.getParameter("name");
String password=request.getParameter("password");
map.put("name",name);
map.put("password", password);
User user=userMapper.login(map);
if(user!=null){
return listall(user,request, response);
} else {
request.getSession().setAttribute("msg","失败了!");
return new ModelAndView("login");
}
}
}
接口类IUserOperation
package com.yihaomen.inter;
import java.util.List;
import java.util.Map;
import com.yihaomen.model.Article;
import com.yihaomen.model.User;
public interface IUserOperation {
public User login(Map<String, Object> map);
public List<User> mapUser(Map<String, Object> map);
}
User.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yihaomen.inter.IUserOperation">//利用xml配置Mapper的方式来定义接口</span>
<select id="selectUserByID" parameterType="int" resultType="User">
select * from `user` where id = #{id} //以id为查询条件
</select>
<select id="listUser" resultType="User">
select * from `user` //以id为查询条件
</select>
<select id="mapUser" parameterType="map" resultType="User">
select * from `user` where userName= #{name} and userAge= #{age}
</select>
<select id="login" parameterType="map" resultType="User">
select * from `user` where userName=#{name} and password=#{password}//登录
</select>
</mapper>
标签<select>查询的意思,id对应就是你接口定义的方法名,关于resultType前面讲到Configuration.xml(减少类名的长度来设置的),这个做了一个处理,id直接等于方法名,倘若不这样的处理的话,就得:
<select id="mapUser" parameterType="map" resultType="com.yihaomen.model.User"></span>
Configuration.xml类:
<configuration>
<typeAliases>
<typeAlias alias="User" type="com.yihaomen.model.User"/>
</typeAliases>
</configuration>
User实体类
package com.yihaomen.model;
public class User {
private int id;
private String userName;
private String passWord;
private String userAge;
private String userAddress;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getUserAge() {
return userAge;
}
public void setUserAge(String userAge) {
this.userAge = userAge;
}
public String getPassWord() {
return passWord;
}
public void setPassWord(String passWord) {
this.passWord = passWord;
}
public String getUserAddress() {
return userAddress;
}
public void setUserAddress(String userAddress) {
this.userAddress = userAddress;
}
}
最好看一下demo页面,比较简单
成功页面:
以上是关于mybatis学习笔记二mybatis结合spring mvc实现(用户登录,数据查询)的主要内容,如果未能解决你的问题,请参考以下文章
mybatis学习笔记一mybatis结合spring mvc配置