第一步:pom中引入需要的jar包依赖

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   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>com.xiaohui</groupId>
  <artifactId>HelloWord</artifactId>
  <packaging>war</packaging>
  <version>0.0.1-SNAPSHOT</version>
  <name>HelloWord Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <properties>  
        <!-- spring版本号 -->  
        <spring.version>3.2.4.RELEASE</spring.version>  
        <!-- mybatis版本号 -->  
        <mybatis.version>3.2.4</mybatis.version>  
        <!-- log4j日志文件管理包版本 -->  
        <slf4j.version>1.6.6</slf4j.version>  
        <log4j.version>1.2.9</log4j.version>  
    </properties>
  <dependencies>
    <!-- spring核心包 -->
    <!-- springframe start -->
    <dependency>  
         <groupId>org.springframework</groupId>  
         <artifactId>spring-core</artifactId>  
         <version>${spring.version}</version>  
    </dependency>
    
    <dependency>  
        <groupId>org.springframework</groupId>  
        <artifactId>spring-web</artifactId>  
        <version>${spring.version}</version>  
    </dependency>
    
    <dependency>  
         <groupId>org.springframework</groupId>  
         <artifactId>spring-oxm</artifactId>  
         <version>${spring.version}</version>  
     </dependency>
     
     <dependency>  
          <groupId>org.springframework</groupId>  
          <artifactId>spring-tx</artifactId>  
          <version>${spring.version}</version>  
     </dependency>
      
     <dependency>  
         <groupId>org.springframework</groupId>  
         <artifactId>spring-jdbc</artifactId>  
         <version>${spring.version}</version>  
     </dependency>
     
     <dependency> 
        <groupId>org.springframework</groupId>  
        <artifactId>spring-webmvc</artifactId>  
        <version>${spring.version}</version>  
     </dependency>
    
     <dependency>  
         <groupId>org.springframework</groupId>  
         <artifactId>spring-aop</artifactId>  
         <version>${spring.version}</version>
     </dependency>
     
     <dependency>  
            <groupId>org.springframework</groupId>  
            <artifactId>spring-context-support</artifactId>  
            <version>${spring.version}</version>  
     </dependency>
        
    <!-- springframe end -->
    
    <!-- mybatis核心包 -->  
    <dependency>  
        <groupId>org.mybatis</groupId>  
        <artifactId>mybatis</artifactId>  
        <version>${mybatis.version}</version>  
    </dependency>  
    <!-- mybatis/spring包 -->  
    <dependency>  
        <groupId>org.mybatis</groupId>  
        <artifactId>mybatis-spring</artifactId>  
        <version>1.2.2</version>  
    </dependency>  
    <!-- mysql驱动包 -->  
    <dependency>  
        <groupId>mysql</groupId>  
        <artifactId>mysql-connector-java</artifactId>  
        <version>5.1.29</version>  
    </dependency>  
    <!-- junit测试包 -->  
    <dependency>  
        <groupId>junit</groupId>  
        <artifactId>junit</artifactId>  
        <version>4.11</version>  
        <scope>test</scope>  
    </dependency>  
    <!-- 阿里巴巴数据源包 -->  
    <dependency>  
        <groupId>com.alibaba</groupId>  
        <artifactId>druid</artifactId>  
        <version>1.0.2</version>  
    </dependency>  

    <!-- json数据 -->  
    <dependency>
		<groupId>com.fasterxml.jackson.core</groupId>
	  	<artifactId>jackson-core</artifactId>
	    <version>2.7.3</version>
	</dependency>
	
	<dependency>
	  <groupId>com.fasterxml.jackson.core</groupId>
	  <artifactId>jackson-databind</artifactId>
	  <version>2.7.3</version>
	</dependency>
	
	<dependency>
	  <groupId>com.fasterxml.jackson.core</groupId>
	  <artifactId>jackson-annotations</artifactId>
	  <version>2.7.3</version>
	</dependency>  

    <!-- 日志文件管理包 -->  
    <!-- log start -->  
    <dependency>  
        <groupId>log4j</groupId>  
        <artifactId>log4j</artifactId>  
        <version>${log4j.version}</version>  
    </dependency>  
    <dependency>  
        <groupId>org.slf4j</groupId>  
        <artifactId>slf4j-api</artifactId>  
        <version>${slf4j.version}</version>  
    </dependency>  
    <dependency>  
        <groupId>org.slf4j</groupId>  
        <artifactId>slf4j-log4j12</artifactId>  
        <version>${slf4j.version}</version>  
    </dependency>
    
    <dependency>  
        <groupId>jstl</groupId>  
        <artifactId>jstl</artifactId>  
        <version>1.1.2</version>  
    </dependency> 
    
    <dependency>  
	   <groupId>net.sf.json-lib</groupId>  
	   <artifactId>json-lib</artifactId>  
	   <version>2.4</version>  
	   <classifier>jdk15</classifier>  
	</dependency>
	
	<dependency>
	    <groupId>com.github.pagehelper</groupId>
	    <artifactId>pagehelper</artifactId>
	    <version>5.0.1</version>
	</dependency>

  </dependencies>
  <build>
    <finalName>HelloWord</finalName>
  </build>
</project>

第二步:创建各层packge以及项目结构

Spring Mvc 整合 Mybatis

第三步:相关配置文件:

web.xml:

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
	http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
	version="3.0">
   <context-param>  
        <param-name>contextConfigLocation</param-name>  
        <param-value>classpath:conf/spring.xml;
            classpath:conf/spring-mybatis.xml
        </param-value>  
    </context-param>
    
	<context-param>  
        <param-name>webAppRootKey</param-name>  
        <param-value>HelloWord.root</param-value>  
    </context-param>
    
  <!-- ================spring mvc 适配器================ -->  
  	<!-- 加载父容器 spring 容器 -->
  	<listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    
    <!-- 加载子容器 springmvc 容器 -->
    <servlet>  
        <servlet-name>spring</servlet-name>  
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  
        <init-param>  
            <param-name>contextConfigLocation</param-name>  
            <param-value>classpath:conf/spring-mvc.xml</param-value>  
        </init-param>  
        <load-on-startup>1</load-on-startup>  
    </servlet>
    <servlet-mapping>
        <servlet-name>spring</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
    
    
  <!-- ================================================== -->  
    <welcome-file-list>  
        <welcome-file>index.html</welcome-file>  
    </welcome-file-list>  
</web-app>

jdbc.properties:

jdbc_driverClassName=com.mysql.jdbc.Driver
jdbc_url=jdbc:mysql://localhost:3306/tesddb?useUnicode=true&amp;characterEncoding=utf-8
jdbc_username=root
jdbc_password=password

log4j.properties:

log4j.rootLogger=debug,stdout,logfile
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout

log4j.logger.com.ibatis=DEBUG
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUG
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG
log4j.logger.Java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG

spring.xml:

<?xml version="1.0" encoding="UTF-8"?>  
<beans xmlns="http://www.springframework.org/schema/beans"  
 xmlns:context="http://www.springframework.org/schema/context"  
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
 xsi:schemaLocation="http://www.springframework.org/schema/beans  
      http://www.springframework.org/schema/beans/spring-beans-3.0.xsd  
      http://www.springframework.org/schema/context  
      http://www.springframework.org/schema/context/spring-context.xsd">  
  
    <!-- 引入jdbc配置文件 -->  
    <context:property-placeholder location="classpath:conf/jdbc.properties"/>  
     
    <!-- 扫描文件(自动将servicec层注入) -->  
    <context:component-scan base-package="com.xiaohui.service"/>
</beans>

spring-mvc.xml:

<?xml version="1.0" encoding="UTF-8"?>  
<beans xmlns="http://www.springframework.org/schema/beans"  
  xmlns:p="http://www.springframework.org/schema/p"  
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  xmlns:context="http://www.springframework.org/schema/context"  
  xmlns:mvc="http://www.springframework.org/schema/mvc"  
  xsi:schemaLocation="  
    http://www.springframework.org/schema/beans  
    http://www.springframework.org/schema/beans/spring-beans-3.2.xsd  
    http://www.springframework.org/schema/context  
    http://www.springframework.org/schema/context/spring-context-3.2.xsd  
    http://www.springframework.org/schema/mvc  
    http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd">
    
   <!-- 通过注解方式装配需添加如下标签 -->
   <context:annotation-config/>
   
   <!-- 使用<mvc:annotation-driven>自动加载RequestMappingHandlerMapping和RequestMappingHandlerAdapter,
   		可用在springmvc.xml配置文件中使用<mvc:annotation-driven>替代注解处理器和适配器的配置。 -->
   <mvc:annotation-driven />
   
   
   <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
	    <property name="messageConverters">
	        <list>
	            <!--json视图拦截器,读取到@ResponseBody的时候去配置它-->
	            <ref bean="mappingJacksonHttpMessageConverter"/>
	        </list>
	    </property>
	</bean>
	<!--json转化器,它可以将结果转化-->
	<bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
	    <property name="supportedMediaTypes">
	        <list>
	            <value>application/json;charset=UTF-8</value>
	        </list>
	    </property>
	</bean>
	
   <!-- 扫描controller(controller层注入) 省略了Controller的bean逐个配置  -->  
   <context:component-scan base-package="com.xiaohui.controller"/>
	   
   <!-- 对模型视图添加前后缀 -->  
   <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
   		<property name="prefix" value="/WEB-INF/jsp/"/>  
    	<property name="suffix" value=".jsp"/>  
        <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" /> 
   </bean>
    
    <!-- 拦截器 -->
    <mvc:interceptors>
    	<mvc:interceptor>
    		<!-- /**表示所有url包含子url -->
    		<mvc:mapping path="/**"/>
    		<bean class="com.xiaohui.intercepter.LoginIntercepter"></bean>
    	</mvc:interceptor>
    </mvc:interceptors>
	
	<!-- 对静态资源文件的访问-->  
    <mvc:resources mapping="/common/**" location="/WEB-INF/common/" cache-period="31556926"/>  
    <mvc:resources mapping="/images/**" location="/WEB-INF/images/" cache-period="31556926"/>  
    <mvc:resources mapping="/js/**" location="/WEB-INF/js/" cache-period="31556926"/>  
    <mvc:resources mapping="/css/**" location="/WEB-INF/css/" cache-period="31556926"/>  
</beans>

spring-mybatis.xml:

<?xml version="1.0" encoding="UTF-8"?>  
<beans xmlns="http://www.springframework.org/schema/beans"  
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  xmlns:p="http://www.springframework.org/schema/p"  
  xmlns:context="http://www.springframework.org/schema/context"  
  xmlns:aop="http://www.springframework.org/schema/aop"  
  xmlns:tx="http://www.springframework.org/schema/tx"  
  xmlns:util="http://www.springframework.org/schema/util"  
  xsi:schemaLocation="http://www.springframework.org/schema/beans  
    http://www.springframework.org/schema/beans/spring-beans-3.2.xsd  
    http://www.springframework.org/schema/context  
    http://www.springframework.org/schema/context/spring-context-3.2.xsd  
    http://www.springframework.org/schema/tx  
    http://www.springframework.org/schema/tx/spring-tx-3.2.xsd  
    http://www.springframework.org/schema/aop  
    http://www.springframework.org/schema/aop/spring-aop-3.2.xsd  
    http://www.springframework.org/schema/util   
    http://www.springframework.org/schema/util/spring-util-3.2.xsd">  
  
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init"  
    destroy-method="close" >  
    <property name="driverClassName">  
      <value>${jdbc_driverClassName}</value>  
    </property>  
    <property name="url">  
      <value>${jdbc_url}</value>  
    </property>
    <property name="username">  
      <value>${jdbc_username}</value>  
    </property>  
    <property name="password">  
      <value>${jdbc_password}</value>  
    </property>  
    <!-- 连接池最大使用连接数 -->  
    <property name="maxActive">  
      <value>20</value>  
    </property>  
    <!-- 初始化连接大小 -->  
    <property name="initialSize">  
      <value>1</value>  
    </property>  
    <!-- 获取连接最大等待时间 -->  
    <property name="maxWait">  
      <value>60000</value>  
    </property>  
    <!-- 连接池最大空闲 -->  
    <property name="maxIdle">  
      <value>20</value>  
    </property>  
    <!-- 连接池最小空闲 -->  
    <property name="minIdle">  
      <value>3</value>  
    </property>  
    <!-- 自动清除无用连接 -->  
    <property name="removeAbandoned">  
      <value>true</value>  
    </property>  
    <!-- 清除无用连接的等待时间 -->  
    <property name="removeAbandonedTimeout">  
      <value>180</value>  
    </property>  
    <!-- 连接属性 -->  
    <property name="connectionProperties">  
      <value>clientEncoding=UTF-8</value>  
    </property>  
  </bean>  
      
  <!-- mybatis文件配置,扫描所有mapper文件 -->  
  <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"  
        p:dataSource-ref="dataSource"  
        p:configLocation="classpath:conf/mybatis-config.xml"  
        p:mapperLocations="classpath:mapper/*.xml"/>
        <!-- configLocation为mybatis属性 mapperLocations为所有mapper-->  
        
   <!-- spring与mybatis整合配置,扫描所有dao -->  
   <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"  
        p:basePackage="com.xiaohui.dao"
        p:sqlSessionFactoryBeanName="sqlSessionFactory"/>  
   
   <!-- 对数据源进行事务管理 -->
   <bean id="transactionManager"   
        class="org.springframework.jdbc.datasource.DataSourceTransactionManager"  
        p:dataSource-ref="dataSource"/>
</beans>

mybatis-config.xml:

<?xml version="1.0" encoding="UTF-8" ?>  
<!DOCTYPE configuration   
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"  
"http://mybatis.org/dtd/mybatis-3-config.dtd">  
<configuration>  
	<settings>
        <!-- 打印查询语句 -->
        <setting name="logImpl" value="STDOUT_LOGGING" />
    </settings>
    
    <!-- 命名空间 -->  
    <typeAliases>  
         <typeAlias alias="User" type="com.xiaohui.model.User"/>   
    </typeAliases>  
    
    <plugins>
	    <!-- com.github.pagehelper为PageHelper类所在包名 -->
	    <plugin interceptor="com.github.pagehelper.PageInterceptor">
	        <!-- 使用下面的方式配置参数,后面会有所有的参数介绍 -->
	        <!-- <property name="dialect" value="mysql"/>
	        <property name="offsetAsPageNum" value="false"/>
	        <property name="rowBoundsWithCount" value="false"/>
	        <property name="pageSizeZero" value="true"/>
	        <property name="reasonable" value="false"/>
	        <property name="supportMethodsArguments" value="false"/>
	        <property name="returnPageInfo" value="none"/> -->
		</plugin>
	</plugins>
    
	 <!-- 映射map -->  
    <mappers>  
    </mappers> 
</configuration>

UserMapper.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.xiaohui.dao.UserDao">
  
    <sql id="common_where_if">
        <if test="id != '' and id != null">
            id = #{id}
        </if>
        <if test="state != '' and state != null">
            and state = #{state}
        </if>
        <if test="nickname != '' and nickname!=null " >
            and nickname = #{nickname}
        </if>
	 </sql>
	<resultMap id="baseUserMap" type="User">
        <id column="id" property="id" />
        <result column="state" property="state" />
        <result column="nickname" property="nickname" />
    </resultMap>  
       
     <!-- 新增 -->
     <insert id="insertUser" parameterType="User" keyProperty="id">  
         insert into user(id,state,nickname) values(#{id},#{state},#{nickname})
     </insert>
     
     <!-- 删除 -->
     <delete id="deleteUser" parameterType="string">
     	delete from user where id = #{id}
     </delete>
     
     <!-- 查询 -->
     <select id="selectById" parameterType="string" resultType="User">
	  	select * from user where id = #{id}
	 </select>
	 
	 <!-- 修改 -->
	 <update id="updateUser" parameterType="User" >
	 	update User
		 	<set>
		 		<if test="nickname != null and nickname!='' ">nickname = #{nickname},</if>
		 		<if test="state != null and state!='' ">state = #{state},</if>
		 	</set>
		where id = #{id}
	 </update>
     
     <!-- 列表查询 -->
     <select id="selectList" resultMap="baseUserMap">
     	select * from user 
     	<where>
     		<include refid="common_where_if" />
     	</where>
     </select>
     
     <select id="selectCount" resultType="int">
     	select count(*) from user 
     	<where>
     		<include refid="common_where_if" />
     	</where>
     </select>
</mapper>

UserController.java

package com.xiaohui.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import com.xiaohui.model.User;
import com.xiaohui.service.UserService;
import com.xiaohui.utils.DataUtil;

import net.sf.json.JSONObject;

@Controller  
@RequestMapping("/user")
public class UserController {
	
	@Autowired
	public UserService userService;
	
	/**
	 * 新增
	 * @param user
	 * @return
	 * @throws Exception
	 */
	@RequestMapping(value="/save",method={RequestMethod.POST})
	@ResponseBody
    public JSONObject save(User user) throws Exception{
		JSONObject resultJson = new JSONObject();
		user.setId(System.currentTimeMillis()+"");
		int result = userService.insertUser(user);
		if(result>0){
			resultJson = DataUtil.getSuccessResult();
			resultJson.put("result", result);
		}else {
			resultJson = DataUtil.getErrorResult();
		}
        return resultJson;
    }
	
	/**
	 * 删除
	 * @param id
	 * @return
	 */
	@RequestMapping(value="/delete",method={RequestMethod.POST})
	@ResponseBody
	public JSONObject delete(String id){
		JSONObject resultJson = new JSONObject();
		int result = userService.deleteUser(id);
		if(result>0){
			resultJson = DataUtil.getSuccessResult();
		}else {
			resultJson = DataUtil.getErrorResult();
		}
		return resultJson;
	}
	
	/**
	 * 查询详情
	 * @param id
	 * @return
	 */
	@RequestMapping(value="/selectById/{id}",method={RequestMethod.GET})
	@ResponseBody
	public JSONObject selectById(@PathVariable("id") String id){
		JSONObject resultJson = new JSONObject();
		User user = userService.selectById(id);
		if(user != null){
			resultJson = DataUtil.getSuccessResult();
			resultJson.put("result", user);
		}else {
			resultJson = DataUtil.getErrorResult();
		}
		return resultJson;
	}
	
	/**
	 * 修改
	 * @param user
	 * @return
	 * @throws Exception
	 */
	@RequestMapping(value="/update",method={RequestMethod.POST})
	@ResponseBody
    public JSONObject update(User user) throws Exception{
		JSONObject resultJson = new JSONObject();
		int result = userService.updateUser(user);
		if(result>0){
			resultJson = DataUtil.getSuccessResult();
			resultJson.put("result", result);
		}else {
			resultJson = DataUtil.getErrorResult();
		}
        return resultJson;
    }
	
	/**
	 * 修改
	 * @param user
	 * @return
	 * @throws Exception
	 */
	@RequestMapping(value="/selectList",method={RequestMethod.POST})
	@ResponseBody
	public JSONObject getList(User user,int page,int rows) throws Exception{
		JSONObject resultJson = new JSONObject();
			JSONObject list = userService.selectList(user,page,rows);
			resultJson = DataUtil.getSuccessResult();
			resultJson.put("result", list);
		return list;
	}
	
	
}

com.xiaohui.dao.UserDao;

package com.xiaohui.dao;

import java.util.List;

import com.xiaohui.model.User;

public interface UserDao {

	/**
	 * 新增
	 * @param user
	 * @return
	 */
	public int insertUser(User user);
	
	/**
	 * 删除
	 * @param user
	 * @return
	 */
	public int deleteUser(String id);
	
	/**
	 * 根据主键查询详情
	 * @param id
	 * @return
	 */
	public User selectById(String id);
	
	/**
	 * 修改
	 * @param user
	 * @return
	 */
	public int updateUser(User user);
	
	/**
	 * 查询列表
	 * @param user
	 * @return
	 */
	public List<User> selectList(User user);
	
	/**
	 * 查询总数
	 * @param user
	 * @return
	 */
	public int selectCount(User user);
	
}

前台页面js参考(使用的JqEasyUI):

$('#tblist').datagrid({
    url:'/HelloWord/user/selectList',
    method: 'POST',
    queryParams: { 'state': 3 },
    pagination: true,
    pageSize: 10,
    pageList: [10, 20, 50, 100],
    showFooter: true,
    fitColumns:true,//宽度自适应
    singleSelect:'true',
    fit: true,
    striped:true,
    idField:'id',
    columns:[[
        {field:'ck',title:'ck',checkbox:true},
        {field:'id',title:'编号',width:'20%'},
        {field:'nickname',title:'昵称',width:'56%',collapsible:true},
        {field:'state',title:'状态',width:'20%',align:'right'}
    ]],
    onBeforeLoad: function (param) {
    	console.log(param);
    },
    toolbar: [{
    	text:'新增',
		iconCls: 'icon-add',
		handler: function(){
			addUser();
		}
	},'-',{
		text:'删除',
		iconCls: 'icon-remove',
		handler: function(){
			var record = $('#tblist').datagrid("getSelected");
			if(record == null){
				$.messager.alert('结果','请先选择一个用户!','warning');
				return;
			}
			var userId = record.id;
			deleteUser(userId)
		}
	},'-',{
		text:'修改',
		iconCls: 'icon-save',
		handler: function(){
			updateUser();
		}
	}]
});

function addUser(){
	$('#addDialog').dialog({
	    title: '新增用户',
	    width: 400,
	    height: 200,
	    closed: false,
	    cache: false,
	    modal: true,
	    buttons:[{
			text:'保存',
			handler:function(){
				var nickname = $("#nickname").val();
				var state = $("#state").val();
				save(nickname,state);
			}
		},{
			text:'取消',
			handler:function(){
				$('#addDialog').dialog("close",true);  
			}
		}]
	});
}


function save(nickname,state) {
	$.ajax({
          url: "/HelloWord/user/save",
          type: "POST",
          dataType: "json",
          data: {"nickname": nickname,"state": state},
          async: false,
          success: function(data) {
        	$.messager.alert('结果','操作成功');
            $('#addDialog').dialog("close",true);
            $('#tblist').datagrid("reload");
          },
          error: function() {
        	  $.messager.alert('结果','请求失败!','error');
          }
	});
}

function deleteUser(userId){
	$.ajax({
        url: "/HelloWord/user/delete",
        type: "POST",
        dataType: "json",
        data: {"id": userId},
        async: false,
        success: function(data) {
        	$.messager.alert('结果','操作成功');
        	$('#tblist').datagrid("reload");
        },
        error: function() {
        	$.messager.alert('结果','请求失败!','error');
        }
	});
}

function update(user) {
  	$.ajax({
          url: "/HelloWord/user/update",
          type: "POST",
          dataType: "json",
          data: user,
          async: false,
          success: function(data) {
        	  $('#addDialog').dialog("close",true); 
        	  $.messager.alert('结果','操作成功');
        	  $('#tblist').datagrid("reload");
          },
          error: function() {
        	  $.messager.alert('结果','请求失败!','error');
          }
  	});
}

function updateUser(){
	var record = $('#tblist').datagrid("getSelected");
	if(record == null){
		$.messager.alert('结果','请先选择一个用户!','warning');
		return;
	}
	console.log(record);
	$('#addDialog').dialog({
	    title: '用户修改',
	    width: 400,
	    height: 200,
	    closed: false,
	    cache: false,
	    modal: true,
	    onOpen:function(){
	    	$.ajax({
	            url: "/HelloWord/user/selectById/"+record.id,
	            type: "GET",
	            dataType: "json",
	            async: false,
	            success: function(data) {
	            	console.log(data);
	            	$('#nickname').textbox('setValue',data.nickname);
	    	    	$('#state').textbox('setValue',data.state);
	            },
	            error: function() {
	          	  $.messager.alert('结果','请求失败!','error');
	            }
	    	});
	    },
	    buttons:[{
			text:'保存',
			handler:function(){
				var nickname = $('#nickname').textbox('getValue');
				var state = $('#state').textbox('getValue');
				var user = {"nickname": nickname,"state": state,id:record.id}; 
				update(user);
			}
		},{
			text:'取消',
			handler:function(){
				$('#addDialog').dialog("close",true);
			}
		}]
	});
	
}

$('#search').linkbutton({
    iconCls: 'icon-search',
    onClick:function(){
    	var nickname = $('#snickname').textbox('getValue');
    	var state = $('#sstate').textbox('getValue');
    	var id = $('#sid').textbox('getValue');
    	var param = {};
    	if(nickname!=""){
    		param.nickname = nickname;
    	}
    	if(state!=""){
    		param.state = state;
    	}
    	if(id!=""){
    		param.id = id;
    	}
    	$('#tblist').datagrid("reload",param);
    	
    }
});

三、运行效果 页面展示如下:

Spring Mvc 整合 Mybatis

相关文章: